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

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:

EXECUTE DCM PROJECT DCM_DEMO.PROJECTS.DCM_PROJECT_STG
  REFRESH ALL;

Para conferir o formato de saída de REFRESH ALL, incluindo o esquema JSON e exemplos, consulte a seção da saída de REFRESH ALL na referência do comando EXECUTE DCM PROJECT.

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:

  1. PLAN em QA para verificar as alterações esperadas na definição do projeto.

  2. DEPLOY para QA.

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

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

  5. Se todas as expectativas forem atendidas em QA, continue com PLAN e DEPLOY em seu ambiente de produção.

Para executar o comando TEST:

EXECUTE DCM PROJECT DCM_DEMO.PROJECTS.DCM_PROJECT_STG
  TEST ALL;

Para conferir o formato de saída de TEST ALL, incluindo o esquema JSON e exemplos, consulte a seção da saída de TEST ALL na referência do comando EXECUTE DCM PROJECT.

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:

EXECUTE DCM PROJECT DCM_DEMO.PROJECTS.DCM_PROJECT_DEV
  PREVIEW
    DCM_PROJECT_DEV.SERVE.V_DASHBOARD_KPI_SUMMARY
  USING CONFIGURATION DEV
FROM
  'snow://workspace/USER$.PUBLIC.DEFAULT$/versions/live/DCM_Project_Quickstart_1'
  LIMIT 100;