雲端資料倉庫中的資料集架構
Qlik Talend Data Integration 可讓您建立、管理和控制分析資料管道,將資料一路傳遞給消費者。當您使用 Qlik Talend Data Integration 在雲端資料倉庫中產生資料集時,會產生儲存表格、變更表格和檢視。
直覺且引導式的使用者介面可協助您建置、塑模和執行資料管道。自動為操作資料存放區 (ODS) 和歷史資料存放區 (HDS) 產生架構,無需手動編碼。
使用 Qlik 資料閘道 - 資料移動 和 CDC 的 Qlik Talend Data Integration 資料管道架構
-
登陸
Qlik Talend Data Integration 中的登陸工作控制從資料來源到登陸區的連續資料登陸。圖表中的範例描述使用 Qlik 資料閘道 - 資料移動 透過 CDC 存取資料來源,以保持資料在最新狀態。您也可以使用 Qlik Cloud 來源連線來執行完整載入,這些載入可以排程為定期重新載入。
如需有關何時需要使用 資料移動閘道 的資訊,請參閱 何時需要 資料移動閘道?
資訊備註登陸區中的表格是為供 Qlik Talend Data Integration 儲存資料工作內部使用而產生的。請勿在任何其他下游程序中使用登陸表格。 -
儲存
儲存工作控制何時將資料套用至儲存表格,並建立和管理表格與外部檢視。
-
外部檢視
使用資料時,最佳實務是使用檢視。與表格相比,檢視提供了多項優點,包括改善的資料並行性。
使用即時檢視
您可以使用即時檢視存取目前資料 (ODS) 和歷史資料 (HDS)。即時檢視包含來自變更表格中尚未套用至目前或先前表格的資料。這可讓您以較低的延遲查看資料,而無需頻繁套用變更的資料。延遲合併的功能可降低目標平台中的成本和處理需求。
即時檢視的另一個好處是運算層不需要一直執行。
-
登陸可以指向一個明確的倉庫,該倉庫可以很小,因為它只執行 INSERT 作業以實現快速執行。
-
例如,每天執行一次的儲存程序可以喚醒大型運算圖層進行處理。
-
延遲可以獲得改善,因為我們不再需要整天套用變更。當插入的新記錄在變更表格中可用時,它們會立即在即時檢視中可用。
架構
成品會在內部架構和資料工作架構中產生。
-
內部架構包含實體資料表格。
-
資料工作架構包含可用來使用資料的檢視。
當架構與多個資料工作相關聯時,每個資料工作必須為表格和檢視使用唯一的前置詞。您可以在資料工作設定中設定前置詞。
只有內部架構會檢查命名衝突。對於其他架構,您必須確定表格名稱中沒有命名衝突。最佳實務是將內部架構命名為與資料工作架構相同的名稱,並加上 _internal。這將有效確保每個架構和前置詞組合都是唯一的。
當您刪除工作或專案時,由 Qlik Talend Data Integration 建立的架構不會被刪除。
表格
下列表格建立於內部架構中。
-
目前表格 (ODS)
此表格包含在最新套用間隔期間以變更更新的資料來源複本。
-
先前表格 (HDS)
此表格包含類型 2 歷史資料。只有在資料工作設定中啟用 歷史記錄 時才會產生。
當來源表格記錄更新時,每次都會將新記錄新增至先前表格。歷史記錄是前一個目前記錄的副本,其中也包含更新的內容以及其有效的時間。
-
變更表格
此表格包含從工作開始以來對應來源表格的所有變更,且永遠不會被截斷。只有當登陸模式為 完整載入和 CDC 時才會產生。
提示備註如果您的系統處理大量變更,請考慮定期從變更表格中截斷已套用的變更。這應可減少資源消耗並改善效能。
當您重新插入先前已刪除的記錄,且這些記錄具有相同的主索引鍵值時。hdr__operation 的值將為 U - 已更新。
以 hdr__ 開頭的欄名稱保留供 Qlik Talend Data Integration 在標頭欄中使用。如需詳細資訊,請參閱 模糊的欄名稱。
目前表格
命名:<INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_current
下列標頭欄會新增至表格結構中。
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__key_hash | varbinary(20) |
所有記錄主索引鍵的雜湊。雜湊格式為 SHA1。欄位以退格字元分隔。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
| hdr__from_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__inserted_timestamp | timestamp | 第一次新增索引鍵時的 UTC 時間戳記。使用完整載入時,為完整載入的開始時間。 |
| hdr__modified_timestamp | timestamp | 套用最後一次更新時的 UTC 時間戳記。 |
先前表格
已新增下列標頭欄位。
命名:<INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_prior
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__key_hash | varbinary(20) |
所有記錄主索引鍵的雜湊。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
| hdr__from_timestamp | timestamp |
UTC 格式的時間戳記 |
| hdr__to_timestamp | timestamp |
UTC 格式的時間戳記 |
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__was_current_from_timestamp | timestamp |
記錄首次成為目前記錄時的 UTC 時間戳記。 |
| hdr__was_current_to_timestamp | timestamp |
記錄最後一次成為目前記錄時的 UTC 時間戳記。 |
變更表格
命名:<INTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_ct
下列標頭欄位會新增至表格結構中。
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__change_identifier | varchar(50) |
變更識別碼是包含兩個部分的字串:
|
| hdr__operation | varchar(1) |
此記錄的最新作業。
|
| hdr__timestamp | timestamp |
UTC 格式的時間戳記。 |
| hdr__key_hash | binary(20) |
所有記錄主索引鍵的雜湊。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
檢視
下列檢視建立於資料工作目標架構中。建立哪些檢視取決於您是否啟用了即時檢視和歷史記錄,以及您是否使用變更處理。
-
標準檢視
-
即時檢視
-
變更檢視
-
歷史檢視
-
歷史即時檢視
標準檢視
命名:<EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>
沒有標頭欄新增至表格結構中。
即時檢視
即時檢視會顯示每個所選來源表格的檢視,該檢視會將表格與變更表格中的變更合併。這為查詢提供了資料的即時檢視,而無需等待下一個套用週期。從變更表格檢視合併的變更在表格之間不具備交易一致性。
只有在資料工作設定中啟用 即時檢視 時,才會建立即時檢視。
命名:<EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< 即時檢視的後置詞>
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__key_hash | varbinary(20) |
所有記錄主索引鍵的雜湊。雜湊格式為 SHA1。欄位以退格字元分隔。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
| hdr__from_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__inserted_timestamp | timestamp | 第一次新增索引鍵時的 UTC 時間戳記。使用完整載入時,為完整載入的開始時間。 |
| hdr__modified_timestamp | timestamp | 套用最後一次更新時的 UTC 時間戳記。 |
| hdr__store | varchar(10) |
這表示記錄所在的位置。
|
變更檢視
這是每個所選來源表格在登陸架構中變更表格的檢視。
命名:<EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_changes
下列標頭欄位會新增至表格結構中。
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__change_identifier | string(50) |
變更識別碼是包含兩個部分的字串:
|
| hdr__from_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__to_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__timestamp | timestamp |
UTC 格式的時間戳記。 |
| hdr__key_hash | binary(20) |
所有記錄主索引鍵的雜湊。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
歷史檢視
如果在資料工作設定中啟用了 歷史記錄,則會在每個所選來源表格的資料資產架構中產生歷史檢視。已新增下列標頭欄位。
命名:<EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< 歷史檢視的後置詞>
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__key_hash | binary(20) |
所有記錄主索引鍵的雜湊。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
| hdr__from_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__to_timestamp | timestamp |
UTC 格式的時間戳記
|
| hdr__was_current_from_timestamp | timestamp |
記錄首次成為目前記錄時的 UTC 時間戳記。 |
| hdr__was_current_to_timestamp | timestamp |
記錄最後一次成為目前記錄時的 UTC 時間戳記。 |
| hdr__store | varchar(7) |
這表示記錄所在的位置。
|
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__deleted | bit |
根據 hdr__operation 是否為 D 或 d,指出記錄是否已軟刪除。 |
歷史即時檢視
歷史即時檢視會在資料資產架構中為每個所選來源表格產生,並將每個所選來源表格與變更表格中的變更合併。已新增下列標頭欄位。
命名:<EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< 即時歷史檢視的後置詞>
| 欄位 | 類型 | 描述 |
|---|---|---|
| hdr__key_hash | binary(20) |
所有記錄主索引鍵的雜湊。 此欄不會在 資料超市 資料工作中產生。 |
| hdr__key_id | int64 |
每筆記錄遞增的序列。 此欄僅在 資料超市 資料工作中產生。 |
| hdr__store | varchar(10) |
這表示記錄所在的位置。
|
| hdr__operation | string(1) |
此記錄的最新作業。
|
| hdr__deleted | bit |
根據 hdr__operation 是否為 D 或 d,指出記錄是否已軟刪除。 |