关于表分区
Apache Cloudberry 允许您通过表分区将大型表逻辑地划分为更小、更易于管理的部分。这可以显著提高查询性能,因为查询优化器可以只扫描必要的数据,而不是整个表。分区是一种逻辑划分;它不会改变表数据在段上的物理分布。
有关如何创建和管理分区表,请参阅创建和管理分区表。
为什么使用表分区
分区可以提供多项优势,特别是对于超大型表(例如,超出数据库服务器物理内存的表):
- 提高查询性能:当大部分频繁访问的行位于单个分区或少量分区中时,查询运行速度会快得多。分区就像索引的更高层级,使得索引的关键部分更可能驻留在内存中。
- 高效扫描:当查询或更新访问单个分区的很大一部分时,对该分区的顺序扫描可能比使用索引更高效,因为使用索引会涉及对整个表的随机访问读取。
- 更快的数据管理:通过添加或删除分区,可以快速执行批量加载和删除操作。
DROP TABLE
分区或ALTER TABLE DETACH PARTITION
等操作比批量DELETE
操作快得多,并且避免了VACUUM
的开销。 - 数据分层:通过管理分区,可以将很少使用的数据迁移到更便宜、更慢的存储介质。