Повторите файлы из папки и обработайте их в scala

0

Вопрос

У меня есть пара файлов в папке для разных стран. как показано ниже

Casedata_GBR_202110_timestamp.csv

Casedata_ARG_202110_timestamp.csv

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

2021-->11-->>GBR

2021-->11-->>АРГ

В spark scala/scala помогите мне написать код для обработки файла по странам и перемещения в соответствующую папку страны.

apache-spark scala
2021-11-24 06:42:17
1

Лучший ответ

0

Это звучит так, как будто вы ищете partitionBy определено на DataFrameWriter. Из скаладока:

def partitionBy(colNames: String*): DataFrameWriter[T]

Разбивает вывод по заданным столбцам в файловой системе. Если указано, выходные данные отображаются в файловой системе, аналогичной схеме разделения Hive. Например, когда мы разделяем набор данных по годам, а затем по месяцам, макет каталога будет выглядеть следующим образом:

year=2016/month=01/
year=2016/month=02/

Секционирование-один из наиболее широко используемых методов оптимизации компоновки физических данных. Он обеспечивает грубозернистый индекс для пропуска ненужных операций чтения данных, когда запросы содержат предикаты в секционированных столбцах. Для того чтобы разделение работало хорошо, количество различных значений в каждом столбце обычно должно быть меньше десятков тысяч.

Это применимо для всех файловых источников данных (например, Parquet, JSON), начиная с Spark 2.1.0.

2021-11-24 08:25:52

есть ли в любом случае, чтобы получить как 2016/01, и поможет ли foreach перебирать один файл за другим
Krishna Murthy

я должен обработать один за другим файл в фрейм данных и скопировать его в большой двоичный объект
Krishna Murthy

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................