跳到主要內容 跳至補充內容

Amazon Redshift

您可以使用 Amazon Redshift 作為資料管道中的目標資料平台。在資料管道中,可以在目標平台執行各種 ELT 操作,包括儲存資料、轉換資料、建立資料超市和註冊資料。

這涉及:

設定雲端分段區域

資訊備註若您註冊現有資料,您不需要設定雲端分段區域。

設定與 Amazon Redshift 的連線也需要您設定與 Amazon S3 雲端臨時區域的連線性,在此會先暫存資料和變更,再套用並儲存。

如需設定連線至 Amazon S3 的資訊,請參閱 Amazon S3

設定連線至 Amazon Redshift

選取 Amazon Redshift 目標連接器,並提供下列設定:

資料目標

資料閘道: 只有在無法從 Qlik Cloud 存取目標資料庫且只能使用私人連結存取時 (例如若將內部部署置於防火牆後方或在虛擬私人雲端中),才需要 資料移動閘道。在此情況下,選取您要用來存取目標資料庫的 資料移動閘道

根據您的使用情況,這會是為了從資料來源登陸資料而部署的相同或不同 資料移動閘道。如需關於可能的 資料移動閘道 部署可能性的資訊,請參閱 常見使用案例

資訊備註需要 資料移動閘道 2023.5.9 或更高版本。

若目標資料庫可從 Qlik Cloud 直接存取,請選取

資訊備註透過 資料移動閘道 存取目標資料庫時,您也需要在 資料移動閘道 機器上安裝適當的驅動程式。如需詳細資訊,請參閱以下的 驅動程式的設定

連線屬性

  • 伺服器Amazon Redshift 資料庫伺服器的主機名稱。

  • 連接埠:藉此存取 Amazon Redshift 資料庫的連接埠。預設為 5439。

帳戶屬性

使用者名稱密碼:獲得授權可存取 Amazon Redshift 資料庫的使用者的使用者名稱和密碼。

資料庫屬性

  • 資料庫名稱:有兩種方法可用來指定資料庫:

    • 方法 1 - 從清單中選取:按一下載入資料庫,然後選取資料庫。
    • 方法 2 - 手動:選取手動輸入資料庫名稱,然後輸入資料庫名稱。

內部屬性

內部屬性用於特殊使用情況,因此不會在對話方塊中顯示。您只能在 Qlik 支援指示下使用。

根據需要使用欄位右側的 新建取消 按鈕以新增或移除屬性。

名稱

連線的顯示名稱。

必要條件

必要權限

在 Redshift 資料庫授予下列權限:

  • 授予 COPY
  • 授予 INSERT
  • 授予 UPDATE
  • 授予 DELETE
  • 授予 SELECT
  • 建立結構描述 (只有在結構描述不存在且您希望 資料移動閘道 建立結構描述時才需要)
  • 授予 CREATE TABLE
  • 授予 ALTER TABLE
  • 授予 DROP TABLE

驅動程式的設定

只有在透過 資料移動閘道 存取資料庫時,才需要驅動程式。在這類情況下,您需要將驅動程式安裝在 資料移動閘道 機器。

您可以使用驅動程式安裝公用程式 (建議) 或手動安裝 driver。只能在不太可能發生的事件 (您在使用驅動程式安裝公用程式時遇到問題) 中嘗試手動安裝。

使用驅動程式安裝公用程式來安裝驅動程式

此區段描述如何安裝所需的 driver。該流程涉及執行將會自動下載、安裝並設定所需 driver 的指令碼。您也可以執行指令碼,以根據需求更新並解除安裝 driver

  • 確認 Python 3.6 或更高版本安裝於 資料移動 閘道伺服器。

    Python 會預先安裝在大部分的 Linux 發行版。您可以執行下列命令,以查看哪個 Python 版本安裝在您的系統上:

    python3 --version

若要下載並安裝 driver

  1. 停止 資料移動閘道 服務:

    sudo systemctl stop repagent

  2. 可自選,確認服務已停止:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: inactive (dead) since <timestamp> ago

  3. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  4. 執行下列命令:

    語法:

    ./install redshift

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 install redshift 命令。

    否則,就會顯示 driver 的 EULA。

  5. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  6. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以再次檢視 EULA。

  7. 將會安裝 driver

  8. 等待安裝完成 (以「完成!」指示),然後開始 資料移動閘道 服務:

    sudo systemctl start repagent

  9. 可自行選擇確認服務已開始:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: active (running) since <timestamp> ago

若您想要在安裝提供的 driver 之前解除安裝先前的 driver 版本,請執行更新命令。

若要下載並更新 driver

  1. 停止 資料移動閘道 服務:

    sudo systemctl stop repagent

  2. 可自選,確認服務已停止:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: inactive (dead) since <timestamp> ago

  3. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  4. 執行下列命令:

    語法:

    ./update redshift

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 update redshift 命令。

    否則,就會顯示 driver 的 EULA。

  5. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  6. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以從頭檢閱 EULA。
  7. 將會解除安裝舊版 driver,並安裝新版 driver

  8. 等待安裝完成 (以「完成!」指示),然後開始 資料移動閘道 服務:

    sudo systemctl start repagent

  9. 可自行選擇確認服務已開始:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: active (running) since <timestamp> ago

若您想要解除安裝 driver,請執行解除安裝命令。

若要解除安裝 driver

  1. 停止設定為使用此連接器的所有任務。

  2. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  3. 執行下列命令:

    語法:

    ./uninstall redshift

    將會解除安裝 driver

手動安裝驅動程式

只有在自動驅動程式安裝無法成功完成時,才能嘗試手動安裝 driver

  1. 停止 資料移動閘道 服務:

    sudo systemctl stop repagent

  2. 可自選,確認服務已停止:

    sudo systemctl status repagent

  3. 狀態應如下所示:

    Active: inactive (dead) since <timestamp> ago

  4. 下載並安裝連線至 Amazon Redshift 叢集所必需的 Linux SQL 用戶端工具Qlik 資料閘道 - 資料移動 僅需要 Amazon Redshift ODBC 驅動程式 (x64) 1.4.65.1000 或更高版本。

    從以下位置下載驅動程式:

    https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86_64.rpm

    安裝 ODBC 驅動程式後,編輯 /etc/odbcinst.ini 檔案,如下所示:

    [ODBC Drivers]

    Amazon Redshift (x64)=Installed

    以及:

    [Amazon Redshift (x64)]

    Description=Amazon Redshift ODBC Driver (64-bit)

    Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so

  5. 開始 資料移動閘道 服務:

    sudo systemctl start repagent

  6. 可自選,確認服務已開始:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: active (running) since <timestamp> ago

如需 Amazon Redshift 支援的驅動程式清單,請參閱 http://docs.aws.amazon.com/redshift/latest/mgmt/configure-odbc-connection.html

連接埠

需要為傳出通訊開啟連接埠 5439 (Amazon Redshift 叢集)。

CA 憑證

資料移動閘道 使用 SSL 連線至 AWS。這需要適當的 CA 憑證在資料移動閘道 機器,否則連線將失敗。CA 憑證的目的為驗證 AWS 伺服器憑證擁有權。

請確保在 Linux 機器以下位置存在必要的 CA 憑證:

/etc/pki/tls/certs/ca-bundle.crt

如果不存在,最簡單的解決方案為從另一台 Linux 機器複製憑證配套。

一般先決條件和考慮事項

  • 若資料來源有 4 位元組表情圖示字元,使用轉換以將資料類型從 WSTRING(n ) 轉換為 WSTRING ( n*2 )。

  • 請確保 資料移動閘道 機器上的時間和時區設定為正確。這為必要才能確保:

    • 妥善同步完整載入和 CDC 任務
    • 交易記錄時間與實際時間相關聯
  • 您無法從透過 Qlik Cloud 資料整合Amazon Redshift 目標中建立的資料集將即時檢視和歷史記錄檢視讀入 Qlik Cloud 分析服務

限制和考慮事項

  • Amazon Redshift 連接器僅支援標準驗證 (使用者名稱和密碼)。

資料類型

下表顯示使用 Qlik Cloud 時支援的 Amazon Redshift 資料類型和來自 Qlik Cloud 資料類型的預設對應。

會保留原生資料類型資訊,並顯示在資料集檢視的原生資料類型欄中。若看不見欄,您需要開啟資料集檢視的欄選擇器並選取原生資料類型欄。

資訊備註Qlik Cloud 中,字串長度單位為字元,而在 Redshift 中,varchar 長度單位為位元組。每個字元的位元組數可能會不同,取決於實際字元和編碼。Qlik Cloud 假設每個字元的長度為 3 個位元組。這表示,定義 wstring(10) 時,實際上表格將會建立為 varchar(30)。
支援的資料類型
Qlik Cloud 資料類型 Amazon Redshift 資料類型

布林

布林

位元組

VARBINARY (長度)

日期

日期

時間

VARCHAR (20)

日期時間

若刻度為 => 0 且 =< 6,則:

時間戳記

若刻度為 => 7 且 =< 12,則:

VARCHAR (37)

INT1

INT2

INT2

INT2

INT4

INT4

INT8

INT8

數字

若刻度為 => 0 且 =< 37,則:

數字 (精確度,縮放)

若刻度為 => 38 且 =< 127,則:

VARCHAR (長度)

REAL4

FLOAT4

REAL8

FLOAT8

字串

若長度為 => 1 且 =< 65535,則:

VARCHAR (以位元組為單位的長度)

若長度為 => 65535 且 =< 2147483647,則:

VARCHAR (65535)

UINT1

INT2

UINT2

INT4

UINT4

INT8

UINT8

數字 (20,0)

WSTRING

若長度為 => 1 且 =< 21845,則:

NVARCHAR (以位元組為單位的長度)

若長度為 => 21846 且 =< 2147483647,則:

NVARCHAR (65535)

BLOB

VARBINARY(1024000)

NCLOB

NVARCHAR (最大 LOB 大小)

CLOB

VARCHAR (最大 LOB 大小)

不支援下列 SQL Server 資料類型。將不會讀取資料。

  • HLLSKETCH

下列資料類型會轉換為 VARCHAR (65535):

  • 地理

  • 幾何

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!