【IT168 评论】近期,DTCC 2010数据库技术大会在北京歌华开元大酒店盛大召开。来自于全国各地包括宝岛台湾的700多位数据库及相关技术从业者参加了本次大会。2天的大会,29场演讲,内容涵盖了Oracle,MySQL,DB2,SQL Server ,Sybase,达梦(国产数据库) 等多种数据库。
阿里巴巴MySQL数据库主管简朝阳
4月3日上午的开源数据库实践应用案例专场,来自阿里巴巴的MySQL数据库主管简朝阳给我们介绍了很多MySQL的应用架构,灵活的MySQL,就是为web2.0而存在。
简朝阳演讲主题“高可用可扩展数据库架构”主要从数据库的高可用和可扩展两个方面来进行了分享探讨。
高可用
软/硬件高可用(热/冷备)
数据高可用(共享,同/异步复制)
单独的硬件高可用除了冗余之外本身没有太多可以讲的,所以简朝阳一笔带过。基于共享设备的数据高可用只是大概的介绍了可能的方案,由于各方案的实施都比较昂贵,更适合于Oracle,DB2等。
高可用架构图(部分)
高可用部分简朝阳重点介绍了利用MySQL 的Replication技术和应用程序的共同配合来实现Share Nothing 方式的高可用。
可扩展
向上扩展(Scale Up)
硬件扩容(增加CPU数量,增加内存容量,增加磁盘数量…)
硬件升级(更换更高端的主机,更换更高端的粗出设备,更换更高端CPU,更换转速更快的磁盘…)
向外扩展(Scale Out)
数据拷贝分发(一处写入多处读取,读写分离…)
数据垂直/水平切分(功能模块切分(vertical sharding),水平分片切分(horizontal sharding),两者综合)
Cache 和 Search(应用程序更新Cache,数据库更新 Cache,利用Search全文搜索…)
扩展性简朝阳重点介绍的是Sharding过程中如何选择合适的Sharding方法,如何解决Sharding之后的数据合并问题,以及如何利用数据库外部资源(Cache,Search)来解决数据层的扩展性问题。
高扩展架构图(部分)
简朝阳表示:“其实架构这个东西本身就是仁者见仁智者见智,没有功能较多的架构,也没有长久适用的架构。架构和业务场景息息相关密不可分,离开了实际业务场景谈架构,可以说就是纸上谈兵,那如果离开了架构仅仅追求快速的业务实现呢?出来混,迟早要还的。”