数据流并发控制

本页面简要介绍了数据流并发控制,例如 并发变更数据捕获 (CDC) 任务和回填任务的数量。您可以 通过增大或减小这些参数的值来控制流性能。

并发控制概览

通过使用并发控制,您可以实现更快的回填和 CDC, 或平衡源数据库上的负载。如果您需要更高的吞吐量 并且能够承受数据库负载的高低,那么您便可以提高并发处理能力, 和回填任务反过来,如果数据库负载过高或过低 并且您希望防止它过载,则可减少 这些参数的值

CDC 任务数量上限

借助 maxConcurrentCdcTasks 参数,您可以控制 CDC 数量 并行运行的任务。如需扩展 CDC 吞吐量, 此参数的值,以允许 Datastream 处理更多 CDC 日志文件 。

该参数的主要特征包括:

  • 默认值为 5。您可以将此参数设置为介于 150(含边界值)。
  • 该参数仅适用于 Oracle 和 MySQL 源。
  • 只有当存在更多可用的数据库日志文件时,该参数才会产生影响 比有 CDC 任务要少。日志文件设置由 源数据库配置参数:最大日志文件大小和 最大日志轮替时间间隔。如需详细了解 参数,请参阅 Oracle 和 MySQL 文档。
  • 如果您减少并发 CDC 任务的数量,Datastream 可能会 滞后于数据库日志,最终可能导致日志位置丢失 以及音频流故障

回填任务数量上限

借助 maxConcurrentBackfillTasks 参数,您可以控制回填的次数 流可并行运行的任务。您可以增大或减小此值 来控制回填吞吐量

该参数的主要特征包括:

  • 默认值为 15。您可以将此参数设置为介于 150(含边界值)。
  • 增加回填并发数的风险很高, 因为回填任务会对数据库性能产生重大影响。 每项回填任务都会在表上运行未经过滤的 SELECT 查询, 大型表,此类查询会返回大量行。
  • 如果您减少回填并发请求数,则不会对 源数据库(回填需要较长时间才能完成的情况除外)。

更改并发控制的值

您可以使用 Datastream API。

后续步骤