分区内的PySpark排序无法正常工作

时间:2019-06-19 12:23:36

标签: apache-spark pyspark apache-spark-sql

我目前正在尝试对大量数据进行排序,并使用PySpark将其写入json行对象(底层存储机制为S3,我使用AWS胶水来触发代码)。我有以下代码:

dataframe_with_year_month_columns
.orderBy("field1","field2").write.format("json")
.partitionBy("year","month").mode("overwrite").save(v_target_path)

当我检查输出时,其中一些命令的正确排序如下:

{"field1", "field2", "value", "value", "value"}
{"field1", "field2", "value", "value", "value"}
{"field1", "field2", "value", "value", "value"}
{"field1", "field2", "value", "value", "value"}

但是,某些部分未正确排序:

{"field1", "field2", "value", "value", "value"}
{"field2", "field1", "value", "value", "value"}
{"field1", "field2", "value", "value", "value"}
{"field2", "field1", "value", "value", "value"}

如何确保对分区(同一年和月份中的记录)进行正确排序?不必在整个年份和月份内对整个数据集的记录进行排序。

0 个答案:

没有答案