Как проверить, пусты ли файлы в каталоге озера данных с помощью Фабрики данных Azure?
В каталоге озера данных есть несколько файлов, и я хочу проверить, пусты ли эти файлы или нет. Если файлы пусты, я хочу сохранить имена файлов этих пустых файлов в файле CSV.
Да, одна и та же папка содержит как пустые файлы, так и непустые файлы
Если вы хотите проверить, является ли файл пустым или нет, выполните следующие действия. Я попытался воспроизвести то же самое в своей среде и получил следующие результаты:
В моей учетной записи хранения есть два файла: один demo123.csv пустой, а другой vm_name3.csv непустой.
Пожалуйста, выполните следующие действия:
Шаг 1. Сначала создайте метаданные Get с дочерними элементами.
Шаг 2: Добавьте динамическое выражение @activity('Get Metadata1').output.childItems в действие forEach.
Шаг 3: внутри действия forEach -> использовать поиск и условие If. Добавьте это динамическое выражение при поиске: @item().name
Уважать
Если условие:
Используя это динамическое выражение @equals(activity('Lookup1').output. count,0). Вы узнаете, является ли файл пустым или нет.
Затем добавьте переменную добавления внутри истинной проводимости.
Я создал две переменные с типом массива.
@item().name
к переменной добавленияШаг 4:
Добавьте переменную set в действие forEach:
После успешного выполнения пайплайна. Я получил пустое имя файла:
Если вы хотите сохранить имена файлов этих пустых файлов в файле CSV. Затем следуйте этой ветке SO от Aswin.
Каким должен быть набор данных активности поиска?
Привет @Anonymous, delimitedtext2
Он должен указывать на ?
Я получаю эту ошибку при попытке отладки «Значение переменной var1 должно быть допустимым массивом, например ["1","2","3"]"
Не могли бы вы предоставить это сообщение об ошибке
Выходные данные конвейерной проверки var1 Значение переменной должно быть допустимым массивом; например ["1","2","3"]
Да, это допустимый массив. Просто проверьте один раз с переменной Val1. ваша строка или массив.
Я предоставил только тип массива.
Каким должен быть путь к набору данных для поиска?
Можете ли вы поделиться изображением подключения к набору данных как для данных Getmeta, так и для наборов данных Look Up?
Привет @Anonymous, пожалуйста, проверьте описанный выше подход и пошаговый процесс. Вы найдете выше изображение подключения к набору данных как для данных Getmeta, так и для наборов данных поиска, а также путь набора данных для действия поиска.
Я думаю, что что-то не так с моим набором данных Look Up
Я предполагаю, что набор данных поиска должен указывать на тот же каталог, что и набор данных Getmeta data?
Перейдите к проверке шага 1, как только я возьму другой набор данных, поскольку вы можете видеть поиск с разделителями1 и шаг 3, который я взял с разделителями2. только одна причина, по которой метаданные используют набор данных как Json. поэтому я создаю отдельный набор данных для поиска и воспринимаю как массив.
В вашем случае набор данных delimitedtext1 указывает на папку, в которой находятся эти 2 файла, и на какой набор данных delimitedtext2 указывает? Это фиктивный файл?
Я следил за этой веткой Фабрика данных Azure V2. Проверьте размер файла для действия копирования и применил условие, чтобы оценить размер файла, добавить переменную и установить переменную для хранения имен файлов. Сработало для меня.
Все эти файлы находятся в одном каталоге?