У меня есть pyspark
Dataframe
, который я создал с помощью метода rdd
reduceByKey
(поэтому есть столбец с уникальными строками).
Я хочу, чтобы файл parquet
, созданный этим заданием, был быстро доступен для этого столбца, и после прочтения этого ответа https://stackoverflow.com/a/48493772/4443226 я обнаружил, что могу предоставить значения min
и max
двоичный столбец (строка) в статистике метаданных паркета.
Поэтому я решил sort
датафрейм (используя паркет), например:
data = spark.read.text(args.input)
processed_data = data.rdd.map(parse_line).reduceByKey(reduce_id)
df = parsed_data.toDF(["id", "meta"]).sort("id")
df.write.parquet(args.output)
Есть ли необходимость в sort
после запуска reduceByKey
? Или я могу разделить данные другим способом, чтобы обеспечить быстрый доступ по ключу?