zk ( zookeeper )的分布式仅仅指的是备份模式.
分布式 mysql 不仅仅要关注备份(从以往的半主,主主,到 paxos). (mysql 比 hbase 的region成熟, hdfs, mongodb 也还好.)
更要关注表的层面: 如何 split 分表, partition , 更要知道如何迁移. (这个 hbase 和 mongodb 比较成熟)
两个方面.
终极线上数据库:
先分热冷,再分区.
目前热数据:mysql
冷数据:phoenix(hbase),天然 大数据+二级索引.
前台组件统一提供 mysql (my batis 插件): 先查热数据,再查冷数据.先写热数据,再写冷数据.
类似 redis,mysql,hbase 三级系统.
mysql 自带分区功能,缺点: 1. 计算都在 mysql 库实例里 2. 无法分库. 优点: 自带在线修改分表规则,自带迁移功能,是否像 hbase 抛错?
Mycat(4):消息表mysql数据库分表实践 这里面使用到了数据库中间件mycat,和mysql数据表分区。
基于冷热数据的MongoDB自动分片机制
深入解析MySQL分区(Partition)功能
博客照片流之冷热数据分离 渲染页面的时候,把冷热数据合并,就是完整的数据。