apache-spark - spark-cassandra-connector 配置:concurrent.reads vs input.reads_per_sec
问题描述
阅读https://github.com/datastax/spark-cassandra-connector/blob/master/doc/reference.md#read-tuning-parameters时感到困惑
concurrent.reads:为 joinWithCassandra 表设置读取并行度。
input.reads_per_sec:为 joinWithCassandraTable 设置每秒每个核心的最大请求数
Datastax 中来自 SDE 的 concurrent.reads 的说明:https ://groups.google.com/a/lists.datastax.com/d/msg/spark-connector-user/PaQm1LT7Qlk/h41WLnHfBAAJ
Concurrent reads set to 4 means in a 4 core spark executor means, 16 requests will run MAX at the same time.
看起来concurrent.reads和input.reads_per_sec做同样的事情。
它们之间的真正区别是什么?
解决方案
它们并不相同,但可以视为相关...
concurrent.reads
定义每个核心可以同时发送多少个并发请求(所谓的飞行中请求)。在某些情况下,您可以将其从默认值降低,以避免 Cassandra 节点因并行处理过多请求而过载;input.reads_per_sec
定义每秒每个核心可以执行多少个请求。