Explore, solucione problemas e verifique a assimilação em lote com o SQL
Este documento explica como verificar e validar registros em lotes assimilados com o SQL. Este documento ensina como:
- Acessar metadados em lote do conjunto de dados
- Solucionar problemas e garantir a integridade dos dados consultando lotes
Pré-requisitos
Para ajudar na compreensão dos conceitos discutidos neste documento, você deve ter conhecimento dos seguintes tópicos:
- Assimilação de dados: consulte a visão geral da assimilação de dados para saber as noções básicas de como os dados são assimilados na plataforma, incluindo os diferentes métodos e processos envolvidos.
- Assimilação em lote: consulte a visão geral da API de assimilação em lote para saber mais sobre os conceitos básicos de assimilação em lote. Especificamente, o que é um "lote" e como ele funciona no processo de assimilação de dados da plataforma.
- Metadados do sistema em conjuntos de dados: consulte a visão geral do Serviço de Catálogo para saber como os campos de metadados do sistema são usados para rastrear e consultar dados assimilados.
- Experience Data Model (XDM): consulte a visão geral da interface do usuário de esquemas e as 'noções básicas da composição de esquema' para saber mais sobre esquemas XDM e como eles representam e validam a estrutura e o formato dos dados assimilados na Platform.
Acessar metadados em lote do conjunto de dados access-dataset-batch-metadata
Para garantir que as colunas do sistema (colunas de metadados) sejam incluídas nos resultados da consulta, use o comando SQL set drop_system_columns=false
no Editor de Consultas. Isso configura o comportamento da sessão de consulta SQL. Esta entrada deve ser repetida se você iniciar uma nova sessão.
Em seguida, para exibir os campos de sistema do conjunto de dados, execute uma instrução SELECT all para exibir os resultados do conjunto de dados, por exemplo select * from movie_data
. Os resultados incluem duas novas colunas no lado direito _acp_system_metadata
e _ACP_BATCHID
. As colunas de metadados _acp_system_metadata
e _ACP_BATCHID
ajudam a identificar as partições lógica e física dos dados assimilados.
Quando os dados são assimilados na Platform, uma partição lógica é atribuída com base nos dados recebidos. Esta partição lógica é representada por _acp_system_metadata.sourceBatchId
. Essa ID ajuda a agrupar e identificar os lotes de dados logicamente antes de serem processados e armazenados.
Depois que os dados forem processados e assimilados no data lake, ele receberá uma partição física representada por _ACP_BATCHID
. Essa ID reflete a partição de armazenamento real no data lake onde os dados assimilados residem.
Usar SQL para compreender partições lógicas e físicas understand-partitions
Para ajudar a entender como os dados são agrupados e distribuídos após a assimilação, use a consulta a seguir para contar o número de partições físicas distintas (_ACP_BATCHID
) para cada partição lógica (_acp_system_metadata.sourceBatchId
).
SELECT _acp_system_metadata, COUNT(DISTINCT _ACP_BATCHID) FROM movie_data
GROUP BY _acp_system_metadata
Os resultados desse query são mostrados na imagem abaixo.
Esses resultados demonstram que o número de lotes de entrada não corresponde necessariamente ao número de lotes de saída, pois o sistema determina a maneira mais eficiente de colocar em lote e armazenar os dados no data lake.
Para o propósito deste exemplo, presume-se que você tenha assimilado um arquivo CSV na Platform e criado um conjunto de dados chamado drug_checkout_data
.
O arquivo drug_checkout_data
é um conjunto profundamente aninhado de 35.000 registros. Use a instrução SQL SELECT * FROM drug_orders;
para visualizar o primeiro conjunto de registros no conjunto de dados drug_orders
baseado em JSON.
A imagem abaixo mostra uma pré-visualização do arquivo e seus registros.
Usar o SQL para gerar insights sobre o processo de assimilação em lote sql-insights-on-batch-ingestion
Use a instrução SQL abaixo para fornecer insights sobre como o processo de assimilação de dados agrupou e processou os registros de entrada em lotes.
SELECT _acp_system_metadata,
Count(DISTINCT _acp_batchid) AS numoutputbatches,
Count(_acp_batchid) AS recordcount
FROM drug_orders
GROUP BY _acp_system_metadata
Os resultados do query são vistos na imagem abaixo.
Os resultados demonstram a eficiência e o comportamento do processo de assimilação de dados. Embora três lotes de entrada tenham sido criados — cada um contendo 2000, 24000 e 9000 registros — quando os registros foram combinados e desduplicados, restou apenas um único lote.
Validar um lote com SQL validate-a-batch-with-SQL
Em seguida, valide e verifique os registros que foram assimilados no conjunto de dados com o SQL.
Depois de assimilar um lote, você deve navegar até a guia de atividade de conjuntos de dados para o conjunto de dados no qual assimilou dados.
Na interface do usuário do Experience Platform, selecione Conjuntos de dados no menu de navegação esquerdo para abrir o painel Conjuntos de dados. Em seguida, selecione o nome do conjunto de dados na guia Procurar para acessar a tela Atividade do conjunto de dados.
A exibição Atividade do conjunto de dados aparece. Essa exibição contém detalhes do conjunto de dados selecionado. Inclui todos os lotes assimilados exibidos em formato de tabela.
Selecione um lote na lista de lotes disponíveis e copie a ID do lote no painel de detalhes à direita.
Em seguida, use a seguinte consulta para recuperar todos os registros incluídos no conjunto de dados como parte desse lote:
SELECT * FROM movie_data
WHERE _acp_batchid='01H00BKCTCADYRFACAAKJTVQ8P'
LIMIT 1;
A palavra-chave _ACP_BATCHID
é usada para filtrar a ID do Lote.
LIMIT
é útil se você quiser restringir o número de linhas exibidas, mas uma condição de filtro é mais desejável.Ao executar essa consulta no Editor de consultas, os resultados são truncados para 100 linhas. O Editor de consultas foi projetado para visualizações e investigações rápidas. Para recuperar até 50.000 linhas, você pode usar uma ferramenta de terceiros, como DBVisualizer ou DBeaver.
Próximas etapas next-steps
Ao ler este documento, você aprendeu os conceitos básicos de verificação e validação de registros em lotes assimilados como parte do processo de assimilação de dados. Você também obteve insights sobre como acessar metadados em lote do conjunto de dados, entender partições lógicas e físicas e consultar lotes específicos usando comandos SQL. Esse conhecimento pode ajudá-lo a garantir a integridade dos dados e otimizar seu armazenamento de dados na Platform.
Em seguida, pratique a assimilação de dados para aplicar os conceitos aprendidos. Assimile um conjunto de dados de amostra na Platform com os arquivos de amostra fornecidos ou com seus próprios dados. Se ainda não tiver feito isso, leia o tutorial sobre como assimilar dados no Adobe Experience Platform.
Como alternativa, você pode aprender a conectar e verificar o Serviço de Consulta com vários aplicativos de cliente de desktop para aprimorar seus recursos de análise de dados.