PostgreSQL的CLUSTER与SQL Server中的聚簇索引有何不同?



许多诸如此stackoverflow链接的文章声称没有概念在PostgreSQL中群集索引。但是,PostgreSQL文档包含类似的内容。一些人声称它类似于SQL Server中的群集索引。

您知道这两个之间的确切区别是什么?

a 群集索引索引有组织的表是一个数据结构,所有表数据均以索引顺序组织,通常是通过组织B树结构中的表格。

一旦组织了这样的表,该顺序将通过所有将来的数据修改自动维护。

PostgreSQL没有此类聚类索引。CLUSTER命令的作用是按索引的顺序重写表,但是该表仍然是数据的根本无序 heap ,因此未来的数据修改将无法维持该索引顺序。

如果要在表格上数据修改时要保持近似索引顺序,则必须定期使用CLUSTER

在PostgreSQL中的聚类可以提高性能,因为在索引扫描中找到的元素将在堆表中靠近,这可以将随机访问到堆中以更快的顺序访问。

相关内容

  • 没有找到相关文章

最新更新