Motor de ingesta independiente de datos
En este artículo se explica cómo puede implementar escenarios de motor de ingesta independiente de datos mediante una combinación de PowerApps, Azure Logic Apps y tareas de copia controladas por metadatos en Azure Data Factory.
Los escenarios del motor de ingesta independiente de datos suelen centrarse en permitir que los usuarios no técnicos (no ingenieros de datos) publiquen recursos de datos en Data Lake para su posterior procesamiento. Para implementar este escenario, debe tener funcionalidades de incorporación que habiliten:
- Registro de recursos de datos
- Captura de metadatos y aprovisionamiento de flujo de trabajo
- Programación de ingesta
Puede ver cómo interactúan estas funcionalidades:
Figura 1: Interacciones de las funcionalidades de registro de datos.
En el diagrama siguiente se muestra cómo implementar este proceso mediante una combinación de servicios de Azure:
Figura 2: Proceso de ingesta automatizada.
Registro de recursos de datos
Para proporcionar los metadatos utilizados para impulsar el procesamiento automático, necesita el registro de activos de datos. La información que captura contiene:
- Información técnica: Nombre del recurso de datos, sistema de origen, tipo, formato y frecuencia.
- Información de gobernanza: propietario, administradores, visibilidad (con fines de detección) y confidencialidad.
PowerApps se usa para capturar metadatos que describen cada recurso de datos. Use una aplicación controlada por modelos para escribir la información que se conserva en una tabla personalizada de Dataverse. Cuando los metadatos se crean o actualizan en Dataverse, desencadena un flujo de nube automatizada que invoca pasos de procesamiento adicionales.
Figura 3: Registro de recursos de datos.
Aprovisionamiento de flujo de trabajo o captura de metadatos
En la etapa de aprovisionamiento del flujo de trabajo, verificas y almacenas los datos recopilados en la fase de registro en el metastore. Se realizan los pasos de validación técnica y empresarial, entre los que se incluyen:
- Validación del flujo de datos de entrada
- El desencadenamiento del flujo de trabajo de aprobación.
- Procesamiento lógico para desencadenar la persistencia de metadatos en el almacén de metadatos
- Auditoría de actividad
Figura 4: Flujo de trabajo de registro.
Una vez aprobadas las solicitudes de ingesta, el flujo de trabajo utiliza la API REST de Microsoft Purview para incluir los orígenes en Microsoft Purview.
Flujo de trabajo detallado para la incorporación de productos de datos
Figura 5: Cómo se ingieren los nuevos conjuntos de datos (automatizados).
En la figura 5 se muestra el proceso de registro detallado para automatizar la ingesta de nuevos orígenes de datos:
- Los detalles de origen se registran, incluidos los entornos de producción y factoría de datos.
- Se capturan las restricciones de forma, formato y calidad de los datos.
- Los equipos de aplicaciones de datos deben indicar si los datos son confidenciales (datos personales), ya que esta clasificación impulsa el proceso durante el cual se crean carpetas del lago de datos para que se ingieran datos sin procesar, enriquecidos y organizados. El origen nombra los datos sin procesar y los datos enriquecidos, y el producto de datos nombra los datos seleccionados.
- La entidad de servicio y los grupos de seguridad se crean para ingerir y otorgar acceso a un conjunto de datos.
- Se crea un trabajo de ingesta en la zona de aterrizaje de datos del metastore de Data Factory.
- Una API inserta la definición de datos en Microsoft Purview.
- Sujeto a la validación del origen de datos y la aprobación del equipo de operaciones, los detalles se publican en un metastore de Data Factory.
Programación de ingesta
En Azure Data Factory, las tareas de copia controladas por metadatos proporcionan una funcionalidad que permite que las canalizaciones de orquestación se controlen mediante filas dentro de una tabla de control almacenada en Azure SQL Database. Puede usar la herramienta Copiar datos para crear previamente canalizaciones controladas por metadatos.
Una vez creada una canalización, el flujo de trabajo de aprovisionamiento agrega entradas a la Tabla de Control para admitir la ingesta de orígenes identificados por los metadatos de registro de activos de datos. Tanto las canalizaciones de Azure Data Factory como la instancia de Azure SQL Database que contiene el metastore de la tabla de control pueden existir dentro de cada zona de aterrizaje de datos para la creación de orígenes de datos y su ingesta en zonas de aterrizaje de datos.
Figura 6: Programación de la ingesta de recursos de datos.
Flujo de trabajo detallado para ingerir nuevos orígenes de datos
En el diagrama siguiente se muestra cómo extraer orígenes de datos registrados en un metastore de SQL Database de Data Factory y cómo se ingieren los datos por primera vez:
La canalización maestra de la ingesta de Data Factory lee las configuraciones de un metastore de SQL Database de Data Factory y se ejecuta de forma iterativa con los parámetros correctos. Los datos viajan desde el origen a la capa sin procesar en Azure Data Lake con poco o ningún cambio. La forma de los datos se valida en función del metastore de Data Factory. Los formatos de archivo se convierten en formatos Apache Parquet o Avro y, a continuación, se copian en la capa enriquecida.
Los datos ingeridos se conectan a un área de trabajo de ingeniería y ciencia de datos de Azure Databricks y se crea una definición de los datos dentro del metastore de Apache Hive de la zona de aterrizaje de los datos.
Si necesita usar un grupo de SQL sin servidor de Azure Synapse para exponer datos, la solución personalizada debe crear vistas sobre los datos del lago.
Si necesita cifrado a nivel de fila o columna, su solución personalizada debe almacenar los datos en su almacén de datos y, a continuación, ingresar los datos directamente en las tablas internas de los grupos de SQL y configurar la seguridad adecuada en los recursos de cómputo de los grupos de SQL.
Metadatos capturados
Al usar la ingesta de datos automatizada, puede consultar los metadatos asociados y crear paneles para:
- Realice un seguimiento de los trabajos y las marcas de tiempo de carga de datos más recientes para los productos de datos relacionados con sus funciones.
- Realizar un seguimiento de los productos de datos disponibles.
- Aumentar volúmenes de datos.
- Obtenga actualizaciones en tiempo real sobre errores de trabajo.
Los metadatos operativos se pueden usar para realizar el seguimiento de:
- Trabajos, pasos de trabajos y sus dependencias.
- Historial de rendimiento y desempeño laboral.
- Crecimiento del volumen de datos.
- Errores de trabajo.
- Cambios en los metadatos de origen.
- Funciones empresariales que dependen de los productos de datos.
Uso de la API REST de Microsoft Purview para detectar datos
Las API REST de Microsoft Purview deben usarse para registrar datos durante la ingesta inicial. Puede usar las API para enviar datos al catálogo de datos poco después de la ingesta.
Para obtener más información, consulte cómo usar las API REST de Microsoft Purview.
Registro de orígenes de datos
Use la siguiente llamada API para registrar nuevos orígenes de datos:
PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}
parámetros de URI para el origen de datos:
Nombre | Obligatorio | Tipo | Descripción |
---|---|---|---|
accountName |
Verdadero | Cuerda | Nombre de la cuenta de Microsoft Purview |
dataSourceName |
Verdadero | Cuerda | Nombre del origen de datos |
Uso de la API REST de Microsoft Purview para el registro
En los ejemplos siguientes se muestra cómo usar la API rest de Microsoft Purview para registrar orígenes de datos con cargas:
Registrar un origen de datos de Azure Data Lake Storage Gen2:
{
"kind":"AdlsGen2",
"name":"<source-name> (for example, My-AzureDataLakeStorage)",
"properties":{
"endpoint":"<endpoint> (for example, https://adls-account.dfs.core.windows.net/)",
"subscriptionId":"<azure-subscription-guid>",
"resourceGroup":"<resource-group>",
"location":"<region>",
"parentCollection":{
"type":"DataSourceReference",
"referenceName":"<collection-name>"
}
}
}
Registrar un origen de datos de SQL Database:
{
"kind":"<source-kind> (for example, AdlsGen2)",
"name":"<source-name> (for example, My-AzureSQLDatabase)",
"properties":{
"serverEndpoint":"<server-endpoint> (for example, sqlservername.database.windows.net)",
"subscriptionId":"<azure-subscription-guid>",
"resourceGroup":"<resource-group>",
"location":"<region>",
"parentCollection":{
"type":"DataSourceReference",
"referenceName":"<collection-name>"
}
}
}
Nota
<collection-name>
es una colección actual que existe en una cuenta de Microsoft Purview.
Crear un escaneo
Aprenda a crear credenciales para autenticar orígenes en Microsoft Purview antes de configurar y ejecutar un examen.
Use la siguiente llamada API para examinar orígenes de datos:
PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/
Parámetros URI para un examen:
Nombre | Obligatorio | Tipo | Descripción |
---|---|---|---|
accountName |
Verdadero | Cuerda | Nombre de la cuenta de Microsoft Purview |
dataSourceName |
Verdadero | Cuerda | Nombre del origen de datos |
newScanName |
Verdadero | Cuerda | Nombre del nuevo escaneo |
Utilice la API REST de Microsoft Purview para el escaneo
En los ejemplos siguientes se muestra cómo puede usar la API REST de Microsoft Purview para examinar orígenes de datos con cargas:
Examen de un origen de datos de Azure Data Lake Storage Gen2:
{
"name":"<scan-name>",
"kind":"AdlsGen2Msi",
"properties":
{
"scanRulesetType":"System",
"scanRulesetName":"AdlsGen2"
}
}
Examinar un origen de datos de SQL Database:
{
"name":"<scan-name>",
"kind":"AzureSqlDatabaseMsi",
"properties":
{
"scanRulesetType":"System",
"scanRulesetName":"AzureSqlDatabase",
"databaseName": "<database-name>",
"serverEndpoint": "<server-endpoint> (for example, sqlservername.database.windows.net)"
}
}
Use la siguiente llamada API para examinar orígenes de datos:
POST https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/run