合并策略
适用于:✅Azure 数据资源管理器
合并策略定义是否以及如何合并盘区(数据分片)。
合并操作有两种类型:Merge
,此操作会重新生成索引;以及 Rebuild
,此操作会完全重新引入数据。
这两种操作类型都会生成单个盘区来替换源盘区。
默认情况下,首选 Rebuild
操作。 如果某些盘区不符合进行重新生成的条件,则将尝试合并它们。
注意
合并策略属性
合并策略包含以下属性:
- RowCountUpperBoundForMerge:
- 默认为 16,000,000。
- 合并盘区允许的最大行数。
- 适用于合并操作,不适用于重新生成。
- OriginalSizeMBUpperBoundForMerge:
- 默认为 30,000。
- 合并盘区允许的最大原始大小 (MB)。
- 适用于合并操作,不适用于重新生成。
- MaxExtentsToMerge:
- 默认为 100。
- 允许在单个操作中合并的最大盘区数量。
- 适用于合并操作。
- 此值不应更改。
- AllowRebuild:
- 默认为“true”。
- 定义是否已启用
Rebuild
操作(在这种情况下,其优先级高于Merge
操作)。
- AllowMerge:
- 默认为“true”。
- 定义是否已启用
Merge
操作,在这种情况下,其优先级低于Rebuild
操作。
- MaxRangeInHours:
- Lookback:
- 定义考虑重新生成/合并盘区的时间跨度。
- 支持的值:
Default
- 系统管理的默认值。 这是建议的默认值,其期间当前设置为 14 天。All
- 包括所有盘区(热和冷)。HotCache
- 仅包含热盘区。Custom
- 只包括使用年限低于所提供的CustomPeriod
的盘区。CustomPeriod
是格式为dd.hh:mm
的 timespan 值。
默认策略示例
以下示例演示了默认策略:
{
"RowCountUpperBoundForMerge": 16000000,
"OriginalSizeMBUpperBoundForMerge": 30000,
"MaxExtentsToMerge": 100,,
"MaxRangeInHours": 24,
"AllowRebuild": true,
"AllowMerge": true,
"Lookback": {
"Kind": "Default",
"CustomPeriod": null
}
}
MaxRangeInHours 示例
最小 [SoftDeletePeriod(保留策略),DataHotSpan(缓存策略)] | 最大范围(合并策略)(以小时为单位) |
---|---|
7 天(168 小时) | 4 |
14 天(336 小时) | 8 |
30 天(720 小时) | 18 |
60 天(1,440 小时) | 36 |
90 天(2,160 小时) | 60 |
180 天(4,320 小时) | 120 |
365 天(8,760 小时) | 250 |
警告
更改盘区合并策略前,请咨询支持团队。
创建数据库时,将使用上面提到的默认合并策略值设置该数据库。 默认情况下,在数据库中创建的所有表都将继承该策略,除非其策略在表级别被显式替代。
有关详细信息,请参阅可用于管理数据库或表合并策略的管理命令。