Фабрика данных Azure: как работает экспорт переменных U-SQL в следующий блок конвейера?

У меня есть конвейер в моей фабрике данных Azure с

U-SQL -> ForEach -> Интернет

..настройка потока.

Мой U-SQL в конечном итоге выполнит «выборку» одного столбца, и я хочу вызвать API для каждой из выбранных строк в одном столбце.

Могу я сделать вот так?

Если да, как получить переменную, содержащую выбранный вывод запроса в сценарии U-SQL, в фабрику данных Azure?

(так что ForEach может выбрать его как список и отправить каждую запись в веб-ящик, который вызывает API и получает нужные мне данные)


Прямо сейчас моя альтернатива - взять поле U-SQL, которое выбирает столбец и экспортирует его в / Temp на ADLS, а затем иметь одно большое поле Azure Batch C #, которое считывает файл и вручную перебирает строки и запускает вызов API для каждая строка. Я просто надеюсь, что будет более симпатичный способ, более модульный в стиле ADF, чтобы сделать то же самое.


person raole42    schedule 02.10.2018    source источник


Ответы (1)


Скрипты U-SQL не возвращают данные, значит, вы на правильном пути. Пакетная служба Azure добавляет еще один уровень сложности, который вам, вероятно, не понадобится в этом случае. Поисковая активность ADF может читать Хранилище BLOB-объектов и ADLS Gen 1, чтобы ваш конвейер мог выполнять следующие действия:

  1. U-SQL Activity выводит столбец в большой двоичный объект.
  2. Действие поиска читает blob.
  3. Активность Foreach перебирает результаты поиска.
  4. -> внутренняя веб-активность вызывает API.
person Joel Cochran    schedule 02.10.2018
comment
Это работает, Джоэл, но в конечном итоге мне пришлось перейти на полную версию Batch / Exe из-за сложностей с API. Если бы это был простой API, с которым веб-окно могло бы справиться, он работал бы с пометкой как ответ. Теперь я лучше понимаю ограничения потоков ADF. - person raole42; 10.10.2018