Obter atividade de metadados no Azure Data Factory ou no Azure Synapse Analytics
APLICA-SE A: Azure Data Factory Azure Synapse Analytics
Gorjeta
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Você pode usar a atividade Obter metadados para recuperar os metadados de quaisquer dados no Azure Data Factory ou em um pipeline Synapse. Você pode usar a saída da atividade Obter metadados em expressões condicionais para executar a validação ou consumir os metadados em atividades subsequentes.
Criar uma atividade Obter metadados com a interface do usuário
Para usar uma atividade Obter metadados em um pipeline, conclua as seguintes etapas:
Procure Obter Metadados no painel Atividades do pipeline e arraste uma atividade Falha para a tela do pipeline.
Selecione a nova atividade Obter metadados na tela, se ainda não estiver selecionada, e sua guia Configurações para editar seus detalhes.
Escolha um conjunto de dados ou crie um novo com o botão Novo. Em seguida, você pode especificar opções de filtro e adicionar colunas dos metadados disponíveis para o conjunto de dados.
Use a saída da atividade como uma entrada para outra atividade, como uma atividade Switch neste exemplo. Você pode fazer referência à saída da Atividade de Metadados em qualquer lugar em que o conteúdo dinâmico seja suportado na outra atividade.
No editor de conteúdo dinâmico, selecione a saída da atividade Obter metadados para fazer referência a ela na outra atividade.
Capacidades suportadas
A atividade Obter metadados usa um conjunto de dados como entrada e retorna informações de metadados como saída. Atualmente, os seguintes conectores e os metadados recuperáveis correspondentes são suportados. O tamanho máximo dos metadados retornados é de 4 MB.
Conectores suportados
Armazenamento de ficheiros
Conector/Metadados | nome_doitem-se (ficheiro/pasta) |
Tipo de item (ficheiro/pasta) |
size (ficheiro) |
criado (ficheiro/pasta) |
lastModified1 (ficheiro/pasta) |
childItems (pasta) |
conteúdoMD5 (ficheiro) |
estrutura2 (ficheiro) |
columnCount2 (ficheiro) |
existe3 (ficheiro/pasta) |
---|---|---|---|---|---|---|---|---|---|---|
Amazon S3 | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Armazenamento compatível com Amazon S3 | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Google Cloud Storage | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Armazenamento em nuvem Oracle | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Armazenamento de Blobs do Azure | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Armazenamento do Azure Data Lake Ger1 | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
Azure Data Lake Storage Gen2 (Armazenamento do Azure Data Lake Gen2) | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Ficheiros do Azure | √/√ | √/√ | √ | √/√ | √/√ | √ | x | √ | √ | √/√ |
Microsoft Fabric Lakehouse | √/√ | √/√ | √ | x/x | √/√ | √ | √ | √ | √ | √/√ |
Sistema de Ficheiros | √/√ | √/√ | √ | √/√ | √/√ | √ | x | √ | √ | √/√ |
SFTP | √/√ | √/√ | √ | x/x | √/√ | √ | x | √ | √ | √/√ |
FTP | √/√ | √/√ | √ | x/x | x/x | √ | x | √ | √ | √/√ |
1 Metadados lastModified
:
- Para o Amazon S3, o Amazon S3 Compatible Storage, o Google Cloud Storage e o Oracle Cloud Storage se aplicam ao bucket e à chave,
lastModified
mas não à pasta virtual, eexists
se aplicam ao bucket e à chave, mas não ao prefixo ou à pasta virtual. - Para o armazenamento de Blob do Azure, aplica-se ao contêiner e ao blob,
lastModified
mas não à pasta virtual.
2 Metadados structure
e columnCount
não são suportados ao obter metadados de ficheiros binários, JSON ou XML.
3 Metadadosexists
: Para o Amazon S3, o Amazon S3 Compatible Storage, o Google Cloud Storage e o Oracle Cloud Storage aplicam-se ao bucket e à chave, exists
mas não ao prefixo ou à pasta virtual.
Tenha em atenção o seguinte:
Ao usar a atividade Obter metadados em uma pasta, verifique se você tem permissão LIST/EXECUTE para a pasta fornecida.
O filtro curinga em pastas/arquivos não é suportado para a atividade Obter metadados.
modifiedDatetimeStart
emodifiedDatetimeEnd
conjunto de filtros no conector:- Essas duas propriedades são usadas para filtrar os itens filho ao obter metadados de uma pasta. Ele não se aplica ao obter metadados de um arquivo.
- Quando esse filtro é usado, a
childItems
saída in inclui apenas os arquivos que são modificados dentro do intervalo especificado, mas não pastas. - Para aplicar esse filtro, a atividade GetMetadata enumerará todos os arquivos na pasta especificada e verificará o tempo modificado. Evite apontar para uma pasta com um grande número de arquivos, mesmo que a contagem de arquivos qualificados esperada seja pequena.
Base de dados relacional
Conector/Metadados | Estrutura | columnCount | existe |
---|---|---|---|
Amazon RDS para SQL Server | √ | √ | √ |
Base de Dados SQL do Azure | √ | √ | √ |
Instância Gerida do SQL no Azure | √ | √ | √ |
Azure Synapse Analytics | √ | √ | √ |
SQL Server | √ | √ | √ |
Opções de metadados
Você pode especificar os seguintes tipos de metadados na lista de campos de atividade Obter metadados para recuperar as informações correspondentes:
Tipo de metadados | Description |
---|---|
nome_doitem-se | Nome do ficheiro ou pasta. |
Tipo de item | Tipo de arquivo ou pasta. O valor retornado é File ou Folder . |
size | Tamanho do ficheiro, em bytes. Aplicável apenas a ficheiros. |
criado | Data/hora criada do arquivo ou pasta. |
lastModified | Data/hora da última modificação do ficheiro ou pasta. |
childItems | Lista de subpastas e arquivos na pasta fornecida. Aplicável apenas a pastas. O valor retornado é uma lista do nome e do tipo de cada item filho. |
conteúdoMD5 | MD5 do arquivo. Aplicável apenas a ficheiros. |
Estrutura | Estrutura de dados do arquivo ou tabela de banco de dados relacional. O valor retornado é uma lista de nomes de colunas e tipos de coluna. |
columnCount | Número de colunas no arquivo ou tabela relacional. |
existe | Se existe um ficheiro, pasta ou tabela. Se exists for especificado na lista de campos Obter Metadados, a atividade não falhará mesmo que o arquivo, pasta ou tabela não exista. Em vez disso, exists: false é retornado na saída. |
Gorjeta
Quando quiser validar a existência de um arquivo, pasta ou tabela, especifique exists
na lista de campos de atividade Obter metadados. Em seguida, você pode verificar o exists: true/false
resultado na saída da atividade. Se exists
não for especificado na lista de campos, a atividade Obter metadados falhará se o objeto não for encontrado.
Nota
Quando você obtém metadados de armazenamentos de arquivos e configura modifiedDatetimeStart
ou modifiedDatetimeEnd
, o childItems
na saída inclui apenas arquivos no caminho especificado que têm um tempo de última modificação dentro do intervalo especificado. Os itens em subpastas não estão incluídos.
Nota
Para que a lista de campos Estrutura forneça a estrutura de dados real para texto delimitado e conjuntos de dados no formato Excel, você deve habilitar a propriedade, que é suportada First Row as Header
apenas para essas fontes de dados.
Sintaxe
Obter atividade de metadados
{
"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"
}
}
}
Conjunto de dados
{
"name":"MyDataset",
"properties":{
"linkedServiceName":{
"referenceName":"AzureStorageLinkedService",
"type":"LinkedServiceReference"
},
"annotations":[
],
"type":"Json",
"typeProperties":{
"location":{
"type":"AzureBlobStorageLocation",
"fileName":"file.json",
"folderPath":"folder",
"container":"container"
}
}
}
}
Propriedades do tipo
Atualmente, a atividade Obter metadados pode retornar os seguintes tipos de informações de metadados:
Property | Descrição | Obrigatório |
---|---|---|
Lista de campos | Os tipos de informações de metadados necessárias. Para obter detalhes sobre metadados suportados, consulte a seção Opções de metadados deste artigo. | Sim |
conjunto de dados | O conjunto de dados de referência cujos metadados devem ser recuperados pela atividade Obter Metadados. Consulte a seção Recursos para obter informações sobre conectores suportados. Consulte os tópicos específicos do conector para obter detalhes da sintaxe do conjunto de dados. | Sim |
formatConfigurações | Aplicar ao usar o conjunto de dados de tipo de formato. | Não |
storeSettings | Aplicar ao usar o conjunto de dados de tipo de formato. | Não |
Saída de exemplo
Os resultados Obter metadados são mostrados na saída da atividade. Seguem-se dois exemplos que mostram opções de metadados abrangentes. Para usar os resultados em uma atividade subsequente, use este padrão: @{activity('MyGetMetadataActivity').output.itemName}
.
Obter metadados de um ficheiro
{
"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
}
Obter metadados de uma pasta
{
"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"
}
]
}
Conteúdos relacionados
Saiba mais sobre outras atividades de fluxo de controle suportadas: