java - Spark Streaming 调整每批大小的记录数在几批后不起作用?
问题描述
我的 spark 流应用程序正在使用 DStream 方法从 kafka 读取数据,我试图让批处理大小在 60 秒内处理 36,000 条消息。
我正在使用来自 600 个分区的 kafka 主题的消息。
spark.streaming.kafka.maxRatePerPartition = 1
spark.streaming.backpressure.enabled = true
- 将我的批处理持续时间设置为 60 秒,当我创建
StreamingContext
使用上述配置,我希望每批 (600*1*60) 获得 36000 条记录,并且它在最初的几批中按预期工作,但之后主题中的所有记录都被转储到一批中。
注意:我使用的是 Auto Scaling 集群,是否需要设置其他参数?
解决方案
推荐阅读
- jetty - Sparkjava 错误:org.eclipse.jetty.http.HttpParser - 标头太大 >8192
- javascript - JS 数据表 - 切换显示/隐藏,响应式自动显示其他列
- excel - 如何连接多个单元格,是否可以使用任何连接的单元格进行修改?
- javascript - 在 html 中搜索 javascript 不起作用
- r - 在 R 中填充矩阵
- spring-cloud-dataflow - 数据流服务器和船长角色
- c# - 桌面应用程序的刷新令牌,没有登录提示,使用 oAuth 使用 Web Api 2.0
- css - 亚马逊 S3 存储桶的渲染问题
- python - 如何使用 pyo3 构建模块层次结构?
- neo4j - Noe4j:当不在第一个导入语句中时,您如何处理导入时首次看到和最后看到的属性?