Actividad de filtro en canalizaciones de Azure Data Factory y Synapse Analytics
Puede usar una actividad de filtro en una canalización para aplicar una expresión de filtro a una matriz de entrada.
SE APLICA A: Azure Data Factory Azure Synapse Analytics
Sugerencia
Pruebe Data Factory en Microsoft Fabric, una solución de análisis todo en uno para empresas. Microsoft Fabric abarca todo, desde el movimiento de datos hasta la ciencia de datos, el análisis en tiempo real, la inteligencia empresarial y los informes. Obtenga información sobre cómo iniciar una nueva evaluación gratuita.
Sintaxis
{
"name": "MyFilterActivity",
"type": "filter",
"typeProperties": {
"condition": "<condition>",
"items": "<input array>"
}
}
Creación de una actividad de filtro con la interfaz de usuario
Para usar una actividad de filtro en una canalización, complete los pasos siguientes:
Puede usar cualquier variable de tipo de matriz o salidas de otras actividades como entrada para la condición de filtro. Para crear una variable de matriz, seleccione el fondo del lienzo de canalización y, luego, seleccione la pestaña Variables para agregar una variable de tipo de matriz como se muestra a continuación.
Busque Filtrar en el panel Actividades de canalización y arrastre una actividad de filtro al lienzo de canalización.
Seleccione la nueva actividad de filtro en el lienzo si aún no está seleccionada y su pestaña Configuración para editar sus detalles.
Seleccione el campo Elementos y, después, el vínculo Incorporación de contenido dinámico para abrir el panel del editor de contenido dinámico.
Seleccione la matriz de entrada que se va a filtrar en el editor de contenido dinámico. En este ejemplo, hemos seleccionado la variable creada en el primer paso.
Use de nuevo el editor de contenido dinámico para especificar una condición de filtro para la propiedad Condición, como se ha indicado anteriormente.
Puede usar la salida de la actividad de filtro como entrada para otras actividades como la actividad ForEach.
Propiedades de tipo
Propiedad | Descripción | Valores permitidos | Obligatorio |
---|---|---|---|
name | Nombre de la actividad Filter . |
String | Sí |
type | Se debe establecer en filter. | String | Sí |
condición | Condición que se usará para filtrar la entrada. | Expression | Yes |
items | Matriz de entrada en la que se debe aplicar el filtro. | Expression | Sí |
Ejemplo
En este ejemplo, la canalización tiene dos actividades: Filtro y Para cada uno. La actividad de filtro está configurada para filtrar la matriz de entrada correspondiente a los elementos con un valor mayor que 3. La actividad "Para cada uno" recorre en iteración los valores filtrados y establece la variable test en el valor actual.
{
"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": []
}
}
Contenido relacionado
Vea otras actividades de flujo de control admitidas: