2.1 数据预处理 在进行Spark任务之前,可以对数据进行预处理,以减少数据倾斜的发生。数据预处理的主要方法有: 2.2 使用更高级的聚合算子 在进行聚合操作时,可以使用Spark提供的更高级的聚合算子,例如reduceByKey、combineByKey等,这些算子能够自动处理数据倾斜的情况。 2.3 手动处理数据倾斜 如果前面的方法无法解决数据倾...
注意2: 单独处理异常数据时,可以配合使用Map Join解决。 ### 2、spark使用不当造成的数据倾斜 提高shuffle并行度 dataFrame和sparkSql可以设置spark.sql.shuffle.partitions参数控制shuffle的并发度,默认为200。 rdd操作可以设置spark.default.parallelism控制并发度,默认参数由不同的Cluster Manager控制。 局限性: 只是让...