Чтение кадра данных с тем же разделителем, который был сохранен в HDFS - PullRequest
1 голос
/ 23 апреля 2020

У меня есть общая работа c spark 2.3, которая выполняет много преобразований, объединений и создает огромный даг. Это оказывает большое влияние на сторону драйвера, так как dag становится очень сложным.

Чтобы снять давление на драйвер, я хотя и проверял несколько промежуточных фреймов данных, чтобы сократить dag, но я заметил, что фрейм данных .checkpoint использует rdds внизу и тратит много времени на сериализацию и десериализацию кадра данных.

В соответствии с этим Spark: эффективность контрольной точки информационного кадра по сравнению с явной записью на диск и мой опыт: записывать информационный кадр в виде паркета и читать его обратно быстрее, чем контрольную, но у него есть недостаток , Dataframe теряет разделитель.

Есть ли способ записи и чтения кадра данных и сохранения разделителя? Я, однако, использовал сегменты при записи фрейма данных, поэтому, когда фрейм данных читается обратно, он знает разбиение данных. Проблема в том, как я могу узнать столбцы, которые в фрейме данных используются в качестве разделителя? Работа Spark, которую я выполняю, является своего рода c, поэтому я не могу жестко закодировать столбцы

Спасибо

...