Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
APLICA-SE A:
Azure Data Factory
Azure Synapse Analytics
Dica
Data Factory no Microsoft Fabric é a próxima geração de Azure Data Factory, com uma arquitetura mais simples, IA interna e novos recursos. Se você não estiver familiarizado com a integração de dados, comece com Fabric Data Factory. As cargas de trabalho existentes do ADF podem ser atualizadas para Fabric para acessar novos recursos em ciência de dados, análise em tempo real e relatórios.
No paradigma de pipeline de chamada/pipeline filho, você pode usar a atividade Definir Variável para retornar valores do pipeline filho para o pipeline de chamada. No cenário a seguir, temos um pipeline filho por meio da atividade Executar Pipeline. Desejamos recuperar as informações do pipeline filho para usá-las no pipeline de chamada.
Introduza o valor retornado do pipeline, um dicionário de pares chave-valor, que permite comunicações entre pipelines filho e o pipeline pai.
Pré-requisito – Como chamar um pipeline filho
Como pré-requisito, seu design precisa de uma atividade Execute Pipeline chamando um pipeline filho, com Aguardar a Conclusão habilitado na atividade.
Configurar o valor retornado do pipeline no pipeline filho
Expandimos a atividade Definir Variável para incluir as variáveis do sistema Valor Retornado do Pipeline. Você não precisa defini-los no nível do pipeline (ao contrário de quaisquer outras variáveis que você usa no pipeline).
- Pesquise Definir Variável no painel Atividades do pipeline e arraste uma Atividade Definir Variável na tela do pipeline.
- Selecione a atividade Definir Variável na tela, se ela ainda não estiver selecionada, e depois sua guia Variáveis, para editar seus detalhes.
- Escolha Valor retornado do pipeline como o tipo de variável.
- Escolha Novo para adicionar um novo par chave-valor.
- O número de pares chave-valor que podem ser adicionados é limitado apenas pelo limite de tamanho do JSON retornado (4 MB).
Há algumas opções para tipos de valores, incluindo
| Nome do Tipo | Descrição |
|---|---|
| String | Um valor de cadeia de caracteres constante. por exemplo: 'ADF é incrível' |
| Expressão | Ele permite que você referencie a saída das atividades anteriores. Você pode usar a interpolação de cadeia de caracteres aqui para incluir valores de expressão em linha, como "The value is @{guid()}". |
| Array | Ele espera uma matriz de valores de cadeia de caracteres. Pressione a tecla "ENTER" para separar os valores na matriz |
| booleano | Verdadeiro ou Falso |
| Null | Status do espaço reservado de sinal. O valor é um nulo constante |
| Int | Um valor numérico do tipo inteiro. Por exemplo: 42 |
| Float | Um valor numérico do tipo float. Por exemplo: 2.71828 |
| Objeto | Aviso: somente casos de uso complicados. Ele permite que você insira uma lista de tipos de pares chave-valor para o valor |
O valor do tipo de objeto é definido da seguinte maneira:
[{"key": "myKey1", "value": {"type": "String", "content": "hello world"}},
{"key": "myKey2", "value": {"type": "String", "content": "hi"}}
]
Como recuperar o valor no pipeline de chamada
O valor retornado do pipeline filho do pipeline passa a ser a saída da atividade Executar Pipeline. Você pode recuperar as informações com @activity('Execute Pipeline1').output.pipelineReturnValue.keyName. O caso de uso é ilimitado. Por exemplo, você poderá usar
- Um valor int do pipeline filho para definir o período de espera para uma atividade de espera.
- Um valor string para definir a URL para a atividade da Internet.
- Um conteúdo de valor de expressão para uma atividade de script para fins de log.
Há duas notificações importantes na referência dos valores retornados do pipeline.
- Com o tipo Object, você pode expandi-lo ainda mais para o objeto JSON aninhado, como @activity('Execute Pipeline1').output.pipelineReturnValue.keyName.nextLevelKey
- Com o tipo Array, você pode especificar o índice na lista, com @activity('Execute Pipeline1').output.pipelineReturnValue.keyName[0]. O número é zero indexado, o que significa que ele começa com 0.
Observação
Verifique se o keyName que você está referenciando existe no pipeline filho. O construtor de expressões do ADF não pode confirmar a verificação referencial para você. O Pipeline falhará se a chave referenciada estiver ausente no conteúdo
Considerações especiais
Embora você possa incluir várias atividades Definir Valor de Retorno do Pipeline em um pipeline, é importante garantir que apenas uma delas seja executada no pipeline.
Para evitar o problema de chave ausente descrito anteriormente ao chamar o pipeline, incentivamos você a ter a mesma lista de chaves para todas as ramificações no pipeline filho. Considere o uso de tipos nulos para as chaves que não têm valores em um ramo específico.
A linguagem de expressão Azure Data Factory não dá suporte diretamente a objetos JSON embutidos. Em vez disso, é necessário concatenar cadeias de caracteres e expressões corretamente.
Por exemplo, para a seguinte expressão JSON:
{ "datetime": "@{utcnow()}", "date": "@{substring(utcnow(),0,10)}", "year": "@{substring(utcnow(),0,4)}", "month": "@{substring(utcnow(),5,2)}", "day": "@{substring(utcnow(),8,2)}" }Uma expressão de Azure Data Factory equivalente seria:
@{ concat( '{', '"datetime": "', utcnow(), '", ', '"date": "', substring(utcnow(),0,10), '", ', '"year": "', substring(utcnow(),0,4), '", ', '"month": "', substring(utcnow(),5,2), '", ', '"day": "', substring(utcnow(),8,2), '"', '}' ) }
Conteúdo relacionado
Saiba mais sobre outra atividade de fluxo de controle relacionada: