Google Cloud Storage
Google Cloud Storage 是 Google 的統一物件儲存服務,用於在 Google Cloud 基礎架構上儲存和存取資料。它提供高可用性、全球備援,並與更廣泛的 Google Cloud 生態系統整合。
Qlik Talend Cloud 使用對目標值區具有讀取存取權的 Google Cloud 服務帳戶來連線至 Google Cloud Storage (GCS)。連接器會從指定的值區擷取檔案,透過對檔案內容進行取樣來自動探索結構描述,並根據檔案修改時間戳記執行漸進式資料複寫。
準備驗證
若要存取您的資料,您需要使用帳戶認證來驗證連線。
若要設定您的 Google Cloud Storage 帳戶,您需要:
- 已啟用 Cloud Storage API 的 Google Cloud Platform (GCP) 專案。
- 包含要複寫之檔案的 Google Cloud Storage (GCS) 值區。
- 對值區具有讀取存取權的服務帳戶。
建議的角色為 Storage Object Viewer (
roles/storage.objectViewer),這會授予所需的storage.objects.get和storage.objects.list權限。 如需詳細資訊,請參閱 Google Cloud Storage IAM 角色文件 。 - 為服務帳戶下載的服務帳戶 JSON 金鑰檔案。
若要建立服務帳戶並擷取您的認證:
- 登入您的 Google Cloud 帳戶。
- 導覽至 IAM 與管理 > 服務帳戶。
- 按一下 建立服務帳戶。
- 輸入服務帳戶的名稱和描述,然後按一下 建立並繼續。
- 授予服務帳戶 Storage Object Viewer 角色或具有
storage.objects.get和storage.objects.list權限的自訂角色。 - 按一下 繼續 和 完成。
- 在您新建立的服務帳戶中,按一下 動作 選單。
- 導覽至 管理金鑰 > 新增金鑰 > 建立新金鑰。
- 選取 JSON,然後按一下 建立。
JSON 金鑰檔案會直接下載到您的電腦。此檔案包含建立連線所需的
project_id、client_email和private_key欄位。您只能下載金鑰檔案一次。請務必安全地儲存並備份它,因為它提供對您 Google Cloud 資源的存取權。
支援的檔案格式
- 分隔文字:CSV、TSV、PSV、TXT (具有可設定的分隔符號)
- JSON Lines (
.jsonl) - Parquet (
.parquet) - Avro (
.avro) - 包含上述任何格式的 Gzip 壓縮檔案 (
.gz) - 包含 CSV、JSON Lines、TXT、TSV、PSV 或 Gzip 檔案的 ZIP 封存檔
建立連線
如需詳細資訊,請參閱連線到 SaaS 應用程式。
- 填寫所需的連線屬性。
-
在連線名稱中提供連線名稱。
-
選取開啟連線中繼資料以在建立後定義連線的中繼資料。
-
按一下建立。
| 設定 | 描述 |
|---|---|
| 資料閘道 |
如您的使用情況有需要,選取 資料移動閘道。 資訊備註
此欄位無法用於 Qlik Talend Cloud 啟動器 訂閱,因為不支援 資料移動閘道。若您有另一個訂閱層級且不想使用 資料移動閘道,選取無。 如需關於 資料移動閘道 福利的資訊以及需要此項的使用案例,請參閱 Qlik 資料閘道 - 資料移動。 |
| 開始日期 |
以 |
| 用戶端電子郵件 | 來自服務帳戶 JSON 金鑰檔案的用戶端電子郵件。 |
| 專案 ID | 來自服務帳戶 JSON 金鑰檔案的專案 ID。 |
| 值區 | 儲存檔案的 Google Cloud Storage (GCS) 值區名稱,例如 my-gcs-bucket。
請勿包含 |
| 表格 | 設定表格以控制要讀取哪些檔案以及如何解譯其內容。每個表格定義都包含檔案搜尋模式、表格名稱以及進階行為的選用設定。 |
| 私密金鑰 | 來自服務帳戶 JSON 金鑰檔案的私密金鑰。 |
表格設定
表格設定中的每個項目都會指定從目標值區中的檔案建立的邏輯表格。您可以為每個表格設定下列屬性:
| 屬性 | 必要或選用 | 描述 |
|---|---|---|
| 表格名稱 | 必要 |
指定邏輯表格的名稱,例如 my_orders_csv。此名稱將在 Qlik Talend Cloud 中顯示為串流名稱。
|
| 搜尋模式 | 必要 |
輸入規則運算式以符合檔案名稱,例如 .csv$ 以選取所有 CSV 檔案。
|
| 搜尋前置詞 | 選用 | 提供值區內的路徑前置詞以縮小檔案搜尋範圍,例如 exports/orders/。使用前置詞可透過限制掃描的檔案數量來改善效能。
|
| 金鑰屬性 | 選用 |
列出一個或多個欄名稱 (以逗號分隔) 以定義主索引鍵。例如:id 或 id,date。
|
| 日期覆寫 | 選用 | 列出要視為日期時間欄位的欄名稱 (以逗號分隔)。如果在結構描述探索期間未自動偵測到這些欄位,請使用此選項。 |
| 分隔符號 | 選用 |
指定分隔檔案中值的字元。預設值為 , (逗號)。針對定位字元分隔 (TSV) 檔案使用 \t,或針對管線分隔 (PSV) 檔案使用 |。如果保留空白,系統會根據副檔名自動偵測分隔符號。
|
已複寫的表格
表格是根據表格設定 (請參閱上方) 建立的。每個表格對應於 Google Cloud Storage (GCS) 值區中符合指定搜尋模式和任何選用前置詞的一組檔案。 連接器會透過對每個表格最多 5 個檔案進行取樣 (讀取每第五列,每個檔案最多 1,000 筆記錄) 來自動探索結構描述。
複寫是漸進式的,並使用檔案修改時間戳記來追蹤變更。在每次擷取期間,連接器只會處理自上次成功同步以來已修改的檔案 (如同步書籤所記錄)。
預設會將下列系統欄新增至每個表格:
| 欄 | 描述 |
|---|---|
_sdc_source_bucket
|
讀取記錄的 Google Cloud Storage (GCS) 值區名稱。 |
_sdc_source_file
|
包含記錄的檔案完整路徑。 |
_sdc_source_lineno
|
檔案內記錄的行號。 |
_sdc_extra
|
在剖析期間找到的任何不符合已探索結構描述的額外欄。僅適用於 JSONL 檔案。 |
限制和考量事項
-
服務帳戶認證 (
project_id、client_email、private_key) 必須作為從 JSON 金鑰檔案擷取的個別值提供;不支援檔案上傳。 -
支援 Gzip 壓縮檔案 (
.gz)。連接器會從 gzip 標頭讀取原始檔案名稱,以判斷內部檔案格式。使用--no-name建立的 Gzip 檔案 (標頭中未儲存檔案名稱) 會被略過。 -
不支援巢狀壓縮 (例如,另一個
.gz內的.gz,或.zip內的.zip)。這些檔案會被略過。 -
具有
.csv、.txt、.tsv、.psv或.jsonl副檔名的檔案會檢查 gzip 魔法位元組,如果經過 gzip 壓縮則會解壓縮,即使檔案沒有.gz副檔名也是如此。 search_pattern欄位使用規則運算式語法,而不是 glob 模式。例如,使用\.csv$而不是*.csv。-
連接器具有內建的重試邏輯,針對 Google Cloud Storage (GCS) API 速率限制 (
429) 和暫時性伺服器錯誤 (500、502、503、504) 採用指數輪詢。在失敗之前最多會嘗試五次。 - 沒有可辨識副檔名的檔案會被略過,並發出警告。