Accedere ai metadati batch del set di dati

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.

Linterfaccia utente di DBVisualizer con la tabella movie_data e le relative colonne di metadati visualizzata ed evidenziata.

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

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.

Risultati di una query per visualizzare il numero di partizioni fisiche distinte per ogni partizione logica.

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.

Anteprima del primo set di record nel set di dati drug_orders basato su JSON.