Как сгладить тип данных Parquet Array при использовании IBM Cloud SQL Query - PullRequest
1 голос
/ 27 марта 2020

Мне нужно собрать sh данные файла паркета, которые я читаю из IBM Cloud SQL Запрос к Db2 в облаке.

Мой файл паркета содержит данные в формате массива, и я хочу сделать sh это и для DB2 on Cloud тоже.

Есть ли способ собрать sh этот массив данных паркетного файла в Db2 в облаке?

1 Ответ

1 голос
/ 30 марта 2020

Вы проверили этот совет в документации?

https://cloud.ibm.com/docs/services/sql-query?topic=sql-query-overview#limitations

Если JSON, ИЛИ C или Паркет Объект содержит вложенную или массивную структуру, запрос с выводом CSV с использованием подстановочного знака (например, SELECT * from cos: // ...) возвращает ошибку, такую ​​как «Недопустимый тип данных CSV: struct.» Используйте один из следующих обходных путей:

  • Для вложенной структуры используйте функцию преобразования таблицы FLATTEN.
  • В качестве альтернативы, вы можете указать полностью вложенные имена столбцов вместо подстановочного знака, для Например, SELECT address.city, address.street, ... from cos://....
  • Для массива используйте функцию Spark SQL explode (), например, select explode(contact_names) from cos://....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...