【问题标题】:MySQL: where clustered (logical indexes) saveMySQL:聚集(逻辑索引)保存的位置
【发布时间】:2016-08-28 22:38:55
【问题描述】:

非聚集文件存储在数据文件中,聚集索引按逻辑索引顺序存储数据。

逻辑顺序在哪里?

【问题讨论】:

    标签: mysql clustered-index non-clustered-index


    【解决方案1】:

    大多数 MySQL 索引的结构都是 BTree。 (参见维基百科)

    (我将FULLTEXTSPATIAL 索引排除在此讨论之外。)

    InnoDB 的 PRIMARY KEY 是一个 BTree 并且与数据“聚集”在一起。即数据在BTree中以PK顺序存储。

    InnoDB “辅助键”和所有 MyISAM 索引都存储在单独的 BTree 结构中。

    在 MyISAM 索引的叶节点中,是存储整行的数据文件的偏移量。在 InnoDB 二级索引的叶节点中是 PRIMARY KEY 列的副本。

    所有索引都以数字(如果是某些数字列)或排序规则(如果是某些字符串类型)顺序“升序”存储。

    (我不知道你所说的“逻辑”是什么意思,但也许我已经回答了。)

    【讨论】:

      猜你喜欢
      • 2017-08-17
      • 2016-03-16
      • 2018-05-22
      • 2019-05-20
      • 2011-08-19
      • 1970-01-01
      • 2017-05-08
      • 2013-08-07
      相关资源
      最近更新 更多