Как создать DataFrame из массива в Scala? - PullRequest
0 голосов
/ 02 апреля 2020

У меня есть случай, когда мне нужно создать DataFrame из массива.

Я создал DataFrame, который читает CSV, затем я использую карту для дальнейшей обработки / преобразования.

    var mapTransform = df1.collect.map( 
      line => {
      // line.split(",") logic for fields separation
      //transformation logic here for various fields

      (field1+","+field2+","+field3);  
      }
    )

Из этого я получаю array(Array[String]), который преобразованный результат.

Я хочу дополнительно преобразовать его в DataFrames с отдельными столбцами, чтобы позже его можно было использовать для записи в БД или файл, однако я столкнулся с проблемой. Возможно ли это сделать? Любые решения?

1 Ответ

0 голосов
/ 02 апреля 2020

Это делает вашу работу: spark.sparkContext.parallelize(mapTransform.toSeq) Но учтите, что вы должны избегать методов, которые генерируют не rdd, так как они загружают все содержимое массива в один узел, и это неэффективно в общем случае.

Кроме того, существует конвенция, поворачивающая var с на val с максимально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...