【发布时间】:2021-08-12 21:20:25
【问题描述】:
我有以下 Apache Spark SQL 连接谓词:
t1.field1 = t2.field1 and t2.start_date <= t1.event_date and t1.event_date < t2.end_date
数据:
t1 DataFrame have over 50 millions rows
t2 DataFrame have over 2 millions rows
t1 DataFrame 中的几乎所有t1.field1 字段都具有相同的值(null)。
目前,由于数据倾斜,Spark 集群在单个任务上挂起超过 10 分钟以执行此连接。此时只有一名工人和该工人的一项任务在工作。所有其他 9 名工人都处于空闲状态。如何改进这种连接,以便将这一特定任务的负载分配到整个 Spark 集群?
【问题讨论】:
标签: scala apache-spark apache-spark-sql