Filtrar atividades no Azure Data Factory e no Synapse Analytics pipelines
Você pode usar uma atividade de filtro em um pipeline para aplicar uma expressão de filtro para uma matriz de entrada.
APLICA-SE A: Azure Data Factory Azure Synapse Analytics
Dica
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!
Syntax
{
"name": "MyFilterActivity",
"type": "filter",
"typeProperties": {
"condition": "<condition>",
"items": "<input array>"
}
}
Criar uma atividade de filtro com interface do usuário
Para usar uma atividade Filter em um pipeline, siga estas etapas:
Você pode usar qualquer variável de tipo de matriz ou as saídas de outras atividades como a entrada para a atividade de filtro. Para criar uma variável de matriz, selecione a tela de fundo da tela do pipeline e, em seguida, selecione a guia Variáveis para adicionar uma variável de tipo de matriz, conforme mostrado abaixo.
Procure Filter no painel Atividades do pipeline e arraste uma atividade de filtro para a tela do pipeline.
Selecione a nova atividade Filter na tela, se ainda não estiver selecionada, e a guia Configurações para editar os detalhes.
Selecione o campo Itens e, em seguida, o link Adicionar conteúdo dinâmico para abrir o painel do editor de conteúdo dinâmico.
Selecione a matriz de entrada a ser filtrada no editor de conteúdo dinâmico. Neste exemplo, selecionamos a variável criada na primeira etapa.
Use o editor de conteúdo dinâmico novamente para especificar uma condição de filtro para a propriedade Condition, conforme mostrado acima.
Você pode usar a saída da atividade de filtro como uma entrada para outras atividades, como a atividade ForEach.
Propriedades de tipo
Propriedade | Descrição | Valores permitidos | Obrigatório |
---|---|---|---|
name | Nome da atividade Filter . |
String | Sim |
type | Deve ser definido como filtro | String | Sim |
condition | Condição a ser usada para filtragem de entrada. | Expression | Yes |
itens | Matriz de entrada na qual o filtro deve ser aplicado. | Expression | Sim |
Exemplo
Neste exemplo, o pipeline tem duas atividades: Filter e Foreach. A atividade de filtro está configurada para filtrar a matriz de entrada de itens com um valor maior que 3. A atividade ForEach itera por meio dos valores filtrados e define a variável teste para o valor atual.
{
"name": "PipelineName",
"properties": {
"activities": [{
"name": "MyFilterActivity",
"type": "filter",
"typeProperties": {
"condition": "@greater(item(),3)",
"items": "@pipeline().parameters.inputs"
}
},
{
"name": "MyForEach",
"type": "ForEach",
"dependsOn": [
{
"activity": "MyFilterActivity",
"dependencyConditions": [
"Succeeded"
]
}
],
"userProperties": [],
"typeProperties": {
"items": {
"value": "@activity('MyFilterActivity').output.value",
"type": "Expression"
},
"isSequential": "false",
"batchCount": 1,
"activities": [
{
"name": "Set Variable1",
"type": "SetVariable",
"dependsOn": [],
"userProperties": [],
"typeProperties": {
"variableName": "test",
"value": {
"value": "@string(item())",
"type": "Expression"
}
}
}
]
}
}],
"parameters": {
"inputs": {
"type": "Array",
"defaultValue": [1, 2, 3, 4, 5, 6]
}
},
"variables": {
"test": {
"type": "String"
}
},
"annotations": []
}
}
Conteúdo relacionado
Veja outras atividades de fluxo de controle com suporte: