你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
盘区(数据分片)
适用于:✅Microsoft Fabric✅Azure 数据资源管理器
表分区为盘区或数据分片。 每个盘区都是表的一个水平段,其中包含数据和元数据(例如其创建时间和可选标记)。 所有这些盘区的并集包含表的整个数据集。 盘区均匀分布在群集中的节点之间,它们缓存在本地 SSD 和内存中以优化性能。
盘区是不可变的,这意味着可以查询它们,可将它们重新分配到其他节点,或者可从表中删除它们但永不修改它们。 创建新盘区,并将旧盘区与新盘区进行事务交换时,会发生数据修改。 盘区的不可变性提供了一些好处,例如提高稳定性以及可轻松恢复到以前的快照。
盘区保存物理上按列排列的记录集合,支持对数据进行有效的编码和压缩。 为了保持查询效率,会根据配置的合并策略和分片策略将较小的盘区合并成更大的盘区。 合并盘区可降低管理开销,并优化索引和改进压缩。
常见的盘区生命周期如下所示:
- 盘区由“引入”操作创建。
- 盘区与其他盘区合并。
- 由于保留策略的原因,合并的盘区(该盘区的世系可能追溯到其他盘区)最终会被删除。
盘区创建时间
每个盘区跟踪两个日期/时间值:MinCreatedOn
和 MaxCreatedOn
。 这些值最初相同,但在盘区与其他盘区合并时可能会更改。 如果该盘区与其他盘区合并,则新值将与合并盘区的原始最小值和最大值保持一致。
盘区创建时间用于以下目的:
要覆盖盘区的创建时间,请在数据引入属性中提供备用的 creationTime
。 这对于保留目的非常有用,例如,如果你想要重新引入数据,但不希望数据显示为好像延迟抵达。
注意
基于时间移除盘区的计算使用已合并的盘区内最新盘区的创建时间。