Architettura del dataset in un data warehouse cloud | Guida di Qlik Cloud
Vai al contenuto principale Passa a contenuto complementare

Architettura del dataset in un data warehouse cloud

Qlik Talend Data Integration consente di creare, gestire e controllare una data pipeline di analisi, distribuendo i dati fino ai consumatori. Quando si generano dataset in un data warehouse cloud con Qlik Talend Data Integration, vengono generate tabelle di archiviazione, tabelle delle modifiche e viste.

Un'interfaccia utente intuitiva e guidata aiuta a creare, modellare ed eseguire data pipeline. Genera automaticamente schemi per archivi dati operativi (ODS) e archivi dati storici (HDS) senza codifica manuale.

Architettura per una data pipeline di Qlik Talend Data Integration utilizzando Qlik Data Gateway - Movimento dati e CDC

  • Trasferimento

    L'attività di trasferimento in Qlik Talend Data Integration controlla il trasferimento continuo dei dati dalle sorgenti dati alla zona di trasferimento. L'esempio nel diagramma descrive l'utilizzo di Qlik Data Gateway - Movimento dati per accedere alle sorgenti dati utilizzando CDC per mantenere i dati aggiornati. È inoltre possibile utilizzare le connessioni di origine di Qlik Cloud per eseguire caricamenti completi che possono essere programmati per ricaricarsi periodicamente.

    Per informazioni su quando è necessario utilizzare Gateway Data Movement, vedere Quando è richiesto il Gateway Data Movement?

    Nota informaticaLe tabelle nella zona di trasferimento sono generate per uso interno dalle attività dati di archiviazione di Qlik Talend Data Integration. Non utilizzare le tabelle di trasferimento in nessun altro processo a valle.
  • Archiviazione

    L'attività di archiviazione controlla quando i dati vengono applicati alle tabelle di archiviazione e crea e gestisce le tabelle e le viste esterne.

  • Viste esterne

    Quando si consumano dati, la best practice è utilizzare le viste. Le viste offrono diversi vantaggi rispetto alle tabelle, tra cui una migliore concorrenza dei dati.

Utilizzo delle viste live

È possibile accedere sia ai dati correnti (ODS) che ai dati storici (HDS) utilizzando le viste live. Le viste live includono i dati delle tabelle delle modifiche che non sono ancora stati applicati alle tabelle correnti o precedenti. Ciò consente di visualizzare i dati con una latenza inferiore senza dover applicare frequentemente i dati modificati. La capacità di ritardare l'unione consente di ridurre i costi e i requisiti di elaborazione nella piattaforma di destinazione.

Un altro vantaggio delle viste live è che il livello di calcolo non deve essere sempre in esecuzione.

  • Il trasferimento può puntare a un warehouse esplicito che può essere di piccole dimensioni, poiché esegue solo operazioni INSERT per un'esecuzione rapida.

  • Il processo di archiviazione, in esecuzione ad esempio una volta al giorno, può riattivare un livello di calcolo di grandi dimensioni per l'elaborazione.

  • La latenza può essere migliorata, poiché non è più necessario applicare le modifiche durante il giorno. Quando i nuovi record inseriti sono disponibili nella tabella delle modifiche, sono immediatamente disponibili nelle viste live.

video thumbnail

Schemi

Gli artefatti vengono generati in uno schema interno e in uno schema dell'attività dati.

  • Lo schema interno contiene le tabelle dati fisiche.

  • Lo schema dell'attività dati contiene le viste che è possibile utilizzare per consumare i dati.

    Quando uno schema è associato a più di un'attività dati, ogni attività dati deve utilizzare un prefisso univoco per tabelle e viste. È possibile impostare il prefisso nelle impostazioni dell'attività dati.

Solo gli schemi interni vengono controllati per eventuali conflitti di denominazione. Per gli altri schemi, è necessario assicurarsi che non vi siano conflitti di denominazione nei nomi delle tabelle. La best practice consiste nel denominare lo schema interno con lo stesso nome dello schema dell'attività dati con l'aggiunta di _internal. Ciò assicurerà efficacemente che ogni combinazione di schema e prefisso sia univoca.

Gli schemi creati da Qlik Talend Data Integration non verranno eliminati quando si eliminano attività o progetti.

Nota informaticaTutte le tabelle e le viste sono gestite da Qlik Talend Data Integration. Non alterare i dati utilizzando altri strumenti.

Tabelle

Le seguenti tabelle vengono create nello schema interno.

Nota informaticaLe tabelle nello schema interno sono soggette a modifiche senza preavviso. Ove possibile, si dovrebbero utilizzare principalmente le viste per consumare i dati.
  • Tabella corrente (ODS)

    Questa tabella contiene la replica della sorgente dati aggiornata con le modifiche durante l'ultimo intervallo di applicazione.

  • Tabella precedente (HDS)

    Questa tabella contiene dati storici di tipo 2. Viene generata solo se Cronologia è abilitata nelle impostazioni dell'attività dati.

    Quando un record della tabella di origine viene aggiornato, ogni volta viene aggiunto un nuovo record alla tabella precedente. Il record della cronologia è una copia del record corrente precedente, che include anche ciò che è stato aggiornato e quando era valido.

    Utilizzare una vista cronologia o una vista live della cronologia per visualizzare i dati storici. Per ulteriori informazioni, vedere Vista cronologia e Vista live della cronologia.

  • Tabella delle modifiche

    Questa tabella contiene tutte le modifiche che non sono ancora state applicate alla tabella corrente. Viene generata solo se viene utilizzata la modalità di trasferimento Caricamento completo e CDC.

Nota informatica

Quando si reinserisce un record che era stato precedentemente eliminato e i record hanno lo stesso valore di chiave primaria, hdr__operation avrà il valore U - aggiornato.

I nomi delle colonne che iniziano con hdr__ sono riservati per l'uso nelle colonne di intestazione da parte di Qlik Talend Data Integration. Per ulteriori informazioni, vedere Nomi di colonna ambigui.

Tabella corrente

Denominazione: <INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_current

Le seguenti colonne di intestazione vengono aggiunte alla struttura della tabella.

Campi di intestazione della tabella corrente
Campo Tipo Descrizione
hdr__key_hash varbinary(20)

Hash di tutte le chiavi primarie del record. Il formato dell'hash è SHA1. Le colonne sono separate da un carattere backspace.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

hdr__from_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

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

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__inserted_timestamp timestamp Timestamp UTC della prima volta in cui è stata aggiunta la chiave. Quando si utilizza il caricamento completo, l'ora di inizio del caricamento completo.
hdr__modified_timestamp timestamp Timestamp UTC di quando è stato applicato l'ultimo aggiornamento.

Tabella precedente

Vengono aggiunti i seguenti campi di intestazione.

Denominazione: <INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_prior

Campi di intestazione della tabella precedente
Campo Tipo Descrizione
hdr__key_hash varbinary(20)

Hash di tutte le chiavi primarie del record.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

hdr__from_timestamp timestamp

Timestamp in UTC

hdr__to_timestamp timestamp

Timestamp in UTC

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

  • L - inserito dal caricamento iniziale.

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__was_current_from_timestamp timestamp

Timestamp in UTC per la prima volta in cui il record era corrente.

hdr__was_current_to_timestamp timestamp

Timestamp in UTC per l'ultima volta in cui il record era corrente.

Tabella delle modifiche

Denominazione: <INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_ct

I seguenti campi di intestazione vengono aggiunti alla struttura della tabella.

Campi di intestazione della tabella delle modifiche
Campo Tipo Descrizione
hdr__change_identifier varchar(50)

L'identificatore della modifica è una stringa composta da due parti:

  • Timestamp di inizio dell'esecuzione batch in millisecondi dal 1/1/1970 (stringa di 10 cifre)

  • Sequenza di modifica dal gateway di replica (35 caratteri)

hdr__operation varchar(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__timestamp timestamp

Timestamp in UTC.

hdr__key_hash binary(20)

Hash di tutte le chiavi primarie del record.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

Viste

Le seguenti viste vengono create nello schema di destinazione dell'attività dati. Le viste create dipendono dall'abilitazione delle viste live e della cronologia e dall'utilizzo della gestione delle modifiche.

  • Vista standard

  • Vista live

  • Vista delle modifiche

  • Vista cronologia

  • Vista live della cronologia

Nota informaticaTutti i nomi delle colonne di intestazione, che iniziano con hdr__, sono riservati. Se si consuma una vista in un'attività di archiviazione, è necessario rinominare le colonne di intestazione consumate nell'attività di archiviazione per evitare un conflitto di denominazione, poiché l'attività di archiviazione genererà viste con le stesse colonne di intestazione.

Vista standard

Denominazione: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>

Nessuna colonna di intestazione viene aggiunta alla struttura della tabella.

Vista live

Le viste live mostrano una vista per ogni tabella di origine selezionata che unisce la tabella con le modifiche dalla tabella delle modifiche. Ciò fornisce alle query una vista live dei dati senza dover attendere il ciclo di applicazione successivo. Le modifiche unite dalla vista della tabella delle modifiche non sono coerenti a livello di transazione tra le tabelle.

Le viste live vengono create solo se si abilita Viste live nelle impostazioni dell'attività dati.

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

Campi di intestazione della tabella
Campo Tipo Descrizione
hdr__key_hash varbinary(20)

Hash di tutte le chiavi primarie del record. Il formato dell'hash è SHA1. Le colonne sono separate da un carattere backspace.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

hdr__from_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

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

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__inserted_timestamp timestamp Timestamp UTC della prima volta in cui è stata aggiunta la chiave. Quando si utilizza il caricamento completo, l'ora di inizio del caricamento completo.
hdr__modified_timestamp timestamp Timestamp UTC di quando è stato applicato l'ultimo aggiornamento.
hdr__store varchar(10)

Questo indica dove risiede il record.

  • CURRENT - se il record risiede nella tabella fisica corrente.

  • CHANGES - se il record risiede nella tabella delle modifiche.

Vista delle modifiche

Questa è una vista della tabella delle modifiche nello schema di trasferimento per ogni tabella di origine selezionata.

Denominazione: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_changes

I seguenti campi di intestazione vengono aggiunti alla struttura della tabella.

Campi di intestazione della vista delle modifiche
Campo Tipo Descrizione
hdr__change_identifier string(50)

L'identificatore della modifica è una stringa composta da due parti:

  • Timestamp di inizio dell'esecuzione batch in millisecondi dal 1/1/1970 (stringa di 10 cifre)

  • Sequenza di modifica dal gateway di replica (35 caratteri)

hdr__from_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__to_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

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

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__timestamp timestamp

Timestamp in UTC.

hdr__key_hash binary(20)

Hash di tutte le chiavi primarie del record.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

Vista cronologia

Una vista cronologia viene generata nello schema asset di dati per ogni tabella di origine selezionata se Cronologia è abilitata nelle impostazioni dell'attività dati. Vengono aggiunti i seguenti campi di intestazione.

Denominazione: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le viste cronologia>

Campi di intestazione della vista cronologia
Campo Tipo Descrizione
hdr__key_hash binary(20)

Hash di tutte le chiavi primarie del record.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

hdr__from_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__to_timestamp timestamp

Timestamp in UTC

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

  • Per una modifica proveniente dalle tabelle delle modifiche, sarà il campo timestamp del record.

hdr__was_current_from_timestamp timestamp

Timestamp in UTC per la prima volta in cui il record era corrente.

hdr__was_current_to_timestamp timestamp

Timestamp in UTC per l'ultima volta in cui il record era corrente.

hdr__store varchar(7)

Questo indica dove risiede il record.

  • CURRENT - se il record risiede nella tabella fisica corrente.

  • PRIORS - se il record risiede nella tabella precedente con i dati storici.

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

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

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__deleted bit

Indica se il record è stato eliminato in modo logico (soft delete), in base al fatto che hdr__operation sia D o d.

Vista live della cronologia

Una vista live della cronologia viene generata nello schema asset di dati per ogni tabella di origine selezionata unita alle modifiche dalla tabella delle modifiche. Vengono aggiunti i seguenti campi di intestazione.

Denominazione: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffisso per le viste live della cronologia>

Campi di intestazione della vista live della cronologia
Campo Tipo Descrizione
hdr__key_hash binary(20)

Hash di tutte le chiavi primarie del record.

Questa colonna non viene generata nelle attività dati Data mart.

hdr__key_id int64

Sequenza incrementata per record.

Questa colonna viene generata solo nelle attività dati Data mart.

hdr__store varchar(10)

Questo indica dove risiede il record.

  • CURRENT - se il record risiede nella tabella fisica corrente.

  • PRIORS - se il record risiede nella tabella precedente con i dati storici.

  • CHANGES - se il record risiede nella tabella delle modifiche.

hdr__operation string(1)

Ultima operazione di questo record.

  • D - eliminato dalla tabella delle modifiche.

  • U - aggiornato dalla tabella delle modifiche.

  • I - inserito dalla tabella delle modifiche.

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

  • d - eliminato da confronta e applica.

  • u - aggiornato da confronta e applica.

  • i - inserito da confronta e applica.

hdr__deleted bit

Indica se il record è stato eliminato in modo logico (soft delete), in base al fatto che hdr__operation sia D o d.

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – ti pregiamo di farcelo sapere!