- Notas de versão
- Antes de começar
- Introdução
- Gerenciamento de acesso
- Como trabalhar com aplicativos de processo
- Criação de apps de processo
- Carregamento de dados
- Carregamento de dados
- Retrieving the SQL Server database parameters
- Configuração de uma conta do SQL Server para upload de dados usando um extrator
- Loading data using Theobald Xtract Universal
- Requisitos do Sistema
- Configuração do DataBridgeAgent
- Configuring CData Sync
- Adição de um conector personalizado ao DataBridgeAgent
- Uso do DataBridgeAgent com o Conector SAP para o Acelerador de Descoberta Purchase-to-Pay
- Uso do DataBridgeAgent com o Conector SAP para o Acelerador de Descoberta Order-to-Cash
- Personalização de aplicativos de processo
- Transformações de dados
- ModeloUm modelo de aplicativo
- Modelo de aplicativo Purchase-to-Pay
- Modelo de aplicativo Order to Cash
- Basic troubleshooting guide
Editing transformations
As transformações de dados são usadas para transformar dados de entrada em dados adequados para o Process Mining. As transformações no Process Mining são escritas como projetos dbt .
Esta página apresenta uma introdução ao dbt. Para obter informações mais detalhadas, consulte a documentação oficial do dbt.
pm_utils
. Este pacote pm-utils
contém funções e macros de utilitário para projetos de dbt do Process Mining. Para obter mais informações sobre o pm_utils
, consulte ProcessMining-pm-utils.
pm-utils
, adicionando novas funções.
pm-utils
é lançada, é recomendável atualizar a versão usada em suas transformações para garantir que você esteja usando as funções e macros mais recentes do pacote pm-utils
.
pm-utils
no painel Versões do ProcessMining-pm-utils.
pm-utils
em suas transformações.
-
Baixe o código-fonte (zip) da versão de
pm-utils
. -
Extraia o arquivo
zip
e renomeie a pasta para pm_utils. -
Exporte as transformações do editor de transformações de dados embutidos e extraia os arquivos.
-
Substitua a pasta pm_utils das transformações exportadas pela nova pasta pm_utils .
-
Compacte o conteúdo das transformações novamente e importe-as no editor Transformações de dados .
As transformações de um aplicativo de processo consistem em um projeto dbt . Abaixo está uma descrição do conteúdo de uma pasta de projeto dbt .
Pasta/Arquivo |
Contém |
---|---|
|
o pacote
pm_utils e suas macros.
|
|
logs criados ao executar dbt. |
|
macros personalizadas. |
|
.sql arquivos que definem as transformações.
|
|
.yml arquivos que definem testes nos dados.
|
|
.csv arquivos com definições de configuração.
|
|
as configurações do projeto dbt. |
Veja o exemplo abaixo.
.sql
no diretório models\
. As transformações de dados são organizadas em um conjunto padrão de subdiretórios:
1_input
,2_entities
,3_events
,4_event_logs
,5_business_logic
.
Consulte Estrutura das transformações.
.sql
são escritos em SQL Jinja, o que permite inserir instruções Jinja dentro de consultas SQL simples. Quando dbt executa todos os arquivos .sql
, cada arquivo .sql
resulta em uma nova exibição ou tabela no banco de dados.
.sql
têm a seguinte estrutura:
-
Instruções With: Uma ou mais instruções with para incluir as subtabelas necessárias.
{{ ref(‘My_table) }}
refere-se à tabela definida por outro .sql arquivo.{{ source(var("schema_sources"), 'My_table') }}
refere-se a uma tabela de entrada.
- Consulta principal: a consulta que define a nova tabela.
-
Consulta final: Normalmente, uma consulta como
Select * from table
é usada no final. Isso facilita fazer subseleções durante a depuração.
Para obter mais dicas sobre como escrever transformações de forma eficaz, consulte Dicas para escrever SQL
models\schema\sources.yml
. Dessa forma, outros modelos podem se referir a ele usando {{ source(var("schema_sources"), 'My_table_raw') }}
. Veja a ilustração abaixo para um exemplo.
sources.yml
.
O sufixo _raw é adicionado aos nomes das tabelas das tabelas de origem ao carregar dados. Por exemplo, uma tabela chamada my_table deve ser referida como my_table_raw.
Para obter informações mais detalhadas, consulte a documentação oficial do dbt em Sources.
As transformações de dados devem gerar o modelo de dados exigido pelo aplicativo correspondente; cada tabela e campo esperados devem estar presentes.
models\5_business_logic
não devem ser excluídas. Além disso, os campos de saída nas consultas correspondentes não devem ser removidos.
Se você deseja adicionar novos campos ao seu aplicativo de processo, pode usar os campos personalizados que estão disponíveis para o aplicativo de processo. Mapeie os campos nas transformações para os campos personalizados para disponibilizá-los na saída. Certifique-se de que os campos personalizados sejam nomeados na saída conforme descrito no modelo de dados do aplicativo de processo.
dbt docs
para gerar um site de documentação para seu projeto dbt e abri-lo em seu navegador padrão. O site de documentação também contém um gráfico de linhagem que fornece um diagrama de relacionamento de entidade com uma representação gráfica da ligação entre cada tabela de dados em seu projeto.
dbt docs
.
As macros facilitam a reutilização de construções SQL comuns. Para obter informações detalhadas, consulte a documentação oficial do dbt sobre macros Jinja.
pm-utils
contém um conjunto de macros que são normalmente usados em transformações do Process Mining. Para obter mais informações sobre as macros pm_utils
, consulte ProcessMining-pm-utils.
pm_utils.optional()
.
csv
que são usados para adicionar tabelas de dados às suas transformações. Para informações detalhadas, consulte a documentação oficial do dbt sobre semente jinja.
Em Process Mining, isso é normalmente usado para facilitar a configuração de mapeamentos em suas transformações.
Depois de editar os arquivos seed, esses arquivos não são atualizados automaticamente no banco de dados imediatamente. Para instruir o dbt a carregar o novo conteúdo do arquivo seed no banco de dados, execute
dbt seed
- que atualizará apenas as tabelas do arquivo seed ou-
dbt build
- que também executará todos os modelos e testes.Nota: Se o arquivo seed não tiver registros de dados inicialmente, os tipos de dados no banco de dados podem não ter sido configurados corretamente. Para corrigir isso, chamerun dbt seed --full-refresh
. Isso também atualizará o conjunto de colunas no banco de dados.
models\schema\
contém um conjunto de arquivos .yml
que definem testes. Estes validam a estrutura e o conteúdo dos dados esperados. Para obter informações detalhadas, consulte a documentação oficial do dbt sobre testes.
sources.yml
são executados em cada ingestão de dados. Isso é feito para verificar se os dados de entrada estão formatados corretamente.