2015-02-24 47 views
2

MySQL(Innodb)使用倒排索引或正向索引?MySQL索引:倒排或正向

从文章What's the difference between an inverted index and a plain old index?

,我的理解是,每当我从密钥记录(如和字符串,INT),它是倒索引。以这种方式采取“倒排索引”意味着mySQL使用倒排索引。
但是为什么mySQL使用术语“索引”代替“倒排索引”?

+0

B树索引将是一个“普通旧索引”。全文索引将是一个倒排索引。 – 2015-02-24 13:24:24

+0

@GordonLinoff,thx回复。我知道,对于全文搜索(比如solr),使用倒排索引。但我没有得到任何mysql文件说“转发”索引。它只是说可以倒置或前进的“索引”。 B-Tree只是用于正向和反向索引的算法,用于回答的 – user811602 2015-02-24 13:37:04

回答

2

我假设InnoDB。

MySQL使用倒数索引为其FULL TEXT索引。

然而,标准群集次级index既不倒置或向前索引。我不知道他们的架构是否有标准术语。也许这是普通旧索引密集索引。对于每个表记录,都有一个索引条目。

正如前面在评论中提到的那样,MySQL默认使用B-Tree格式。

MySQL尚未支持(v5.6)降序索引。例如。当使用DESC关键字进行排序时,MySQL可能会简单地向后遍历索引。

+0

Thx。我没有任何链接指出MySQL使用的“反向”索引。虽然我相信你自己的论点,如果你能为我提供任何参考资料(如链接),这将是很大的帮助。我想阅读更多内容。它也将帮助其他人想要阅读更多关于相同的内容。 – user811602 2015-02-24 14:39:51

+0

我添加了一些链接。 – 2015-02-24 14:48:04

+0

thx很多马库斯。我正在阅读这些链接 – user811602 2015-02-24 14:49:14