process-mining
2024.10
true
UiPath logo, featuring letters U and I in white
Process Mining
Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated 11 de nov. de 2024

Transformaciones

Folder structure

Las transformaciones de una aplicación de proceso consisten en un proyecto dbt . A continuación se muestra una descripción del contenido de una carpeta de proyecto dbt .

Carpeta/Archivo

Contiene

dbt_packages\

el paquete pm_utils y sus macros.

logs\

registros creados al ejecutar dbt.

macros\

macros personalizadas.

models\

.sql archivos que definen las transformaciones.

models\schema\

.yml archivos que definen las pruebas en los datos.

seed

Archivos.csv con ajustes de configuración.

dbt_project.yml

la configuración del proyecto dbt.

Consulta la siguiente ilustración.



dbt_project.yml

El archivo dbt_project.yml contiene la configuración del proyecto dbt que define sus transformaciones. La sección vars contiene variables que se usan en las transformaciones.

Formato de fecha / hora

Cada plantilla de aplicación contiene variables que determinan el formato para analizar los datos de fecha / hora. Estas variables deben ajustarse si los datos de entrada tienen un formato de fecha / hora diferente al esperado.

Transformaciones de datos

Las transformaciones de datos se definen en archivos .sql en el directorio models\ . Las transformaciones de datos están organizadas en un conjunto estándar de subdirectorios:
  • 1_input:
  • 2_entities:
  • 3_events:
  • 4_event_logs:
  • 5_business_logic.
Los archivos .sql están escritos en Jinja SQL, lo que te permite insertar instrucciones Jinja dentro de consultas SQL simples. Cuando dbt ejecuta todos los archivos .sql , cada archivo .sql da como resultado una nueva vista o tabla en la base de datos.
Normalmente, los archivos .sql tienen la siguiente estructura:
  1. Con instrucciones: una o más instrucciones con para incluir las tablas secundarias necesarias.

    • {{ ref(‘My_table) }} se refiere a la tabla definida por otro archivo .sql archivo.
    • {{ source(var("schema_sources"), 'My_table') }} se refiere a una tabla de entrada.
  2. Consulta principal: la consulta que define la nueva tabla.
  3. Consulta final: normalmente se utiliza una consulta como Select * from table al final. Esto facilita hacer subelecciones durante la depuración.
    docs image

Para obtener más consejos sobre cómo escribir transformaciones de forma efectiva, consulta Consejos para escribir SQL.

Adding source tables

Para añadir una nueva tabla de origen al proyecto dbt , debe aparecer en models\schema\sources.yml. De esta manera, otros modelos pueden referirse a ella usando {{ source(var("schema_sources"), 'My_table') }}. Consulta la siguiente ilustración para ver un ejemplo.


Importante: Cada tabla de origen nueva debe aparecer en sources.yml.

Para obtener más información sobre el uso de tablas de origen en las consultas, consulta Estructura de las transformaciones:1. Entrada. Para obtener más información detallada, consulta la documentación oficial de dbt en Fuentes.

Data output

Las transformaciones de datos deben generar el modelo de datos que requiere la aplicación correspondiente; todas las tablas y campos esperados deben estar presentes.

En la práctica, esto significa que las tablas de models\5_business_logic no deben eliminarse. Además, los campos de salida de las consultas correspondientes no se deben eliminar.

Si quieres añadir nuevos campos a tu aplicación de proceso, puedes añadir estos campos en las transformaciones.

Consejo:
Puedes utilizar los comandos dbt docs para generar un sitio de documentación para el proyecto dbt y abrirlo en tu explorador predeterminado. El sitio de documentación también contiene un gráfico de linaje que proporciona un diagrama de relación de entidad con una representación gráfica de la vinculación entre cada tabla de datos de tu proyecto.
Para obtener información detallada, consulta la documentación oficial de dbt en dbt docs.

Macros

Las macros facilitan la reutilización de construcciones SQL comunes. Para obtener información detallada, consulta la documentación oficial de dbt sobre macros Jinja.

pm_utils

El paquete pm-utils contiene un conjunto de macros que se usan normalmente en las transformaciones de Process Mining. Para obtener más información sobre las macros pm_utils , consulta ProcessMining-pm-utils.
A continuación se muestra un ejemplo de código Jinja que llama a la macro pm_utils.optional() .


Semillas

Las semillas son archivos csv que se utilizan para añadir tablas de datos a tus transformaciones. Para obtener información detallada, consulta la documentación oficial de dbt sobre semillas de jinja.

En Process Mining, esto se usa normalmente para facilitar la configuración de las asignaciones en tus transformaciones.

Después de editar los archivos de inicialización, estos archivos no se actualizan automáticamente en la base de datos de forma inmediata. Para indicar a dbt que cargue el contenido del nuevo archivo de inicialización en la base de datos, ejecute

  • dbt seed , que solo actualizará las tablas de archivos de inicialización, o
  • dbt build , que también ejecutará todos los modelos y pruebas.
    Nota: si el archivo de inicialización no tenía registros de datos inicialmente, es posible que los tipos de datos de la base de datos no se hayan configurado correctamente. Para solucionar este problema, llama a run dbt seed --full-refresh. Esto también actualizará el conjunto de columnas en la base de datos.

Activity configuration

El archivo activity_configuration.csv se usa para establecer campos adicionales relacionados con las actividades. activity_order se usa como desempate cuando dos eventos ocurren en la misma marca de tiempo. Consulta la siguiente ilustración para ver un ejemplo.


Pruebas

La carpeta models\schema\ contiene un conjunto de .yml archivos que definen las pruebas. Validan la estructura y el contenido de los datos esperados. Para obtener información detallada, consulta la documentación oficial de dbt sobre pruebas.
Cuando las transformaciones se ejecutan en Process Mining, solo se ejecutan las pruebas en sources.yml en cada ingestión de datos. Esto se hace para comprobar si los datos de entrada tienen el formato correcto.
Nota: al editar transformaciones, asegúrate de actualizar las pruebas en consecuencia. Las pruebas pueden eliminarse si se desea.

Proyectos Dbt

Las transformaciones de datos se utilizan para transformar los datos de entrada en datos adecuados para Process Mining. Las transformaciones en Process Mining se escriben como proyectos dbt .

Esta página le ofrece una introducción a dbt. Para obtener información más detallada, consulta la documentación oficial dela base de datos.

pm-utils package

Las plantillas de la aplicación Process Mining vienen con un paquete dbt llamado pm_utils. Este paquete pm-utils contiene funciones de utilidad y macros para proyectos dbt de Process Mining. Para obtener más información sobre pm_utils , consulta ProcessMining-pm-utils.

Actualizar la versión de pm-utils utilizada para la plantilla de su aplicación

UiPath® mejora constantemente el paquete pm-utils añadiendo nuevas funciones.
Cuando se lanza una nueva versión del paquete pm-utils , se recomienda actualizar la versión utilizada en tus transformaciones, para asegurarte de que utilizas las últimas funciones y macros del paquete pm-utils .
Encontrarás el número de versión de la última versión del paquete pm-utils en el panel Versiones de ProcessMining-pm-utils.
Siga estos pasos para actualizar la versión pm-utils en sus transformaciones.
  1. Descarga el código fuente (zip) de la versión de pm-utils.
  2. Extrae el archivo zip y cámbiale el nombre a la carpeta pm_utils.
  3. Exporta las transformaciones desde el editor de transformaciones de datos en línea y extrae los archivos.

  4. Reemplaza la carpeta pm_utils de las transformaciones exportadas con la nueva carpeta pm_utils .

  5. Vuelve a comprimir el contenido de las transformaciones e impórtalo en el editor de Transformaciones de datos .

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.