发生数据倾斜时,如果有少数几个Key对应的数据量特别大,而且这些Key对整个Spark作业的执行和结果不太重要,那么,就可以直接过滤掉这些Key。如果是在Spark SQL中使用where字句过滤,如果在Spark Core中,就是用RDD的filter算子来过滤。如果需要动态判定那些Key导致数据倾斜,又能过滤掉的话,可以使用smaple算子进行随机抽样,然后计算每个Key的数量,最终判断需要过滤的Key是那些。
发生数据倾斜时,如果有少数几个Key对应的数据量特别大,而且这些Key对整个Spark作业的执行和结果不太重要,那么,就可以直接过滤掉这些Key。如果是在Spark SQL中使用where字句过滤,如果在Spark Core中,就是用RDD的filter算子来过滤。如果需要动态判定那些Key导致数据倾斜,又能过滤掉的话,可以使用smaple算子进行随机抽样,然后计算每个Key的数量,最终判断需要过滤的Key是那些。
本文标题:Spark数据倾斜解决方案二:过滤导致数据倾斜的Key
本文链接:https://www.haomeiwen.com/subject/msfitqtx.html
网友评论