zoukankan      html  css  js  c++  java
  • MySQL 分区知识点(三)

    前言:

      MySQL 分区后每个分区成了独立的文件,虽然从逻辑上还是一张表其实已经分成了多张独立的表,

      从 information_schema.INNODB_SYS_TABLES 系统表可以看到每个分区都存在独立的 TABLE_ID;

      

      由于 Innodb 数据和索引都是保存在 ".ibd" 文件当中(从INNODB_SYS_INDEXES 系统表中也可以得到每个索引都是对应各自的分区( primary key 和 unique 也不例外)),

      所以分区表的索引也是随着各个分区单独存储。

    一、分区索引

      索引方式:
      // 性能依次降低
      1.主键分区

        主键分区即字段是主键同时也是分区字段,性能最好

      2. 部分主键+分区索引

        使用组合主键里面的部分字段作为分区字段,同时将分区字段建索引

      3.分区索引

        没有主键,只有分区字段且分区字段建索引

      4.分区+分区字段没有索引

        只建了分区,但是分区字段没有建索引

    引用总结:

      因为每一个表都需要有主键这样可以减少很多锁的问题,主键需要解决全局唯一性并且在插入和更新时可以不需要去扫描全部分区,造成主键和分区列必须存在关系;

      所以最好的分区效果是使用主键作为分区字段其次是使用部分主键作为分区字段且创建分区字段的索引,其它分区方式都建议不采取。

  • 相关阅读:
    系统数据查询耗时优化解决方案
    Mybatis逆向工程
    微服务架构下的分布式数据管理
    分布式或微服务架构中的分布式锁应用
    word 常用宏代码
    office2003?2007共存?版本各自打开的解决方案
    word域3
    2014新版《安全生产法》测试题
    Excel与Word套打功能使用技巧及EXCEL数据处理成绩
    word域2
  • 原文地址:https://www.cnblogs.com/loongsoft/p/7307517.html
Copyright © 2011-2022 走看看