【发布时间】:2023-01-20 14:58:32
【问题描述】:
对于一个特定的用例,我们正在使用 spark 结构化流,但这个过程不是高效和稳定的。聚合有状态操作是整个作业中耗时最多的阶段,也是内存处理阶段。 Spark Streaming 提供了 rocksDB 的实现来管理状态。它帮助我们获得了一些稳定性,但增加了时间开销。所以我们正在寻求优化 rocksDB 的实现。在探索日志时,我们了解到命中率计数始终为零,并且块缓存命中率很低。如果有人可以阐明这一点,那将非常有帮助。
RocksDB 本身提供各种调优参数,例如写缓冲区大小,min_buffer_to_merge.我们试图将这些参数公开给 spark。然后将参数值设置得高,以增加我们命中 memtable 的机会,但这没有帮助。
【问题讨论】:
标签: apache-spark spark-streaming spark-structured-streaming rocksdb