Действие Get Metadata в Фабрике данных Azure или Azure Synapse Analytics
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
Действие Get Metadata можно использовать для получения метаданных любых данных в конвейере Фабрики данных Azure или Synapse. Выходные данные действия получения метаданных можно использовать в условных выражениях для выполнения проверки. Кроме того, полученные метаданные можно использовать в последующих действиях.
Создание действия "Получение метаданных" с помощью пользовательского интерфейса
Чтобы использовать действие "Получить метаданные " в конвейере, выполните следующие шаги:
Выполните поиск элемента Получить метаданные на панели конвейера "Действия" и перетащите действие "Сбой" на холст конвейера.
Выберите новое действие "Получить метаданные" на холсте, если оно еще не выбрано, и вкладка "Параметры " для изменения сведений.
Выберите набор данных или создайте новый с помощью кнопки "Создать". Затем можно указать параметры фильтра и добавить столбцы из доступных метаданных для набора данных.
Используйте выходные данные действия в качестве входных данных для другого действия, например действия "Переключение" в этом примере. Вы можете ссылаться на выходные данные действия "Метаданные" в любом месте, где поддерживается динамическое содержимое в другом действии.
В редакторе динамического содержимого выберите выходные данные действия "Получить метаданные", чтобы сослаться на него в другом действии.
Поддерживаемые возможности
Действие получения метаданных принимает в качестве входных данных набор данных и возвращает сведения о метаданных. Сейчас поддерживаются приведенные ниже соединители и соответствующие извлекаемые метаданные. Максимальный размер возвращаемых метаданных — 4 МБ.
Поддерживаемые соединители
Хранилище файлов
Соединитель и метаданные | itemName (файл или папка) |
itemType (файл или папка) |
size (файл) |
создаются (файл или папка) |
lastModified1 (файл или папка) |
childItems (папка) |
contentMD5 (файл) |
structure2 (файл) |
columnCount2 (файл) |
exists3 (файл или папка) |
---|---|---|---|---|---|---|---|---|---|---|
Amazon S3 | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Совместимое хранилище Amazon S3 | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Google Cloud Storage | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Хранилище Oracle Cloud | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Хранилище BLOB-объектов Azure | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Azure Data Lake Storage 1-го поколения | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Azure Data Lake Storage 2-го поколения | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Файлы Azure | √/√ | √/√ | √ | √/√ | √/√ | √ | x | √ | √ | √/√ |
Microsoft Fabric Lakehouse | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Файловая система | √/√ | √/√ | √ | √/√ | √/√ | √ | x | √ | √ | √/√ |
SFTP | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
FTP | √/√ | √/√ | √ | x/x | x/x | √ | x | √ | √ | √/√ |
1 Метаданные lastModified
.
- Для Amazon S3, хранилища, совместимого с Amazon S3, Google Cloud Storage и Oracle Cloud Storage метаданные
lastModified
применяются к контейнеру и ключу, но не к виртуальной папке, а метаданныеexists
применяются к контейнеру и ключу, но не к префиксу или виртуальной папке. - Для хранилища BLOB-объектов Azure метаданные
lastModified
применяются к контейнерам и большим двоичным объектам, но не с виртуальным папкам.
2 Метаданные structure
и columnCount
не поддерживаются при получении метаданных из двоичных файлов, JSON- и XML-файлов.
3 Метаданные exists
. Для Amazon S3, хранилища, совместимого с Amazon S3, Google Cloud Storage и Oracle Cloud Storage метаданные exists
применяется к контейнеру и ключу, но не к префиксу или виртуальной папке.
Обратите внимание на следующее:
При использовании действия получения метаданных для папки убедитесь, что у вас есть разрешение LIST/EXECUTE для данной папки.
Для действия получения метаданных не поддерживается фильтр с подстановочными знаками для папок и файлов.
Для соединителя задаются фильтры
modifiedDatetimeStart
иmodifiedDatetimeEnd
.- Эти два свойства используются для фильтрации дочерних элементов при получении метаданных из папки. Они не применяются при получении метаданных из файла.
- При использовании такого фильтра
childItems
в выходные данных добавляются только те файлы, которые были изменены за указанный период, но не являются папками. - Чтобы применить такой фильтр, действие получения метаданных будет перечислять все файлы в указанной папке и проверять время изменения. Не следует указывать на папку с большим количеством файлов, даже если ожидаемое число соответствующих файлов мало.
Реляционная база данных
Соединитель и метаданные | отчета | columnCount | существует |
---|---|---|---|
Amazon RDS для SQL Server | √ | √ | √ |
База данных SQL Azure | √ | √ | √ |
Управляемый экземпляр SQL Azure | √ | √ | √ |
Azure Synapse Analytics | √ | √ | √ |
SQL Server | √ | √ | √ |
Параметры метаданных
Для получения соответствующих сведений можно указать приведенные ниже типы метаданных в списке полей действия получения метаданных.
Тип метаданных | Description |
---|---|
itemName | Имя файла или папки. |
itemType | Тип файла или папки. Возвращаемое значение — File или Folder . |
size | Размер файла в байтах. Применяется только к файлам. |
создаются | Дата и время создания файла или папки. |
lastModified | Дата и время последнего изменения файла или папки. |
childItems | Список вложенных папок и файлов в указанной папке. Применяется только к папкам. Возвращаемое значение представляет собой список имен и типов дочерних элементов. |
contentMD5 | Сверка MD5 файла. Применяется только к файлам. |
отчета | Структура данных файла или таблицы реляционной базы данных. Возвращаемое значение представляет собой список имен и типов столбцов. |
columnCount | Число столбцов в файле или реляционной таблице. |
существует | Существует ли файл, папка или таблица. Если в списке полей получения метаданных указано значение exists , то действие не завершится сбоем, даже если файл, папка или таблица не существует. Вместо этого в выходных данных возвращается exists: false . |
Совет
Если необходимо проверить, существует ли файл, папка или таблица, укажите exists
в списке полей действия получения метаданных. Затем можно проверить результат exists: true/false
в выходных данных действия. Если значение exists
не указано в списке полей, то действие получения метаданных завершится ошибкой, если объект будет не найден.
Примечание.
Если при получении метаданных из хранилищ файлов настроить modifiedDatetimeStart
или modifiedDatetimeEnd
, то в выходные данные childItems
будут включены только файлы по указанному пути, время последнего изменения которых находится в указанном диапазоне. Элементы во вложенных папках включены не будут.
Примечание.
Чтобы в списке полей Structure обеспечить реальную структуру данных для наборов данных с разделителями текста и в формате Excel, необходимо включить свойство First Row as Header
, которое поддерживается только для этих источников данных.
Синтаксис
Действие получения метаданных в фабрике данных Azure
{
"name":"MyActivity",
"type":"GetMetadata",
"dependsOn":[
],
"policy":{
"timeout":"7.00:00:00",
"retry":0,
"retryIntervalInSeconds":30,
"secureOutput":false,
"secureInput":false
},
"userProperties":[
],
"typeProperties":{
"dataset":{
"referenceName":"MyDataset",
"type":"DatasetReference"
},
"fieldList":[
"size",
"lastModified",
"structure"
],
"storeSettings":{
"type":"AzureBlobStorageReadSettings"
},
"formatSettings":{
"type":"JsonReadSettings"
}
}
}
Набор данных
{
"name":"MyDataset",
"properties":{
"linkedServiceName":{
"referenceName":"AzureStorageLinkedService",
"type":"LinkedServiceReference"
},
"annotations":[
],
"type":"Json",
"typeProperties":{
"location":{
"type":"AzureBlobStorageLocation",
"fileName":"file.json",
"folderPath":"folder",
"container":"container"
}
}
}
}
Свойства типа
Сейчас с помощью действия получения метаданных можно получать приведенные ниже типы сведений о метаданных.
Свойство | Описание: | Обязательное поле |
---|---|---|
fieldList | Типы необходимых сведений о метаданных. Дополнительные сведения о поддерживаемых метаданных см. в разделе Параметры метаданных этой статьи. | Да |
набор данных | Эталонный набор данных, метаданные которого требуется получить с помощью действия получения метаданных. Сведения о поддерживаемых соединителях см. в разделе Возможности. Сведения о синтаксисе наборов данных приведены в разделах, посвященных конкретным соединителям. | Да |
formatSettings | Применяется при использовании набора данных типа с форматированием. | No |
storeSettings | Применяется при использовании набора данных типа с форматированием. | No |
Пример полученных результатов
Результаты получения метаданных отображаются в выходных данных действия. Ниже приведены два примера, в которых показано множество параметров метаданных. Чтобы использовать эти результаты в последующем действии, следует применить шаблон @{activity('MyGetMetadataActivity').output.itemName}
.
Получение метаданных файла
{
"exists": true,
"itemName": "test.csv",
"itemType": "File",
"size": 104857600,
"lastModified": "2017-02-23T06:17:09Z",
"created": "2017-02-23T06:17:09Z",
"contentMD5": "cMauY+Kz5zDm3eWa9VpoyQ==",
"structure": [
{
"name": "id",
"type": "Int64"
},
{
"name": "name",
"type": "String"
}
],
"columnCount": 2
}
Получение метаданных папки
{
"exists": true,
"itemName": "testFolder",
"itemType": "Folder",
"lastModified": "2017-02-23T06:17:09Z",
"created": "2017-02-23T06:17:09Z",
"childItems": [
{
"name": "test.avro",
"type": "File"
},
{
"name": "folder hello",
"type": "Folder"
}
]
}
Связанный контент
Ознакомьтесь с другими поддерживаемыми действиями потока управления: