MyCAT水平分库

MyCAT水平分库

1.什么是水平分库

将一张大表中数据,水平分到多个库中。

2.水平分片的原则

  • 需要分片的表是少数的
  • 能不切分就尽量不要切分(单表数据在800万以下尽量不要切分,可以通过sql优化,和读写分离解决性能瓶颈)
  • 日志表可以采用归档方式保存
  • 选择合适的切分规则和分片,确保数据切片均匀分布
  • 尽量避免跨分片join操作,保证关联表在同一分片,或者设置全局表

3.水平分片的步骤

  • 根据业务状态确定要进行水平切分的表
  • 分析业务模型选择合适的分片健及分片算法
  • 合适的mycat部署分片集群

    1. 使用schema.xml配置逻辑库和逻辑表,及数据节点,和数据主机
    2. 使用rule.xml配置分片表分片规则
    3. 命令行方式验证分片算法正确性
    4. 测试分片集群,采用应用端操作方式(代码验证)
上一篇:领域驱动设计(DDD)实践之路(三):如何设计聚合


下一篇:MySQL · 新特性分析 · CTE执行过程与实现原理