Vai al contenuto principale

Creazione di un asset dati di archiviazione Snowflake con gestione dei cambiamenti

Si crea un asset dati di archiviazione in Data Services home, accessibile dalla barra di navigazione. L'asset dati di archiviazione ricava i dati dall'area di trasferimento Snowflake e converte i dati in tabelle per l'analisi. I dati vengono periodicamente applicati alle tabelle dai cambiamenti nell'asset dati di input mediante CDC (Change Data Capture). Le visualizzazioni vengono anche create per fornire un accesso più versatile ai dati nelle tabelle memorizzate.

Introduzione

Quando si generano dati in Snowflake, vengono generate tabelle di memorizzazione, tabelle delle modifiche e visualizzazioni. Quando si consumano dati, la procedura consigliata consiste nell'utilizzare le visualizzazioni. Le visualizzazioni forniscono diversi vantaggi rispetto alle tabelle, tra cui una migliore concomitanza dei dati. Se non si è certi di quale visualizzazione consumare, provare prima la visualizzazione standard per le tabelle.

Le tabelle e le visualizzazioni Snowflake generate mediante un asset dati di archiviazione che legge da un asset dati di trasferimento mediante la gestione dei cambiamenti

Le tabelle e visualizzazioni seguenti vengono sempre create:

  • Tabelle

    Le tabelle contengono i dati fisici che vengono archiviati.

  • Visualizzazioni standard per le tabelle

    Le visualizzazioni standard per le tabelle consentono all'utente soltanto di visualizzare i dati applicati alle tabelle. Questo significa che non include i dati della tabella delle modifiche più recenti non ancora applicati. Le visualizzazioni standard possono essere utilizzate quando la coerenza ha priorità sulla latenza.

  • Visualizzazioni delle tabelle delle modifiche

    Questa è una visualizzazione della tabella delle modifiche nello schema di trasferimento.

È anche possibile selezionare di creare le seguenti visualizzazioni avanzate:

  • Visualizzazioni standard con intestazioni

    Questa è una vista standard per una tabella con campi d'intestazione aggiuntivi generati dall'asset dati di archiviazione.

  • Viste live

    Le viste live includono i dati delle tabelle delle modifiche non ancora applicati. Ciò consente all'utente di visualizzare dati con una latenza inferiore senza dover applicare i dati modificati frequentemente. Le viste live sono meno efficienti rispetto alle viste standard e richiedono più risorse.

Per informazioni più dettagliate sulle tabelle e le visualizzazioni generate, vedere Struttura delle tabelle e delle visualizzazioni generate in Snowflake.

Creazione di un asset dati di archiviazione Snowflake

  1. Fare clic su Aggiungi nuovo nella pagina home di Data Integration, quindi selezionare Crea asset dati.
  2. Nella finestra di dialogo Crea asset dati, riempire i campi seguenti:

    • Nome: Nome dell'asset dati.

    • Spazio: Specificare lo spazio di destinazione dell'asset dati.

    • Tipo asset: Selezionare Memorizzazione (Snowflake).

    • Selezionare Apri per aprire l'asset dati quando viene creato.

    Fare clic su Crea quando si è pronti.

  3. Fare clic su Seleziona dati sorgente.

  4. Selezionare l'asset dati di trasferimento che si desidera utilizzare come sorgente per l'asset dati di archiviazione, quindi fare clic su Seleziona. Selezionare un asset dati di trasferimento con tipo di attività Caricamento completo + CDC. Il tipo di attività viene mostrato nella vista elenco.

    Viene visualizzata la finestra di dialogo Impostazioni.

  5. Configurare le impostazioni per Archiviazione

    • Connessione

      Selezionare la connessione dati con autorizzazione in scrittura al database Snowflake di storage e l'autorizzazione in lettura al database Snowflake utilizzato dall'asset dati di trasferimento. Se non si dispone di una connessione dati, sarà necessario crearla.

      Nota: L'autenticazione OAuth non è supportata per la fornitura di dati ibridi.

      Vedere Creazione di una connessione Snowflake (solo in lingua inglese) per ulteriori informazioni.

    • Schema interno

      Questo è il nome dello schema in cui verranno create le tabelle.

    • Schema asset dati

      Questo è il nome dello schema in cui verranno create le visualizzazioni.

    Nota: È possibile utilizzare lo stesso schema dello Schema interno e dello Schema asset dati ma tenendoli separati si ha la possibilità di impostare un accesso diverso agli schemi. Ad esempio, è possibile limitare l'accesso allo Schema interno e consentire l'accesso allo Schema asset dati per tutti i clienti.
  6. Configurare le impostazioni per Tabelle e visualizzazioni

    I seguenti elementi verranno creati sempre:

    • Tabelle

    • Visualizzazioni standard per le tabelle

    • Visualizzazioni standard per le tabelle delle modifiche

    È anche possibile selezionare di creare le seguenti visualizzazioni:

    • Visualizzazioni standard con intestazioni

    • Viste live

      Se si desidera che le viste live siano coerenti dal punto di vista transazionale, selezionare Viste live coerenti con le transazioni. Quando viene selezionato, le tabelle di stato vengono aggiornate dopo ciascun aggiornamento batch, per impostazione predefinita ogni minuto in presenza di cambiamenti. Ciò richiede un accesso più frequente al database cloud. In base al proprio fornitore di database cloud, ciò significa che il database cloud non viene mai sospeso a causa di inattività.

  7. Configurare le impostazioni per Prefissi e suffissi

    È possibile impostare un prefisso in modo da identificare le risorse generate da questo asset dati. Ciò permette anche di riutilizzare lo stesso schema in più asset dati, dato che è possibile distinguere le tabelle e le visualizzazioni per prefisso.

    È anche possibile impostare i suffissi per le visualizzazioni che vengono generate.

  8. Configurare le impostazioni per Tempo di esecuzione

    • È possibile impostare l'Intervallo di applicazione in minuti.

      Ciò imposta quanto spesso i dati modificati vengono applicati alla tabella di archiviazione. L'intervallo va da 1 minuto a 1440 minuti (7 giorni).

      Consigliamo di non impostare questo intervallo a un valore inferiore alla frequenza di aggiornamento nell'attività Qlik Replicate associata. L'applicazione di dati con una frequenza maggiore causerà costi maggiori per le risorse Snowflake.

      In alternativa, se è necessario a volte avere dati a latenza inferiore, è possibile mantenere elevato l'Intervallo di applicazione e utilizzare viste live.

    • È possibile impostare il numero massimo di connessioni database in Esecuzione parallela.

    I parametri sul Tempo di esecuzione possono essere modificati dopo che l'asset dati è stato catalogato ed eseguito. La modifica avrà un impatto sulla successiva elaborazione effettiva.

  9. Fare clic su OK per confermare le impostazioni. Ora è possibile visualizzare l'anteprima della struttura della tabella prima di iniziare la generazione dei set di dati.

  10. Fare clic su Salva per salvare il proprio asset dati.

  11. Fare clic su Esegui per iniziare la generazione dei set di dati.

Le tabelle Snowflake verranno ora generate e popolate con dati se si è già eseguito un caricamento completo dei dati di trasferimento.

Monitoraggio della generazione di tabelle

È possibile monitorare lo stato e l'avanzamento della generazione di tabelle facendo clic su Monitora. Quando è in esecuzione il primo caricamento, è possibile visualizzare i progressi in Stato caricamento completo. Una volta elaborate le modifiche, è anche possibile visualizzare lo stato e l'avanzamento dell'Ultimo lotto di modifiche.

È possibile visualizzare i seguenti dettagli per ciascuna tabella o modifica:

  • Stato

    Mostra lo stato corrente di questa tabella o modifica.

    • Completato - il caricamento o la modifica sono stati completati correttamente.

    • Caricamento - la tabella o il cambiamento sono in elaborazione.

    • In coda - la tabella o il cambiamento è in attesa di essere elaborato

    • Errore - si è verificato un errore durante l'elaborazione della tabella o del cambiamento.

  • Avviato

    L'ora di avvio del caricamento o dell'elaborazione delle modifiche.

  • Terminato

    L'ora di fine del caricamento o dell'elaborazione delle modifiche.

  • Durata

    La durata del caricamento o dell'elaborazione delle modifiche nel formato hh:mm:ss.

  • Record elaborati

    Il numero di record elaborati nel caricamento o nella modifica.

  • Produttività (record/secondo)

    La produttività non viene aggiornata fino al termine del caricamento.

  • Messaggio

    Visualizza un messaggio di errore se il caricamento o il cambiamento non è stato elaborato correttamente.

Le tabelle verranno aggiornate continuamente con nuovi dati mano a mano che l'area di trasferimento verrà aggiornata dall'attività di replica. Ciascun lotto si riferisce a record da un determinato intervallo temporale. È possibile visualizzare l'intervallo temporale del lotto più recente in Ultimo lotto di modifiche.

È inoltre possibile controllare la scheda asset dati nella pagina home di Data Services. Quando il campo Asset dati aggiornato a mostra la data e l'ora dell'ultimo aggiornamento, le tabelle devono essere disponibili sotto Dati nell'Analytics Hub.

I dati da tutte le transazioni di origine fino ad adesso mostrati in Asset dati aggiornato a sono disponibili per il consumo da questo asset dati. Queste informazioni sono disponibili per un asset dati una volta che tutte le tabelle sono state caricate e il primo set di modifiche è stato applicato. Se si è selezionato di generare viste live, è anche possibile visualizzare quando le viste live sono state aggiornate.

Se è presente un lotto di modifiche prima del completamento del caricamento iniziale, il campo I dati sono aggiornati a nella scheda asset non verrà aggiornato fino al completamento del caricamento iniziale e all'applicazione del primo lotto di modifiche. Ad esempio, ipotizziamo di stare caricando un asset dati che contiene una tabella di ordini composta da 1 milione di ordini e una tabella di dettagli degli ordini composta da 10 milioni di dettagli sugli ordini. Le tabelle richiederanno rispettivamente 10 e 20 minuti per eseguire un caricamento completo. La tabella degli ordini viene caricata per prima, seguita da quella con i dettagli degli ordini. Mentre la tabella degli ordini si sta caricando, viene inserito un nuovo ordine. Pertanto, quando vengono caricati i dettagli degli ordini, la tabella può contenere dettagli del nuovo ordine, che non esiste ancora nella tabella degli ordini. Solo dopo l'applicazione del primo lotto di modifiche, l'ordine e le tabelle con i dettagli dell'ordine saranno sincronizzate e completamente aggiornate allo stesso tempo.

Nota: Non è possibile modificare le impostazioni né i set di dati inclusi una volta iniziata la generazione di tabelle.

Operazioni sull'asset dati di archiviazione

È possibile eseguire le seguenti operazioni su un asset dati di archiviazione dal menu asset in Data Services home.

  • Apri

    Apre l'asset dati di archiviazione. È possibile visualizzare la struttura della tabella e i dettagli in merito all'asset dati e monitorare lo stato per il caricamento completo e i lotti di modifiche.

  • Modifica

    È possibile modificare il nome e la descrizione dell'asset e aggiungere tag.

  • Interrompi

    È possibile interrompere il funzionamento dell'asset dati. L'asset dati non continuerà ad aggiornare le tabelle.

  • Riprendi

    È possibile riprendere il funzionamento di un asset dati dal punto in cui è stato interrotto.

  • Elimina

    È possibile eliminare l'asset dati.

Ricaricamento di tabelle

È possibile ricaricare le tabelle in un asset dati di archiviazione quando l'asset dati viene aperto e l'app è in esecuzione. Il ricaricamento inizia una volta elaborato il lotto di modifiche seguente.

Se i dati di trasferimento risalgono a oltre 96 ore prima, sarà necessario ricaricare le tabelle nell'asset dati di trasferimento che alimenta tale asset dati prima di eseguire tale asset dati.

  • Per ricaricare tutte le tabelle:

    Fare clic su e quindi su Ricarica.

  • Per ricaricare tabelle specifiche:

    1. Aprire la scheda Monitora.

    2. Selezionare le tabelle che si desidera ricaricare.

    3. Fare clic su Ricarica tabelle.

Se si è verificato un errore nell'attività Replicate, sarà necessario ricaricare l'asset dati di trasferimento dall'attività Replicate prima di poter eseguire un ricaricamento nell'asset dati di archiviazione.

Struttura delle tabelle e delle visualizzazioni generate in Snowflake

Questa sezione descrive la struttura delle tabelle e delle visualizzazioni generate nello schema asset dati e nello schema interno.

Tutte le tabelle e le visualizzazioni sono gestite da Qlik Data Services. Non alterare i dati usando altri strumenti.

Tabelle

Le tabelle vengono generate nello schema interno.

Denominazione: <INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME><suffisso per le tabelle>

I seguenti campi intestazione vengono aggiunti alla struttura della tabella.

Campi intestazione tabella
Campo Tipo Descrizione
hdr__key_hash varbinary(20)

Hash di tutte le chiavi primarie dei record.

Il formato Hash è SHA1. I campi sono separati da un carattere Backspace.

hdr__timestamp data e ora

Data e ora in UTC

  • Per i dati ricavati dal caricamento completo, sarà l'ora di inizio del caricamento completo.

  • Per una modifica derivante dalle tabelle delle modifiche, sarà il campo data e ora del record.

hdr__operation varchar(1)

Ultimo funzionamento di questo record.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

  • L - inserito dall'attività di caricamento completo.

Le eliminazioni nei dati di trasferimento sono tradotte in eliminazioni definitive.

Tabella stato asset

La tabella stato asset viene generata nello schema interno. È utilizzata per mantenere l'ultima sequenza applicata e l'ultima sequenza segnalata da Qlik Replicate per la coerenza delle transazioni. Tutti gli oggetti in un asset dati utilizzano la stessa tabella stato asset.

Denominazione: <INTERNAL_SCHEMA>.[<PREFIX>]ASSET_STATE__<DATA_ASSET_ID>

Campi tabella stato asset
Campo Tipo Descrizione
hdr__dataset_id varbinary(20)

ID set dati.

hdr__change_seq varchar(35)

Ultima sequenza modifiche applicata.

hdr__timestamp data e ora

Ora dell'ultima transazione confermata applicata in UTC.

Visualizzazioni standard per le tabelle

Una vista standard con intestazioni viene generata nello schema asset dati per ciascuna tabella sorgente selezionata. Questa visualizzazione include tutti i campi originali dalla struttura tabella, ma non include i campi intestazione aggiunti alla tabella nello schema interno.

Denominazione: <DATA_ASSET_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le viste standard per le tabelle>

Visualizzazioni standard con intestazioni

Una vista standard con intestazioni viene generata in modo opzionale nello schema asset dati per ciascuna tabella sorgente selezionata. Questa visualizzazione include i campi intestazione aggiunti alla tabella.

Denominazione: <DATA_ASSET_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le viste standard con intestazioni>

Viste live

Le viste live mostrano una visualizzazione per ciascuna tabella sorgente selezionata che fonde la tabella con le modifiche dalla tabella delle modifiche. Ciò fornisce alle query una vista live dei dati senza dover attendere il successivo ciclo di applicazione. Le modifiche unite dalla visualizzazione della tabella delle modifiche risultano coerenti a livello di transazioni tra le tabelle mediante gli eventi da Replicate. Le viste live sono generate nello schema asset dati.

Gli asset dati viste live eseguono un'operazione Snowflake ogni 1 minuto per impostazione predefinita, in presenza di modifiche. Questo requisito può essere modificato in Qlik Replicate.

Denominazione: <DATA_ASSET_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le viste live>

Visualizzazioni delle tabelle delle modifiche

Questa è una visualizzazione della tabella delle modifiche nello schema di trasferimento per ciascuna tabella sorgente selezionata.

Denominazione: <DATA_ASSET_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le visualizzazioni della tabella delle modifiche>

I seguenti campi intestazione vengono aggiunti alla struttura della tabella.

Campi intestazione tabella modifiche
Campo Tipo Descrizione
hdr__change_seq varchar(35) Sequenza modifiche da Qlik Replicate.
hdr__operation varchar(1)

Ultimo funzionamento di questo record.

  • U - aggiornato.

  • I - inserito.

  • D - eliminato.

hdr__timestamp data e ora

Data e ora in UTC da Qlik Replicate.

hdr__key_hash varbinary(20)

Hash di tutte le chiavi primarie dei record dalla tabella modifiche Qlik Replicate.