#azure-data-factory-2 #azure-databricks
#azure-data-factory-2 #azure-databricks
Вопрос:
Я пытаюсь использовать преобразование производных столбцов в потоке данных ADF (Gen 2), где я использовал дельта-таблицу с вложенными структурами. Я борюсь с синтаксисом, необходимым для выравнивания этих структур, и информация о столбцах не отображается, несмотря на то, что я могу просматривать данные.
Такая структура будет:
{
"ContactId":"1002657",
"Name":{
"FirstName":"Donna",
"FullName":"Donna Brittain",
"LastName":"Brittain"
}
}
Предварительный просмотр данных работает нормально:
Предварительный просмотр данных
Структура моей дельта-таблицы: структура дельта-таблицы
Ошибка, которую я получаю, пытаясь сослаться на вложенный столбец: задача производного столбца
Как я могу ссылаться на вложенный столбец, такой как Name.FirstName, чтобы сгладить его до FirstName и почему он не отображается ни в одном из сопоставлений?
Ответ №1:
Существует простой способ сгладить вложенные структуры. Во-первых, мы можем использовать операцию копирования в ADF, это автоматизирует выравнивание вложенного столбца.
Скопируйте данные в хранилище Azure, например в data Lake (здесь я использовал Azure Data Lake Storage Gen 2), затем мы можем использовать его в качестве источника данных в потоке данных.
- Мы можем создать файл txt или csv с заголовками в озере данных.
- Затем мы можем определить действие копирования в ADF и установить сопоставление.
- После запуска debug мы можем увидеть результат. Мы можем использовать его в качестве источника данных в потоке данных.
Обновление: в приемнике мы можем установить значение Max rows per file
параметра следующим образом:
ADF разделит файл на несколько файлов
Комментарии:
1. Я не думаю, что это сработает. Если у меня есть миллиард строк в моей дельта-структурированной сжатой таблице, и я затем записываю ее в формат txt / csv с целью ее выравнивания, все пойдет не так хорошо: (
2. Мы можем разделить его на несколько файлов формата txt / csv. Пожалуйста, просмотрите мой обновленный ответ.