Opzioni di configurazione avanzate in Azure Synapse Link

Azure Synapse Link offre diversi modi per scrivere e leggere i dati per adattarsi a vari scenari analitici.

Nota

Azure Synapse Link for Dataverse era precedentemente noto come Export to data lake. Il servizio è stato rinominato a partire da maggio 2021 e continuerà a esportare dati in Azure Data Lake nonché in Azure Synapse Analytics.

Questo articolo tratta:

  1. Aggiornamenti sul posto e scritture solo in aggiunta.
  2. Partizionamento dei dati specificato dall'utente.

Aggiornamenti sul posto e scritture solo in aggiunta

Durante la scrittura dei dati della tabella Dataverse nel data lake di Azure, in base al valore createdOn, che è la data e l'ora in cui il record è stato creato, ci sono due diverse impostazioni tra cui scegliere. Sono, Aggiornamento sul posto e Aggiungi solo.

L'impostazione predefinita (per le tabelle in cui createdOn è disponibile) è quello di eseguire un aggiornamento sul posto o un upsert (aggiornamento o inserimento) dei dati incrementali nella destinazione. Se la modifica è nuova e nel lake non esiste una riga corrispondente, nel caso di una creazione, i file di destinazione vengono scansionati e le modifiche vengono inserite nella partizione del file corrispondente nel lake. Se la modifica è un aggiornamento ed esiste una riga nel lake, il file corrispondente nel lake viene aggiornato, anziché inserito, con i dati incrementali. In altre parole, l'impostazione predefinita per tutte le modifiche CUD (creazione, aggiornamento, eliminazione) nelle tabelle Dataverse, dove createdOn è disponibile, è eseguire un aggiornamento sul posto nella destinazione, nel data lake di Azure.

Puoi cambiare il comportamento predefinito di un aggiornamento sul posto utilizzando un'impostazione facoltativa chiamata Aggiungi solo. Piuttosto che un Aggiornamento sul posto, nella modalità Aggiungi solo, i dati incrementali delle tabelle Dataverse vengono aggiunti alla partizione di file corrispondente nel lake. Questa è un'impostazione per tabella ed è disponibile come casella di controllo sotto Avanzate > Mostra impostazioni di configurazione avanzate. Per le tabelle Dataverse con Aggiungi solo attivato, tutte le modifiche CUD vengono aggiunte in modo incrementale ai file di destinazione corrispondenti nel lake. Quando si sceglie questa opzione, la strategia di partizione è impostata su Anno e quando i dati vengono scritti nel data lake, vengono partizionati su base annuale. Solo aggiunta è l'impostazione predefinita per le tabelle Dataverse che non hanno un valore createdOn.

La tabella seguente descrive come vengono gestite le righe nel lake rispetto agli eventi CUD per ciascuna delle opzioni di scrittura dei dati.

Evento Aggiornamento sul posto Solo aggiunta
Creazione di La riga viene inserita nel file di partizione e si basa sul valore createdOn nella riga. La riga viene aggiunta alla fine del file di partizione e si basa su valore createdOn del record.
Aggiornamento Se la riga esiste nel file di partizione, viene sostituita o aggiornata con i dati aggiornati. Se non esiste, viene inserita nel file. La riga, insieme alla versione aggiornata, viene aggiunta alla fine del file di partizione.
CANC Se la riga esiste nel file di partizione, viene rimossa dal file. La riga viene aggiunta alla fine del file di partizione con IsDelete column = True.

Nota

Per le tabelle Dataverse dove Aggiungi solo è abilitato, l'eliminazione di una riga nell'origine non eliminerà o rimuoverà la riga nel lake. La riga eliminata viene invece aggiunta come nuova riga nel lake e la colonna isDeleted è impostata su True.

La lettura errata (ALLOW_INCONSISTENT_READS) per serverless è abilitata per la modalità di sola aggiunta. ALLOW_INCONSISTENT_READS significa che l'utente è in grado di leggere i file che possono essere costantemente modificati mentre la query SELECT è in esecuzione. I risultati saranno coerenti ed equivalenti alla lettura di un'istantanea del file. Non è equivalente all'isolamento dello snapshot del database a causa del diverso tempo di generazione dello snapshot.

Non tutte le modifiche CUD verranno acquisite solo in aggiunta: Synapse Link elabora le modifiche nei dati in gruppi o "batch" prima di pubblicarle nel data lake. Di conseguenza, se l'utente apporta modifiche entro un breve intervallo di tempo, non tutte le modifiche CUD verranno acquisite nel data lake.

Ecco alcuni dettagli in più su quando utilizzare una delle opzioni.

  • Aggiornamento sul posto: Questa opzione è l'impostazione predefinita ed è consigliata solo se vuoi connetterti direttamente ai dati nel lake e hai bisogno dello stato corrente (non modifiche incrementali o di cronologia). Il file contiene il set di dati completo e può essere utilizzato tramite Power BI o copiando l'intero set di dati per le pipeline ETL (Extract, Transfer, Load).
  • Aggiungi solo: Seleziona questa opzione se non ti connetti direttamente ai dati nel lake e vuoi copiare in modo incrementale i dati su un'altra destinazione utilizzando le pipeline ETL. Questa opzione fornisce una cronologia delle modifiche per abilitare gli scenari IA e ML.

Puoi attivare Mostra impostazioni di configurazione avanzate sotto Avanzate in Azure Synapse Link for Dataverse per personalizzare la strategia di partizione dati e selezionare le opzioni per scrivere nel data lake di Azure.

Mostra impostazioni di configurazione avanzate.

Partizionamento dei dati

Quando scrivi i dati della tabella Dataverse su Azure Data Lake Storage tramite Azure Synapse Link, le tabelle sono partizionate (anziché un singolo file) nel lake in base al valore createdOn su ogni riga nell'origine. La strategia di partizione predefinita è per mese e i dati vengono partizionati in Azure Data Lake su base mensile.

In base alla distribuzione dei dati e del volume della tabella Dataverse puoi scegliere di partizionare i dati per anno. Con questa opzione, quando i dati della tabella Dataverse vengono scritti in Azure Data Lake verranno partizionati su base annua in base al valore createdOn su ogni riga nell'origine. Per le tabelle senza colonna createdOn le righe di dati vengono partizionate in un nuovo file ogni 5.000.000 di record. Questa è un'impostazione per tabella ed è disponibile come casella di controllo sotto Avanzate > Mostra impostazioni di configurazione avanzate.

Maggiori dettagli con esempi di come i dati vengono gestiti nel lake con una strategia di partizione annuale o mensile:

Strategia di partizione.

Vedi anche

Azure Synapse Link for Dataverse

Nota

Puoi indicarci le tue preferenze di lingua per la documentazione? Partecipa a un breve sondaggio. (il sondaggio è in inglese)

Il sondaggio richiederà circa sette minuti. Non viene raccolto alcun dato personale (Informativa sulla privacy).