流式引入策略

流式引入目标方案

流式引入应该用于以下方案:

  • 需要延迟少于几秒。
  • 需要优化多个表的操作处理,其中进入每个表的数据流相对较小(每秒几条记录),但总体数据引入量较大(每秒成千上万条记录)。

如果引入每个表的数据流很大(每小时超过 4 GB),请考虑使用排队引入

流式引入策略定义

流式引入策略包含以下属性:

  • IsEnabled
    • 定义表/数据库的流式引入功能的状态
    • 必需,无默认值,必须显式设置为“true”或“false”
  • HintAllocatedRate
    • 如果设置,则为表预期的每小时数据量(以 GB 为单位)提供提示。 此提示有助于系统调整分配给表的资源量,以支持流式引入。
    • 默认值“NULL”(取消设置)

若要对表启用流式引入,请定义流式引入策略,将“IsEnabled”设置为“true”。 可以在表本身或数据库上设置此定义。 在数据库级别定义此策略将对数据库中的所有现有表和未来表应用相同的设置。 如果同时在表级别和数据库级别设置流式引入策略,则表级别设置优先。 此设置意味着通常可以为数据库启用流式引入,但可以专门对某些表禁用流式引入,反之亦然。

注意

如果表不直接获得流式引入,而只是通过更新策略获得,则不必在此表上定义流式引入策略。

设置数据速率提示

流式引入策略可以提供有关表预期的每小时数据量的提示。 此提示有助于系统调整分配给该表的资源量,以支持流式引入。 如果将数据流式引入表的速度超过 1 Gb/小时,则设置此提示。 如果在数据库的流式引入策略中设置“HintAllocatedRate”,则按预期数据速率最高的表设置此项。 建议不要将表的有效提示设置为远高于预期的每小时数据速率峰值的值。 此设置可能会对查询性能产生不利影响。