Process Mining
Más reciente
False
Imagen de fondo del banner
Process Mining
Última actualización 30 de abr. 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 pruebas en los datos.

seed

.csv archivos con los 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 en macros Jinja.

pm_utils

El paquete pm-utils contiene un conjunto de macros que se utilizan 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 archivos .yml que definen pruebas. Estos validan la estructura y el contenido de los datos previstos. Para obtener información detallada, consulta la documentación oficial de dbt en las 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 ofrece una introducción a dbt. Para obtener información más detallada, consulta la documentación oficial de dbt.

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 .
Encuentra 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 .

Was this page helpful?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Logotipo blanco de UiPath
Confianza y seguridad
© 2005-2024 UiPath. All rights reserved.