我正在运行spark应用程序,它在cassandra表上执行直接连接
我试图控制每秒的读取次数,以便长时间运行的作业不会影响整个数据库这里是我的配置参数
--conf spark.cassandra.concurrent.reads=2
--conf spark.cassandra.input.readsPerSec=2
--conf spark.executor.cores=1
--conf spark.executor.instances=1
--conf spark.cassandra.input.fetch.sizeInRows=1500
我知道我不会从每个分区读取超过1500行,但是,尽管所有的阈值每秒读取都超过200-300
是否有任何其他标志或配置需要打开
1条答案
按热度按时间vshtjzan1#
它缝合了
CassandraJoinRDD
在节流方面有缺陷spark.cassandra.input.readsPerSec
,请参见https://datastax-oss.atlassian.net/browse/sparkc-627 详情。同时使用spark.cassandra.input.throughputMBPerSec
限制你的加入。请注意,限制是基于RateLimitor类的,因此限制不会立即生效(您至少需要读取throughputMBPerSec
开始节流的数据)。这在scc中可能会得到改进。