【问题标题】:Different types of database indexes?不同类型的数据库索引?
【发布时间】:2012-01-09 07:17:55
【问题描述】:

我正在尝试编译一个非系统特定的数据库索引列表。我查看了 Oracle、DB2、MySQL、Postgres 和 Sybase,几乎每个资源都有不同的列表。到目前为止,我已经看到:

clustered, multi-dimensional clustered, unclustered, unique,
non-unique, b-tree, hash, GiST, GIN, full-text, bitmap,
partitioned, function-based.

似乎不同的系统对相同类型的索引有不同的名称。

是否有跨所有系统的标准索引类型?

【问题讨论】:

    标签: database database-indexes


    【解决方案1】:

    如果由于某种原因其他人遇到了这个问题并且想知道同样的事情,我最终在以下位置找到了一个很好的列表:

    http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems#Indexes

    【讨论】:

      【解决方案2】:

      其中许多概念是正交的。聚集索引意味着行在表中的排列顺序与它们在索引中出现的顺序相同。独立地,该索引可以使用 B-tree、B+ 树、散列、空间等来实现。然后它可以对表进行分区或不分区。一个方面可能会限制但不一定意味着另一个方面。

      【讨论】:

      • 在我最近的项目中,我使用了以下几个索引变体:集群(MySQL 中的主键索引根据定义是集群的)、非集群的(外键)、唯一的、非唯一的、B-Tree和空间。
      【解决方案3】:
      【解决方案4】:

      你应该更加努力 :-) - Wiki 给出了很好的描述

      http://en.wikipedia.org/wiki/Database_index

      【讨论】:

      • 我看到了wiki文章,但是他们有两个不同的'类型'列表:非集群,集群,集群(oracle)和位图,密集,稀疏,反向这是否意味着有集群位图,非聚集位图,等等其他类型?
      猜你喜欢
      • 2014-10-25
      • 2010-11-03
      • 1970-01-01
      • 1970-01-01
      • 2011-06-20
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 2016-04-20
      相关资源
      最近更新 更多