Azure Cloud Storage
Azure Cloud Storage 是 Microsoft 針對非結構化資料 (包括文字、二進位檔案、媒體、記錄和應用程式備份) 的受控物件儲存服務。它支援經常性、非經常性和封存存取層,提供異地備援複寫,並與 Microsoft Entra ID (前身為 Azure Active Directory) 整合以實現安全的存取控制。
Qlik Talend Cloud 使用對目標儲存體帳戶容器具有讀取存取權的 Microsoft Entra ID 應用程式 (服務主體) 連線至 Azure Cloud Storage。連接器會從指定的容器擷取檔案,透過對檔案內容進行取樣來自動探索結構描述,並根據檔案修改時間戳記執行漸進式資料複寫。
準備驗證
若要存取您的資料,您需要使用帳戶認證來驗證連線。
若要設定您的 Azure Cloud Storage 帳戶,您需要:
- 具有 Azure Storage 帳戶的 Azure 訂用帳戶。
- 儲存體帳戶中包含要複寫之檔案的 blob 容器。
- 具有用戶端密碼的 Microsoft Entra ID 應用程式註冊。
- 指派給應用程式服務主體的 Storage Blob Data Reader 角色,範圍限定為儲存體帳戶或特定容器。這是唯讀存取權的建議最低權限角色。
若要註冊 Microsoft Entra ID 應用程式並擷取您的認證:
- 登入您的 Azure 帳戶。
- 瀏覽至 Microsoft Entra ID > 應用程式註冊 > 新增註冊。
- 輸入您應用程式的下列資訊:
- 名稱:輸入名稱,例如 QlikDataIntegration。
- 支援的帳戶類型:選取 僅此組織目錄中的帳戶。
- 按一下 註冊。
- 在應用程式 概觀 頁面上,複製 應用程式 (用戶端) 識別碼 和 目錄 (租用戶) 識別碼,並將它們儲存到安全的檔案中。
- 瀏覽至 憑證及密碼 > 用戶端密碼 > 新增用戶端密碼。
- 輸入描述並選取用戶端密碼的到期期間。
- 按一下 新增。
- 複製您的用戶端密碼值並將其儲存到安全的檔案中。
- 在 Azure 入口網站中,開啟您的儲存體帳戶,然後瀏覽至 存取控制 (IAM) > 新增 > 新增角色指派。
- 選取 Storage Blob Data Reader 角色,並將此角色指派給您剛註冊的應用程式。
- 按一下 儲存。
支援的檔案格式
- 分隔文字檔:
.csv、.tsv、.psv、.txt(具有可設定的分隔符號) - JSON Lines:
.jsonl - Parquet:
.parquet - Avro:
.avro - Excel:
.xlsx(支援每個活頁簿有多個工作表;每個工作表的資料列都會被複寫,且工作表名稱會附加至_sdc_source_file欄) - Gzip 壓縮檔:
.gz(包含上述任何格式)
建立連線
如需詳細資訊,請參閱連線到 SaaS 應用程式。
- 填寫所需的連線屬性。
-
在連線名稱中提供連線名稱。
-
選取開啟連線中繼資料以在建立後定義連線的中繼資料。
-
按一下建立。
| 設定 | 描述 |
|---|---|
| 資料閘道 |
如您的使用情況有需要,選取 資料移動閘道。 資訊備註
此欄位無法用於 Qlik Talend Cloud 啟動器 訂閱,因為不支援 資料移動閘道。若您有另一個訂閱層級且不想使用 資料移動閘道,選取無。 如需關於 資料移動閘道 福利的資訊以及需要此項的使用案例,請參閱 Qlik 資料閘道 - 資料移動。 |
| 開始日期 |
以 |
| 儲存體帳戶名稱 | Azure Storage 帳戶的名稱,例如 mystorageaccount,不含 https:// 或 .blob.core.windows.net。 |
| 容器名稱 | Blob 容器名稱,例如 my-container。 |
| 租用戶識別碼 | 租用戶識別碼。 |
| 表格 | 表格設定決定要讀取哪些檔案以及如何解譯其內容。每個表格定義都包含檔案搜尋模式、表格名稱,以及用於自訂檔案處理的選用設定。 |
| 用戶端識別碼 | 用戶端識別碼。 |
| 用戶端密碼 | 用戶端密碼。 |
表格設定
表格設定中的每個項目都代表從容器中的檔案衍生的邏輯表格。可以為每個表格設定下列屬性:
| 屬性 | 必要或選用 | 描述 |
|---|---|---|
| 表格名稱 | 必要 |
指定邏輯表格的名稱 (例如,my_orders_csv)。這會成為 Qlik Talend Cloud 中的串流名稱。
|
| 搜尋模式 | 必要 |
提供規則運算式以符合檔案名稱 (例如,.*\.csv$ 符合所有 CSV 檔案)。將此套用至容器或指定目錄 (如果提供) 內的檔案名稱。
|
| 目錄 | 選用 |
在容器內輸入資料夾路徑前置詞以縮小檔案搜尋範圍 (例如,exports/orders/)。透過限制掃描的檔案來改善效能。這不是規則運算式。
|
| 主索引鍵 | 選用 |
定義以逗號分隔的欄名稱清單,以用作主索引鍵 (例如,id 或 id,date)。對於 CSV 檔案,請使用標頭欄位名稱;對於 JSONL 檔案,請使用頂層物件索引鍵。保留空白以使用完整表格複寫。填入以啟用根據檔案修改時間的漸進式複寫。
|
| 指定日期時間欄位 | 選用 |
列出以逗號分隔的欄名稱,以將其視為日期時間欄位,即使在結構描述探索期間未自動偵測到也是如此 (例如,created_at、updated_at)。
|
| 分隔符號 | 選用 |
指出分隔文字檔的欄位分隔符號。預設值為 , (逗號)。針對 TSV 檔案使用 \t,或針對 PSV 檔案使用 |。如果未指定,則會根據副檔名自動偵測分隔符號。
|
-
將
.jsonl和.csv檔案設定為個別的表格,以確保準確的結構描述處理和資料一致性。 -
確保符合搜尋模式的所有
.csv檔案都包含具有相同欄名稱和順序的一致標頭列。 -
在為每個表格定義的所有
.jsonl檔案中使用一致的物件屬性索引鍵。索引鍵名稱和結構應保持一致,以實現可靠的結構描述偵測。
已複寫的表格
表格定義在您提供的表格設定中。每個表格對應於 blob 容器中符合指定搜尋模式以及 (如果適用) 目錄前置詞的一組檔案。連接器會透過對每個表格最多五個檔案進行取樣、讀取每第五列,並分析每個檔案最多 1,000 筆記錄來探索表格結構描述。
設定主索引鍵時,複寫會使用根據檔案修改時間戳記的漸進式方法。在每次擷取期間,會處理在上次同步書籤之後修改的檔案。如果未指定主索引鍵,則在每次執行時都會完整複寫整個表格。
預設會將下列系統欄新增至每個表格:
| 欄 | 描述 |
|---|---|
_sdc_source_container
|
記錄來源的 Azure blob 容器名稱。 |
_sdc_source_file
|
包含記錄之檔案的完整路徑。對於 Excel 檔案,會附加工作表名稱 (例如,exports/q1.xlsx/Sheet1)。
|
_sdc_source_lineno
|
檔案中記錄的行號。 |
_sdc_extra
|
已剖析但不符合所探索結構描述的額外欄位 (僅限 .jsonl 檔案)。
|
限制與考量
- 儲存體帳戶名稱是以純名稱提供,而不是 URL。
-
支援 Gzip 壓縮檔 (
.gz)。連接器會從 gzip 標頭讀取原始檔案名稱,以判斷內部檔案格式。使用--no-name(標頭中沒有檔案名稱) 建立的 Gzip 檔案會被略過。 -
會檢查副檔名為
.csv、.txt、.tsv、.psv或.jsonl的檔案是否有 gzip 魔法位元組,並以透明方式解壓縮,即使檔案沒有.gz副檔名也是如此。 -
不支援巢狀壓縮 (例如,另一個
.gz內的.gz檔案),且會被略過。 - 搜尋模式 欄位使用規則運算式語法,而不是 glob 模式 (例如,使用
.*\.csv$而不是*.csv)。 - 沒有可辨識副檔名的檔案會被略過,並發出警告。
- 連接器包含內建的重試邏輯,具有針對 Azure API 速率限制 (HTTP 429) 和暫時性伺服器錯誤 (HTTP 500、502、503、504) 的指數輪詢,最多五次嘗試。
- 檔案編碼預期為 UTF-8。