数据库的分库分表

分库分表的几种方式:

        把一个实例中的多个数据库拆分到不同的实例。

        把一个库中的表分离到不同数据库中。

        对一个库中的相关表进行水平拆分到不同的实例的数据库中。

准备工作:

        如何选择分区键:

                    1、分区键要尽可能避免跨分片查询的发生

                    2、分区键要尽可能使各个分片中的数据平均

        如何存储无需分片的表:

                    1、每个分片中存储一份相同的数据

                    2、使用额外的节点统一存储

        如何在节点部署分片:

                        每一个分片使用单一数据库,并且数据库名相同

                        将多个分片表存储在一个数据库中,并在表名上加入分片号后缀

                        在一个节点中部署多个数据库,每一个数据库包含一个分片

        如何分配分片中的数据

                        按分区键的Hash值取模来分配分片中的数据

                        按分区键的范围来分配分片数据

                        利用分片键和分片的映射表来分配分片数据

        如何生成全局唯一ID(三种方法):

                    1、使用auto_increment_increment和auto_increment_offset参数

                    2、使用全局节点来生成ID

                    3、在Redis等缓存服务器中创建全局ID

          辅助工具:

                    oneProxyp                

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 6,139评论 0 9
  • Zookeeper用于集群主备切换。 YARN让集群具备更好的扩展性。 Spark没有存储能力。 Spark的Ma...
    Yobhel阅读 7,649评论 0 34
  • 4.1 索引组织表 在lnnoDB存储引擎中, 表都是根据主键顺序组织存放的, 这种存储方式的表称为索引组织表(...
    好好学习Sun阅读 747评论 0 0
  • 越长大越喜欢安安静静,稳稳重重,在我看来安静下来是一种力量,一种由内向外迸发的力量! 这一段时间在办公室白...
    皮皮艳阅读 417评论 2 2
  • 昨天我啥也没干……
    ug_阅读 116评论 0 0

友情链接更多精彩内容