Как отобразить строковую переменную в корне с помощью Spark SQL? - PullRequest
0 голосов
/ 20 ноября 2019

Короче говоря - я использую искровой код в Scala IDE для преобразования json в csv. У меня нет знаний об искре, так как я работал только с такими СУБД, как Oracle, TD и DB2. Мне дали только код, который преобразует данные json в csv и как передать аргументы для извлечения данных из схемы.

Теперь я могу получить данные, которые находятся внутри структуры имассив с помощью

val val1 = df.select(explode($"data.business").as("ID")).select($"ID.amountTO")
 val1.repartition(1).write.format("com.databricks.spark.csv").option("header", "true").save(args(2) + "\\Result" + "\\" + timeForpath + "\\val1")

Я не знаю, чтобы экспортировать столбцы, которые не в структуре и непосредственно в корне схемы, такие как QAYONOutCome, QA1PartiesComments и т. д.

root
 |-- QAYONOutCome: string (nullable = true)
 |-- QA1PartiesComments: string (nullable = true)
 |-- QA1PartiesQID: string (nullable = true)
 |-- QA1PartiesResponse: string (nullable = true)
 |-- QAHolderTypeComments: string (nullable = true)
 |-- QAHolderTypeQID: string (nullable = true)
 |-- QAHolderTypeResponse: string (nullable = true)
 |-- QAhighRiskComments: string (nullable = true)
 |-- QAhighRiskQID: string (nullable = true)
 |-- QAhighRiskResponse: string (nullable = true)
 |-- QA2ClassComments: string (nullable = true)
 |-- QA2ClassQID: string (nullable = true)
 |-- QA2ClassResponse: string (nullable = true)
 |-- QAoutcomeComments: string (nullable = true)
 |-- QAoutcomeQID: string (nullable = true)
 |-- QAoutcomeResponse: string (nullable = true)
 |-- data: struct (nullable = true)
 |    |-- business: array (nullable = true)
 |    |    |-- element: struct (containsNull = true)
 |    |    |    |-- amountTO: string (nullable = true)
 |    |    |    |-- ID: string (nullable = true)
 |    |    |    |-- Registration: struct (nullable = true)
 |    |    |    |    |-- country: string (nullable = true)
 |    |    |    |    |-- id: long (nullable = true)
 |    |    |    |    |-- line1: string (nullable = true)
 |    |    |    |    |-- line2: string (nullable = true)
 |    |    |    |    |-- postCode: string (nullable = true)

Любая помощь приветствуется. Извиняюсь, если мой вопрос звучит очень глупо :(. Пожалуйста, дайте мне знать, если требуется дополнительная информация для решения или ясности. Заранее большое спасибо.

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