1. 概述
1.1 版本
FineDataLink 版本 | 功能變動 |
---|---|
4.0.28 | - |
4.1.11.4 | 實時任務寫入適配 |
1.2 應用場景
Amazon Redshift 是 AWS 提供的 MPP 架構數倉產品,使用者需要 FineDataLink 在管道寫入端和定時任務讀寫端對接這款資料庫,支撐組合方案落地。
1.3 功能說明
FineDataLink 支援連結 Amazon Redshift ,進行定時任務讀寫、管道任務寫入、實時任務寫入(作為寫入端支援基於 COPY 實現高速裝載和 JDBC 普通裝載兩種方式)。
本文介紹如何連結 Amazon Redshift 。
2. 約束限制
Amazon Redshift 資料庫中有參數 describe_field_name_in_uppercase 控制大小寫,因此 通用配置 對其不生效。參數值預設 off ,即預設全小寫。詳情請參見:具體說明
3. 準備工作
3.1 版本和驅動
驅動包下載 | 驅動 |
---|---|
使用者可自行在amazon下載驅動 | com.amazon.redshift.jdbc.Driver |
注:支援預設叢集版本和 Serverless 版本。
3.2 收集連結資訊
在連結資料庫之前,請收集以下資訊:
資料庫所在伺服器的終端地址和埠號。
資料庫的帳號和密碼。
需要連結的資料庫模式。
若使用者需要使用資料源作為寫入端,且希望實現支援基於 S3的 COPY實現高速裝載,由於向 S3上傳檔案的程式中,需要 AWS 的認證資訊,因此需要準備相關認證資訊。
詳情參見本文第四章內容。
4. 普通讀寫資料源接入方式
1)以管理者身分登入 FineDataLink ,點選「管理系統>資料連結>資料連結管理」,選中某個資料夾後,建立資料連結。如下圖所示:
2)設定資料連結名稱(可同時修改資料連結所在目錄)。如下圖所示:
3)可根據資料源分類、支援形式、適配模組、資料源名稱篩選資料庫。如下圖所示:
4)驅動切換為「自訂」,選擇本文 3.2 節上傳的驅動(上傳驅動方法參見:驅動管理),然後輸入 3.3 節的連結資訊。點選「點選連結資料庫」按鈕後,才能選擇模式。如下圖所示:
注:使用者可以選擇性修改進階設定,詳細請參見 建立並管理資料源 文檔。
5)點選「測試連結」,若連結成功則「儲存」該連結。如下圖所示:
5. 寫入端高速裝載接入方式
5.1 前提條件
Amazon Redshift 需要能夠存取 FineDataLink 伺服器的 22 埠。
若使用的是 Amazon Redshift 叢集,則公用鍵要新增到 FineDataLink 伺服器上,參見文檔 載入資料的程式 第1、2、3步。
5.2 配置項說明
在使用該資料源作為寫入端時,支援高速裝載,利用到基於 S3 的 COPY 方案,向 S3 上傳檔案的程式中,因此需要 AWS 的認證資訊,配置項如下圖所示:
證件讀取方式選擇「使用環境內預設證件」:
配置項 | 是否必填 | 說明 |
---|---|---|
證件讀取方式:使用環境內預設證件 | 必填 | 使用環境內的憑證配置,此時使用 SDK 呼叫上傳操作時,直接使用 standard 方式即可,使用預設證件提供程式鏈。 環境內的配置方式參見:設定AWS臨時憑證並AWS 區域用於開發 |
區域 | 必填 | 填寫 S3 儲存桶所在的 AWS 雲區域程式碼,如「cn-northwest-1」、「cn-north-1」。 |
儲存桶名稱 | 必填 | 填寫S3儲存桶名稱。 |
臨時檔案寫入目錄 | 非必填,預設為空 | 填寫臨時檔案的寫入目錄。 選項為空時,將使用儲存桶的根目錄。 |
證件讀取方式選擇「手動指定證件」:
配置項 | 是否必填 | 說明 |
---|---|---|
證件讀取方式:手動指定證件 | 必填 | 將允許使用者手動指定憑證配置 此時使用SDK呼叫上傳操作時,需要建立 BasicSessionCredentials,然後在初始化S3用戶端時使用手動指定的認證。 |
AccessKeyID | 必填 | 手動指定 IAM 認證資訊的 AWS_ACCESS_KEY_ID項。 |
SecretAccessKey | 必填 | 手動指定 IAM 認證資訊的 AWS_SECRET_ACCESS_KEY 項。 |
區域 | 必填 | 填寫 S3 儲存桶所在的 AWS 雲區域程式碼,如「cn-northwest-1」、「cn-north-1」。 |
儲存桶名稱 | 必填 | 填寫 S3 儲存桶名稱。 |
臨時檔案寫入目錄 | 非必填,預設為空 | 填寫臨時檔案的寫入目錄。 選項為空時,將使用儲存桶的根目錄。 若不填寫根目錄,則寫入預設在根目錄下,如下圖所示: 若填寫,則在對應根目錄下的檔案,如填寫chloe,則在根目錄下的chloe資料夾內,如下圖所示: |
注1:IAM認證相關資料:向... 提供臨時憑證 AWS SDK for Java、管理 IAM 使用者的存取金鑰
注2:AWS控制台頁面中,只能看到AccessKeyID,SecretAccessKey 僅在建立 AccessKey 的時候可以看到。
注3:FineDataLink 內的臨時檔案啟動高速裝載後,臨時檔案寫入 %FineDataLink%/...../web-inf/temp路徑下。
6. 使用資料源
配置好資料源後即可在「定時任務」中將資料源作為讀取和寫入端。
作為來源端:
作為寫入端:如果配置了本文第五章的高速裝載,則可以在寫入方式中選擇是否啟動高速裝載,如下圖所示:
在「管道任務」中將資料源作為寫入端。如果配置了本文第五章的高速裝載,則可以選擇是否啟動高速裝載,如下圖所示:
配置好資料源後即可在「實時任務」中將使用資料源,詳情參見:實時任務概述