Как использовать сценарий предварительного копирования в фабрике данных Azure для удаления строк с нулевыми / специальными символами? - PullRequest
0 голосов
/ 01 февраля 2019

Я перемещаю данные в папке из озера данных Azure на SQL Server с помощью фабрики данных Azure (ADF).

Папка содержит сотни файлов .csv.Однако одна противоречивая проблема с этими CSV-файлами заключается в том, что некоторые (не все) имеют последнюю строку, содержащую специальный символ, который при попытке загрузки в таблицу SQL с типами данных, отличными от NVARCHAR (MAX), завершится неудачно.Чтобы обойти это, мне сначала нужно использовать ADF для загрузки данных в промежуточные таблицы, где для всех столбцов задано значение NVARCHAR (MAX), а затем я вставляю те строки, которые не содержат специальных символов, в таблицы с соответствующим типом данных.

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

Я заметил, что есть поле 'pre-copy script', которое может выполняться до загрузки на сервер sql.Я хочу добавить код, который позволит мне анализировать специальные символы ИЛИ пустые строки перед загрузкой на сервер SQL.

Я не уверен, как подойти к этому, поскольку CSV не будет храниться в таблице, поэтому код SQL не будет работать.Любое руководство о том, как я могу использовать сценарий предварительного копирования для очистки моих данных перед загрузкой на сервер SQL?

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019
0 голосов
/ 02 февраля 2019

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

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

Надеюсь, это помогло!

...