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

Kafka 目標

此主題說明如何使用 Kafka 目標連接器對 Kafka 目標設定連線能力。Kafka 僅可作為複寫任務中的目標使用。

設定 Kafka 作為目標涉及:

設定連線屬性

若要設定連接器,進行下列事項:

  1. 連線中,按一下建立連線

  2. 選取 Kafka 目標連接器,然後提供下列設定:

資料目標

資料閘道

資訊備註此欄位無法用於 Qlik Talend Cloud 啟動器 訂閱,因為此訂閱層級不支援 資料移動閘道

將資料移至 Amazon MSK 時,只有在無法從 Qlik Cloud 存取 Amazon MSK 且只能使用私人連結存取時 (例如若在虛擬私人雲端中),才需要 資料移動閘道。在此情況下,選取您要用來存取目標資料庫的 資料移動閘道。根據您的使用情況,這會是為了從資料來源移動資料而部署的相同或不同 資料移動閘道

如果您要將資料移至可從 Qlik Cloud 直接存取的 Amazon MSK 執行個體,請選取

資訊備註
  • 如果您要將資料移至內部部署 Kafka (請參閱下方的 雲端供應商),您必須選取 資料移動閘道,無論 Kafka 是否可從 Qlik Cloud 直接存取。

  • 如果您需要使用 資料移動閘道,則需要 2025.5.40 版或更新版本。

如需關於 資料移動閘道 使用案例的資訊,請參閱 何時需要 資料移動閘道?常見使用案例

雲端供應商

選擇 以使用內部部署 Kafka,或選擇 Amazon MSK 以使用 Amazon MSK。

代理伺服器

使用以下格式指定一個或多個代理伺服器 (用於高可用性):

server1[:port1][,server2[:port2]]

範例:

192.168.1.100:9092,192.168.1.101:9093

資料任務將連線到第一個可用的主機。如果指定主機時未指定連接埠,則連接埠 9092 將用作預設值。

資訊備註

當使用 SSL 或 Kerberos 驗證時,您必須指定代理程式 FQDN (亦即不是 IP 位址)。

資訊備註

您的叢集中的所有代理程式伺服器都需要可從 資料移動閘道 機器存取。然而,您不需要指定所有伺服器在 代理程式伺服器 欄位。這是因為 資料移動閘道 只需要連線到其中一個伺服器,以便擷取叢集中其他伺服器的連線詳細資料。因此,最佳實務是在執行任務時指定最有可能可用的伺服器。資料任務產生訊息的伺服器由主題和分割主題以及分割設定決定。

帳戶屬性

驗證方法

選擇以下其中一項:

  • 無驗證。
  • 憑證如果您選取此選項,您也需要提供下列資訊:

    備註公用和私密金鑰檔案必須是 PEM 格式。

    • 公用金鑰檔案 瀏覽至 PEM 格式的公用金鑰檔案。當您按一下 儲存 時,檔案將會上傳至 Qlik Talend Cloud 並部署至連接器設定中選取的 資料移動閘道
    • 私人金鑰檔案瀏覽至採用 PEM 格式的私人金鑰檔案。當您按一下 儲存 時,檔案將會上傳至 Qlik Talend Cloud,並部署至在連接器設定中選取的 資料移動閘道
    • 私人金鑰檔案密碼私人金鑰檔案的密碼。
  • Kerberos (SASL/GSSAPI)選取以使用 Kerberos 對 Kafka 叢集進行驗證。

    資訊備註

    當選取的雲端供應商Amazon MSK時,此驗證方法無法使用。

    • 主體用於對代理伺服器進行驗證的 Kerberos 主體。
    • Keytab 檔案:瀏覽至 keytab 檔案。當您按一下 儲存 時,檔案將上傳至 Qlik Talend Cloud 並部署至連接器設定中選取的 資料移動閘道
    資訊備註

    若要在 Linux 上使用 Kerberos 驗證,應安裝 Kerberos 用戶端 (工作站) 套件。

  • 使用者名稱和密碼 (SASL/PLAIN)您可以選取此選項,以使用使用者名稱和密碼 (SASL/PLAIN) 驗證您自己。為防止密碼以清除文字傳送,強烈建議也啟用 啟用 TLS 選項。

    資訊備註

    當選取的 雲端提供者Amazon MSK 時,此驗證方法無法使用。

  • 使用者名稱和密碼 (SASL/SCRAM-SHA-256)您可以選取此選項,以使用使用者名稱和密碼 (SASL/SCRAM-SHA-256) 驗證您自己。

    請注意,選取此選項也需要將每個代理程式的 server.properties 檔案設定對應的 SASL/SCRAM 機制。

    資訊備註

    當選取的 雲端供應商Amazon MSK 時,此驗證方法無法使用。

  • 使用者名稱和密碼 (SASL/SCRAM-SHA-512)您可以選取此選項,以使用者名稱和密碼 (SASL/SCRAM-SHA-512) 進行驗證。

    請注意,選取此選項也需要將每個代理程式的 server.properties 檔案設定對應的 SASL/SCRAM 機制。

SSL 選項

選取此選項可將 Qlik Talend Cloud 與代理伺服器之間的通訊加密。如果代理已設定為需要 SSL,則您必須選取此選項。

  • CA 檔案:瀏覽至 PEM 格式的 CA 憑證。當您按一下 儲存 時,檔案將上傳至 Qlik Talend Cloud 並部署至連接器設定中選取的 資料移動閘道

    資訊備註

    當選取的雲端供應商Amazon MSK時,不需要。

中繼資料訊息發佈

結構描述登錄將可用於中繼資料訊息發佈

從下拉式清單選取下列其中一個選項:

  • 選取此選項時,只會發佈資料訊息。

  • Confluent 結構描述登錄

    如果您選取此選項,您也必須設定如下所述的結構描述登錄連線內容

資訊備註
  • Confluent 結構描述登錄選項僅支援 Avro 訊息格式。

  • 強烈建議不要將結構描述訊息發佈到與資料訊息相同的主題。

  • 如果主題不存在,請使用auto.create.topics.enable=true來設定代理程式,以讓資料任務在執行階段建立主題。否則,任務將會失敗。

訊息格式

選擇 JSONAvro 作為訊息格式。如果您選擇了 Confluent schema registryAvro 將是唯一可用的選項。

Schema registry 連線屬性

Schema registry 伺服器

指定一個或多個 Schema Registry 伺服器,使用以下格式 (用於高可用性):

將資料結構描述發佈至 Confluent 結構描述登錄時:

server1:port1[,server2[:port2]]

範例:  

192.168.1.100:8081,192.168.1.101:8081

資料任務將連線到第一個可用的主機。

將資料結構描述發佈至 Hortonworks 結構描述登錄時:

server1:port1[,server2[:port2]]

範例:  

192.168.1.100:7788,192.168.1.101:7788

資料任務將連線到第一個可用的主機。

驗證方法

選取下列其中一個結構描述登錄驗證選項:

  • 無:無驗證。
  • Kerberos: 選取以使用 Kerberos 進行驗證。

    資訊備註

    若要在 Linux 上使用 Kerberos 驗證,應安裝 Kerberos 用戶端 (工作站) 套件。

    • 主體 用於針對結構描述登錄進行驗證的 Kerberos 主體。
    • Keytab 檔案:瀏覽至 keytab 檔案。當您按一下儲存時,檔案將會上傳至 Qlik Talend Cloud,並部署至連接器設定中選取的任何 資料移動閘道

  • 憑證選擇使用憑證進行驗證。

    資訊備註

    僅在發佈至 Confluent Schema Registry 時才支援此選項。

    如果您選擇此選項,還需要提供下列資訊:

    • 公開金鑰檔案:瀏覽至 PEM 格式的公開金鑰檔案。當您按一下 儲存 時,檔案將上傳至 Qlik Talend Cloud 並部署至連接器設定中選取的 資料移動閘道
    • 私人金鑰檔案:瀏覽至 PEM 格式的私人金鑰檔案。當您按一下 儲存 時,檔案將上傳至 Qlik Talend Cloud 並部署至連接器設定中選取的 資料移動閘道
    • 私人金鑰密碼私人金鑰檔案的密碼。
  • 使用者名稱和密碼選取以使用使用者名稱和密碼進行驗證。然後在使用者名稱 密碼 欄位中輸入您的登入憑證。

    資訊備註

    此選項僅在發佈至 Confluent Schema Registry 時支援。

  • 憑證 + 使用者名稱和密碼選取以同時使用憑證、使用者名稱和密碼進行驗證。

    選取此選項時,請在上述說明的公開金鑰檔案私密金鑰檔案私密金鑰密碼使用者名稱密碼 欄位中輸入所需資訊。

    資訊備註

    此選項僅支援發佈至 Confluent Schema Registry 時使用。

  • 啟用 TLS (支援 TLS 1.0、1.1 和 1.2):選取此選項以加密 資料移動閘道 機器與 Schema Registry 伺服器之間的資料。如果伺服器設定為需要 SSL,則您必須選取此選項。
    • CA 檔案:瀏覽 PEM 格式的 CA 憑證。當您按一下 儲存 時,檔案將上傳至 Qlik Talend Cloud 並部署到連接器設定中選取的 資料移動閘道

內部屬性

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

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

名稱

連線的顯示名稱。

必要條件

在將 Kafka 用作目標之前,必須滿足下列先決條件:

  • 資料移動閘道 機器開啟所有代理程式的 TCP 連接埠

  • 設定權限,以允許資料任務寫入目標主題。執行此操作的一種方法是使用 Kafka ACLs 指令碼 (kafka-acls)。

  • 在啟動資料任務之前建立名為 attrep_apply_exceptions 的主題,或使用 auto.create.topics.enable=true 設定代理程式。

    請注意,如果此主題不存在,則無論錯誤處理原則為何,任務在遇到資料錯誤時將始終失敗。

    如需 attrep_apply_exceptions 控制表的說明,請參閱 套用例外情況

限制和考慮事項

當定義以 Kafka 作為目標連接器的任務時,適用以下限制:

  • 不支援的任務設定:

    • Kafka 目標連接器不支援無限 LOB 大小。因此,當從具有 LOB 欄位的來源資料表移動資料時,請勿選取允許無限 LOB 大小選項。

    • 不支援儲存變更模式。

    • 批次最佳化套用模式不支援。Kafka 始終在交易式套用模式下運作。

    • 對於來源資料類型和表格重新命名的變更,不支援忽略 ALTER套用變更設定。
    • 不支援目標表格準備欄位的「捨棄並建立表格」選項。
    • 不支援目標表格準備欄位的「載入前截斷」選項。
    • 不支援變更資料分割控制表。
  • 一般限制:
    • Kafka 主題名稱不能包含空格或超過 255 個字元 (Kafka 0.10 版為 249 個字元),且只能包含下列字元:

      a-z|A-Z|0-9|. (點)|_(底線)|-(減號)

      如果來源資料表名稱超過允許的最大長度或包含不支援的字元,您需要在啟動任務之前修改名稱,或定義全域轉換。

    • 欄位名稱必須以 [A-Za-z_] (字母或底線) 開頭,後面接著 [A-Za-z0-9_] (字母、數字或底線)。例如,_Test_ 是有效的欄位名稱,而 &Test 則不是。

      如果來源欄位名稱不符合此規則,則應使用轉換來重新命名該欄位。

    • 不支援捨棄或重新命名來源資料表。

資料類型

下表顯示使用 Qlik Cloud 時支援的 Kafka 資料類型,以及來自 Qlik Cloud 資料類型的預設對應。

資訊備註

當使用 JSON 訊息格式時,二進位值會以十六進位數字表示。

Kafka 資料對應
Qlik Cloud 資料類型 結構描述訊息中的 Kafka 目標資料類型

日期

日期

時間

時間

日期時間

日期時間

位元組

位元組 (長度)

BLOB

BLOB

REAL4

REAL4 (7)

REAL8

REAL8 (14)

INT1

INT1 (3)

INT2

INT2 (5)

INT4

INT4 (10)

INT8

INT8 (19)

UINT1

UINT1 (3)

UINT2

UINT2 (5)

UINT4

資訊備註

不支援大於 2^31-1 的值。

UINT4 (10)

UINT8

資訊備註

不支援大於 2^63-1 的值。

UINT8 (20)

數字

數值 (p,s)

字串

字串 (長度)

WSTRING

字串 (長度)

CLOB

CLOB

NCLOB

NCLOB

布林值

布林 (1)

對應至 JSON 與 Avro

Avro 訊息格式使用邏輯類型以更精確地表示資料類型。

Qlik Cloud 資料類型只會對應至支援的 Avro 邏輯資料類型,如果 針對特定資料類型使用邏輯資料類型 核取方塊已選取。

資料類型對應
Qlik Cloud 資料類型 JSON Avro 邏輯資料類型

日期

字串

日期

註解一個 Avro INT。

時間

字串

TIME-MILLIS

註解一個 Avro INT。

時間戳記

字串

TIMESTAMP-MICROS

註解一個 Avro LONG。

字串

字串

-

WSTRING

字串

-

CLOB

字串

-

NCLOB

字串

-

數字

字串

小數點 (p,s)

註解 Avro BYTES。

位元組

位元組

-

BLOB

位元組

-

REAL4

浮動

-

REAL8

雙重

-

INT1

INT

-

INT2

INT

-

INT4

INT

-

UINT1

INT

-

UINT2

INT

-

UINT4

-

INT8

-

UINT8

字串

小數點 (20,0)

註解 Avro BYTES。

布林值

布林值

-

使用 Confluent Cloud

下列區段說明如何設定 Kafka 連接器以搭配 Confluent Cloud 使用。

  1. 在 Confluent Cloud 中建立叢集。
  2. 將叢集設定中的Bootstrap 伺服器值複製到連接器設定的一般索引標籤中的Broker 伺服器欄位。
  3. 在連接器設定中,從驗證方法下拉式清單中選取使用者名稱和密碼 (SASL/PLAIN)
  4. 在您的 Confluent 叢集的API 存取畫面中,建立API 金鑰組
  5. 將金鑰和密碼分別複製到 Kafka 連接器的使用者名稱密碼欄位。
  6. 在 Kafka 連接器設定中,選取啟用 TLS選項,並在CA 路徑欄位中指定 CA 檔案的完整路徑。CA 檔案應依據 Confluent 的準則建立,並應包含簽署所有 Confluent Cloud 憑證的 CA 及其根 CA 簽署者。

您現在應該已準備就緒,可使用 Confluent Cloud。

此頁面是否對您有幫助?

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