Esplorare, risolvere e verificare l’acquisizione batch con SQL
Questo documento spiega come verificare e convalidare i record in batch acquisiti con SQL. Questo documento illustra come:
- Accedere ai metadati batch del set di dati
- Risolvere i problemi e garantire l'integrità dei dati eseguendo query sui batch
Prerequisiti
Per facilitare la comprensione dei concetti descritti in questo documento, è necessario conoscere i seguenti argomenti:
- Acquisizione dei dati: consulta la panoramica sull'acquisizione dei dati per scoprire le nozioni di base sull'acquisizione dei dati in Experience Platform, inclusi i diversi metodi e processi coinvolti.
- Acquisizione batch: consulta la panoramica dell'API di acquisizione batch per scoprire i concetti di base dell'acquisizione batch. In particolare, cos’è un "batch" e come funziona nel processo di acquisizione dei dati di Experience Platform.
- Metadati di sistema nei set di dati: consulta la Panoramica di Catalog Service per scoprire come i campi dei metadati di sistema vengono utilizzati per monitorare ed eseguire query sui dati acquisiti.
- Experience Data Model (XDM): consulta la panoramica dell'interfaccia utente degli schemi e le 'nozioni di base sulla composizione dello schema' per scoprire gli schemi XDM e come rappresentano e convalidano la struttura e il formato dei dati acquisiti in Experience Platform.
Accedere ai metadati batch del set di dati access-dataset-batch-metadata
Per assicurarsi che le colonne di sistema (colonne di metadati) siano incluse nei risultati della query, utilizzare il comando SQL set drop_system_columns=false
nell'editor delle query. Consente di configurare il comportamento della sessione di query SQL. Questo input deve essere ripetuto se avvii una nuova sessione.
Quindi, per visualizzare i campi di sistema del set di dati, eseguire un'istruzione SELECT all per visualizzare i risultati del set di dati, ad esempio select * from movie_data
. I risultati includono due nuove colonne sul lato destro _acp_system_metadata
e _ACP_BATCHID
. Le colonne di metadati _acp_system_metadata
e _ACP_BATCHID
consentono di identificare le partizioni logiche e fisiche dei dati acquisiti.
Quando i dati vengono acquisiti in Experience Platform, ad essi viene assegnata una partizione logica basata sui dati in arrivo. Questa partizione logica è rappresentata da _acp_system_metadata.sourceBatchId
. Questo ID consente di raggruppare e identificare logicamente i batch di dati prima che vengano elaborati e memorizzati.
Dopo l'elaborazione e l'acquisizione dei dati nel data lake, viene assegnata una partizione fisica rappresentata da _ACP_BATCHID
. Questo ID riflette la partizione di archiviazione effettiva nel data lake in cui si trovano i dati acquisiti.
Utilizzare SQL per comprendere le partizioni logiche e fisiche understand-partitions
Per comprendere il modo in cui i dati vengono raggruppati e distribuiti dopo l'acquisizione, utilizzare la query seguente per contare il numero di partizioni fisiche distinte (_ACP_BATCHID
) per ogni partizione logica (_acp_system_metadata.sourceBatchId
).
SELECT _acp_system_metadata, COUNT(DISTINCT _ACP_BATCHID) FROM movie_data
GROUP BY _acp_system_metadata
I risultati di questa query sono mostrati nell’immagine seguente.
Questi risultati dimostrano che il numero di batch di input non corrisponde necessariamente al numero di batch di output, in quanto il sistema determina il modo più efficiente per eseguire il batch e memorizzare i dati nel data lake.
Ai fini di questo esempio, si presume che tu abbia acquisito un file CSV in Experience Platform e creato un set di dati denominato drug_checkout_data
.
Il file drug_checkout_data
è un set profondamente nidificato di 35.000 record. Utilizzare l'istruzione SQL SELECT * FROM drug_orders;
per visualizzare in anteprima il primo set di record nel set di dati drug_orders
basato su JSON.
L’immagine seguente mostra un’anteprima del file e dei relativi record.
Utilizza SQL per generare informazioni approfondite sul processo di acquisizione batch sql-insights-on-batch-ingestion
Utilizza l’istruzione SQL seguente per fornire informazioni approfondite sul modo in cui il processo di acquisizione dei dati ha raggruppato ed elaborato i record di input in batch.
SELECT _acp_system_metadata,
Count(DISTINCT _acp_batchid) AS numoutputbatches,
Count(_acp_batchid) AS recordcount
FROM drug_orders
GROUP BY _acp_system_metadata
I risultati della query sono visualizzati nell’immagine seguente.
I risultati dimostrano l’efficienza e il comportamento del processo di acquisizione dei dati. Anche se sono stati creati tre batch di input, ciascuno contenente 2000, 24000 e 9000 record, quando i record sono stati combinati e deduplicati, ne è rimasto solo uno univoco.
Convalidare un batch con SQL validate-a-batch-with-SQL
Quindi, convalida e verifica i record acquisiti nel set di dati con SQL.
Dopo aver acquisito un batch, devi passare alla scheda dell'attività Set di dati per il set di dati in cui hai acquisito i dati.
Nell'interfaccia utente di Experience Platform, seleziona Set di dati nell'area di navigazione a sinistra per aprire il dashboard Set di dati. Quindi, seleziona il nome del set di dati dalla scheda Sfoglia per accedere alla schermata Attività set di dati.
Viene visualizzata la visualizzazione Attività set di dati. Questa visualizzazione contiene i dettagli del set di dati selezionato. Include tutti i batch acquisiti che vengono visualizzati in formato tabella.
Selezionare un batch dall'elenco dei batch disponibili e copiare l'ID batch dal pannello dei dettagli a destra.
Quindi, utilizza la seguente query per recuperare tutti i record inclusi nel set di dati come parte di quel batch:
SELECT * FROM movie_data
WHERE _acp_batchid='01H00BKCTCADYRFACAAKJTVQ8P'
LIMIT 1;
Parola chiave _ACP_BATCHID
utilizzata per filtrare l'ID batch.
LIMIT
è utile se si desidera limitare il numero di righe visualizzate, ma è preferibile una condizione di filtro.Quando esegui questa query nell’editor delle query, i risultati vengono troncati a 100 righe. L’editor delle query è progettato per consentire anteprime e indagini rapide. Per recuperare fino a 50.000 righe, puoi utilizzare uno strumento di terze parti come DBVisualizer o DBeaver.
Passaggi successivi next-steps
Leggendo questo documento hai imparato le nozioni di base sulla verifica e la convalida dei record in batch acquisiti come parte del processo di acquisizione dei dati. Sono state inoltre acquisite informazioni sull’accesso ai metadati dei batch di set di dati, sulle partizioni logiche e fisiche e sull’esecuzione di query su batch specifici mediante comandi SQL. Questa conoscenza può aiutarti a garantire l’integrità dei dati e a ottimizzare lo storage dei dati su Experience Platform.
Successivamente, devi esercitarti nell’acquisizione dei dati per applicare i concetti appresi. Acquisisci un set di dati di esempio in Experience Platform con i file di esempio forniti o con i tuoi dati. Se non lo hai già fatto, leggi l'esercitazione su come acquisire dati in Adobe Experience Platform.
In alternativa, puoi imparare a connettersi e verificare Query Service con una serie di applicazioni client desktop per migliorare le funzionalità di analisi dei dati.