我的日常火花应用程序处理所有的数据采集步骤,从处理原始层(去重复和其他功能)开始,创建数据仓库和数据仓库。当我启动spark.sql.shuffle.partitions值时,我无法决定什么是更好的sparkSession值配置。我的集群配置:
我的问题是:如何在我的火花工作中选择更好的spark.sql.shuffle.partitions价值来获得性能。谢谢
发布于 2020-11-18 20:52:59
没有标准的回答。但是通常情况下,首先以高度并行性开头(即大nb )。)。
建议每个核心执行2至4个任务。
通常,我们建议在集群中每个CPU核心执行2-3个任务。
所以在你的例子中,7个节点,你需要知道核心的数量,因为每个节点可以有多个执行者,每个执行者可以有多个核心。
关于内存,这取决于您的数据集有多大,您正在执行何种操作,数据是否倾斜,等等。
然后..。为什么不尝试使用最新的Spark,它已经给您带来了更多的优化?:)
相关的答案 这里。
https://stackoverflow.com/questions/64895471
相似问题