snowflake-cloud-data-platform - 了解雪花 kafka 连接器配置调优参数
问题描述
我正在使用适用于 Kafka Connect 平台的 Snowflake 连接器将大约 2000 个表从 Kafka 流式传输到 Snowflake。我想了解如何调整连接器的参数以获得最佳吞吐量。尽管我的主要兴趣是了解连接器参数,但也欢迎对 Kafka 和 Kafka Connect 设置提出建议。
我的主题大小范围从 < 1GB 到 100 GB。我们目前每个主题只有一个分区,并且这些主题使用 RoundRobin 分区器分布在 30 个连接器任务中。我们所有主题的最大消息大小配置为 3MB,并且我们使用 AVRO 和 lz4 压缩。
我们最大的主题之一有大约 70 亿个事件,并且仅以大约 2000 个事件/秒的速度转移到雪花。我想增加分区的数量是我的主要手段,但我也怀疑 2000 个事件/秒低于配置参数的变化可能。
我怀疑应该调整的参数是:
buffer.count.records
- 默认 10000 个事件buffer.flush.time
- 默认 120 秒buffer.size.bytes
- 默认 5MB
目前我们正在使用默认值。
关于如何使用这些参数或其他参数来增加我们的吞吐量的任何建议?
解决方案
我无法从使用 Kafka 连接器的经验中发言,但 Snowflake 更喜欢大小范围为 10 - 100 MB 的文件,所以我希望默认值越大越好,并且还可以尝试更大的仓库。
推荐阅读
- python - 让一个函数调用另一个创建元组的函数
- classification - MNIST 数据集提升
- rust - 有没有办法在 rust 中将类型标记为不可丢弃?
- javascript - 如何使 IntersectionObserver 与变换平移动画一起使用?
- html - :not() 伪选择器对某些标签不正确
- python - 从python中的列表中选择组合
- android - 如何在登录活动中处理来自 API 的错误(来自 Android Studio 的模板)
- c - 为什么是 scanf(); 跳过第一行?
- pdf - 如何在 Flask 中生成和下载 PDF 而不将它们保存在我的 Webapp 中?
- c# - 如何取消删除 Outlook 约会重复异常?