DCM Projects para pipelines de dados¶
Os DCM Projects oferecem uma experiência de desenvolvedor de ciclo de vida completo que inclui recursos adaptados para gerenciar pipelines de dados.
Os comandos específicos do pipeline não se aplicam a todos os tipos de objetos. Eles estendem os comandos principais aos seguintes casos de uso de pipeline:
Comando REFRESH para tabelas dinâmicas gerenciado por um DCM project.
Comando TEST para expectativas de qualidade de dados anexado a objetos gerenciados.
Comando PREVIEW para verificar a saída de amostra de uma tabela dinâmica, exibição ou tabela antes da implantação.
Comando REFRESH para tabelas dinâmicas¶
Depois de implantar uma alteração de definição de pipeline, você poderá atualizar as tabelas dinâmicas dentro do projeto de pipeline antes de testar as expectativas de qualidade de dados, de modo que qualquer nova lógica de transformação seja aplicada de ponta a ponta.
Você pode atualizar todas as tabelas dinâmicas gerenciadas pelo DCM project e as respectivas tabelas dinâmicas upstream necessárias com um comando. Esse comando se aplica somente a tabelas dinâmicas implantadas e gerenciadas pelo projeto referenciado, independentemente dos arquivos de definição. Outros tipos de objetos, como tarefas, não são afetados.
Consulte Comando TEST para expectativas de qualidade de dados para ver exemplos de uso que combinam REFRESH e TEST.
O comando é executado até que todas as atualizações da tabela dinâmica sejam concluídas e retorna um resumo das alterações ou dos erros de linha para cada tabela dinâmica.
Para executar o comando REFRESH:
A saída JSON contém os resultados da operação de atualização da tabela dinâmica no seguinte formato:
Propriedade |
Descrição |
|---|---|
|
Contém os resultados da operação de atualização da tabela dinâmica. |
|
Uma matriz de entradas, uma para cada tabela dinâmica que foi atualizada. |
|
Nome totalmente qualificado da tabela dinâmica que foi atualizada. |
|
Estatísticas de atualização da tabela. |
|
Número de linhas inseridas durante a atualização. |
|
Número de linhas excluídas durante a atualização. |
|
Carimbo de data/hora ISO 8601 que representa a atualização pontual dos dados após a atualização. |
Um exemplo de saída JSON para uma atualização de tabela dinâmica:
Comando TEST para expectativas de qualidade de dados¶
Você pode definir expectativas de qualidade de dados como portões de qualidade em todos os estágios da sua transformação de dados:
Anexe as expectativas aos dados brutos nas tabelas de destino na camada bronze para garantir que a entrada bruta atenda às expectativas e não cause erros durante a transformação.
Anexe as expectativas como portões de qualidade à camada prata para facilitar a depuração de problemas de dados, incluindo pontos de verificação em diferentes estágios da transformação.
Anexe as expectativas à camada ouro para garantir a qualidade da saída do produto de dados.
Anexe as expectativas dos consumidores downstream do seu produto de dados à camada ouro para que você possa validá-las antes de implantar alterações interruptivas.
Consulte Função de métrica de dados sobre como anexar expectativas a projetos DCM.
Você pode testar todas as expectativas de qualidade de dados anexadas a tabelas, tabelas dinâmicas ou exibições gerenciadas pelo DCM project com um comando.
As funções de métrica de dados anexadas sem expectativas não são verificadas.
Você pode usar os comandos CLI para configurar testes automatizados como parte do fluxo de trabalho de CI/CD. Por exemplo, se você tem dados do tipo de produção em um QA, teste ou ambiente de preparação, pode seguir estas etapas:
PLAN em QA para verificar as alterações esperadas na definição do projeto.
DEPLOY para QA.
REFRESH ALL nas tabelas dinâmicas em QA para atualizar dados com base em qualquer lógica de transformação nova e definições atualizadas, de modo que as expectativas não sejam testadas com dados desatualizados.
TEST ALL nas expectativas de qualidade de dados anexadas a objetos de tabela no ambiente QA para verificar se a lógica recém-implantada funciona como esperado e não tem efeitos colaterais negativos na forma esperada da saída de dados.
Se todas as expectativas forem atendidas em QA, continue com PLAN e DEPLOY em seu ambiente de produção.
Para executar o comando TEST:
A saída de TEST contém o status geral e as expectativas com os valores no seguinte formato:
Importante
Durante a fase de versão preliminar, o formato da saída exato pode mudar.
Propriedade |
Descrição |
|---|---|
|
Resultado geral da execução do teste. Valores possíveis: |
|
Uma matriz de resultados de expectativa, um para cada expectativa de qualidade de dados avaliada. |
|
Nome totalmente qualificado da tabela ou exibição na qual a expectativa foi avaliada. |
|
Banco de dados com a função de métrica de dados. |
|
Esquema com a função de métrica de dados. |
|
Nome da função de métrica de dados (por exemplo, |
|
Nome da expectativa conforme definido no projeto. |
|
Expressão booliana usada como base para o valor da métrica avaliado (por exemplo, |
|
O resultado da avaliação da função de métrica de dados. Presente somente quando |
|
Se a expectativa foi violada. |
|
Uma matriz de nomes de colunas em que a função de métrica de dados foi avaliada. |
Um exemplo de saída JSON de um teste de qualidade de dados:
Comando PREVIEW¶
Quando você escreve ou altera a instrução SELECT de uma tabela dinâmica ou exibição, uma saída de amostra ajuda a validar a forma dos dados. Para gráficos de linhagem complexos com várias etapas de transformação, você pode verificar a saída de uma exibição downstream ou tabela dinâmica ao fazer alterações upstream.
Para validar se a transformação em seu código resulta na saída de dados esperada antes da implantação, execute o comando PREVIEW.
O comando PREVIEW executa PLAN para compilar as definições atuais, independentemente do estado implantado, e depois retorna uma amostra de dados para uma tabela dinâmica, exibição ou tabela regular especificada.
Tenha em mente os seguintes requisitos e considerações:
O comando PREVIEW deve sempre fazer referência a um nome totalmente qualificado de um objeto de tabela, sem variáveis Jinja.
Para ver os dados de amostra na saída, é necessário garantir que os dados já estejam disponíveis nas tabelas de origem.
PREVIEW consulta todas as instruções SELECT das tabelas dinâmicas e exibições referenciadas, mas não executa tarefas ou instruções CREATE TABLE AS SELECT.
Para executar o comando PREVIEW: