适用于:✅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 | 
警告
更改盘区合并策略前,请咨询支持团队。
创建数据库时,将使用上面提到的默认合并策略值设置该数据库。 默认情况下,在数据库中创建的所有表都将继承该策略,除非其策略在表级别被显式替代。
有关详细信息,请参阅可用于管理数据库或表合并策略的管理命令。