Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 más información sobre cómo iniciar una nueva evaluación gratuita!
Nota:
El Administrador de orquestación de flujo de trabajo cuenta con la tecnología de Apache Airflow.
En este artículo se documentan las API REST para el entorno de ejecución de integración de Workflow Orchestration Manager de Azure Data Factory.
Nota:
El administrador de orquestación de flujo de trabajo para Azure Data Factory se basa en la aplicación Apache Airflow de código abierto. Puede encontrar documentación y más tutoriales para Airflow en las páginas de Documentación o la Comunidad de Airflow de Apache.
Crear un nuevo entorno
Método: PUT
URL:
https://management.azure.com/subscriptions/<subscriptionid>/resourcegroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<datafactoryName>/integrationruntimes/<airflowEnvName>?api-version=2018-06-01
Parámetros de URI:
Nombre En Obligatorio Tipo Descripción Id. de suscripción path True cadena Identificador de suscripción. Nombre del grupo de recursos path True cadena Nombre del grupo de recursos (patrón Regex: ^[-\w\._\(\)]+$
)dataFactoryName path True string Nombre de la instancia de Azure Data Factory (patrón Regex: ^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$
airflowEnvName path True string Nombre del entorno del Administrador de orquestación de flujo de trabajo Versión de API Query True cadena Versión de API Cuerpo de la solicitud (configuración de Airflow)::
Nombre Escribir Descripción name cadena Nombre del entorno de Airflow properties propertyType Propiedades de configuración para el entorno Tipo de propiedad:
Nombre Escribir Descripción Tipo cadena Tipo de recurso (Airflow en este escenario) typeProperties typeProperty Flujo de aire Propiedad Type:
Nombre Escribir Descripción computeProperties computeProperty Configuración del tipo de proceso usado para el entorno airflowProperties airflowProperty Configuración de las propiedades de Airflow para el entorno Propiedad Compute:
Nombre Escribir Descripción ubicación string La ubicación del entorno de ejecución de integración de Airflow tiene como valor predeterminado la región de la factoría de datos. Para crear un entorno de ejecución de integración en otra región, cree una nueva factoría de datos en la región necesaria. computeSize cadena Tamaño del nodo de proceso en el que desea que se ejecute el entorno de Airflow. Algunos ejemplos son Grande o Pequeño. Se asignan inicialmente tres nodos. extraNodes integer Cada nodo adicional agrega tres trabajos más. Propiedad Airflow:
Nombre Escribir Descripción airflowVersion string Versión actual de Airflow. Por ejemplo, 2.4.3. airflowRequirements Matriz<cadena> Bibliotecas de Python que desea usar. Por ejemplo: ["flask-bcrypy=0.7.1"]. Puede ser una lista delimitada por comas. airflowEnvironmentVariables Objeto (par clave-valor) Variables de entorno que desea usar. Por ejemplo: { “SAMPLE_ENV_NAME”: “test” }. gitSyncProperties gitSyncProperty Propiedades de configuración de Git. enableAADIntegration boolean Permite que Microsoft Entra ID inicie sesión en Airflow. userName cadena o null Nombre de usuario para Autenticación básica. password cadena o null Contraseña para Autenticación básica. Propiedad de sincronización de Git:
Nombre Escribir Descripción gitServiceType string El servicio Git en el que se encuentra el repositorio deseado. Los valores son GitHub, ADO, GitLab o Bitbucket. gitCredentialType cadena Tipo de credencial de Git. Los valores son PAT (para el token de acceso personal) y Ninguno. repo string Vínculo del repositorio. branch string Rama que se va a usar en el repositorio. username string Nombre de usuario de GitHub. Credential: string Valor del PAT. Respuestas:
Nombre status code Tipo Descripción Aceptado 200 Factory OK (CORRECTO) No autorizado 401 Error en la nube Matriz con más detalles de error
Importación de DAG
Método: POST
URL:
https://management.azure.com/subscriptions/<subscriptionid>/resourcegroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<dataFactoryName>/airflow/sync?api-version=2018-06-01
Cuerpo de la solicitud:
Nombre Escribir Descripción IntegrationRuntimeName string Nombre del entorno de Airflow. LinkedServiceName string Nombre de la cuenta de Azure Blob Storage donde se encuentran los DAG que se van a importar. StorageFolderPath string Ruta de acceso a la carpeta de Azure Blob Storage con los DAG. Sobrescribir boolean Sobrescriba los DAG existentes (Default=True). CopyFolderStructure boolean Controla si la estructura de carpetas se copia o no. AddRequirementsFromFile boolean Adición de requisitos de los archivos DAG Respuestas:
Nombre status code Tipo Descripción Aceptado 200 Factory OK (CORRECTO) No autorizado 401 Error en la nube Matriz con más detalles de error
Ejemplos
Consulte los siguientes ejemplos.
Creación de un nuevo entorno mediante las API REST
Solicitud de ejemplo:
HTTP
PUT https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/abnarain-rg/providers/Microsoft.DataFactory/factories/ambika-df/integrationruntimes/sample-2?api-version=2018-06-01
Cuerpo de ejemplo:
{
"name": "sample-2",
"properties": {
"type": "Airflow",
"typeProperties": {
"computeProperties": {
"location": "East US",
"computeSize": "Large",
"extraNodes": 0
},
"airflowProperties": {
"airflowVersion": "2.4.3",
"airflowEnvironmentVariables": {
"AIRFLOW__TEST__TEST": "test"
},
"airflowRequirements": [
"apache-airflow-providers-microsoft-azure"
],
"enableAADIntegration": true,
"userName": null,
"password": null,
"airflowEntityReferences": []
}
}
}
}
Respuesta de ejemplo:
Status code: 200 OK
Cuerpo de la respuesta:
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/your-rg/providers/Microsoft.DataFactory/factories/your-df/integrationruntimes/sample-2",
"name": "sample-2",
"type": "Microsoft.DataFactory/factories/integrationruntimes",
"properties": {
"type": "Airflow",
"typeProperties": {
"computeProperties": {
"location": "East US",
"computeSize": "Large",
"extraNodes": 0
},
"airflowProperties": {
"airflowVersion": "2.4.3",
"pythonVersion": "3.8",
"airflowEnvironmentVariables": {
"AIRFLOW__TEST__TEST": "test"
},
"airflowWebUrl": "https://e57f7409041692.eastus.airflow.svc.datafactory.azure.com/login/",
"airflowRequirements": [
"apache-airflow-providers-microsoft-azure"
],
"airflowEntityReferences": [],
"packageProviderPath": "plugins",
"enableAADIntegration": true,
"enableTriggers": false
}
},
"state": "Initial"
},
"etag": "3402279e-0000-0100-0000-64ecb1cb0000"
}
Importación de DAG
Solicitud de ejemplo:
HTTP
POST https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/your-rg/providers/Microsoft.DataFactory/factories/your-df/airflow/sync?api-version=2018-06-01
Cuerpo de ejemplo:
{
"IntegrationRuntimeName": "sample-2",
"LinkedServiceName": "AzureBlobStorage1",
"StorageFolderPath": "your-container/airflow",
"CopyFolderStructure": true,
"Overwrite": true,
"AddRequirementsFromFile": true
}
Respuesta de ejemplo:
Status Code: 202