kafka-connect-jdbc-sink配置屬性

kafka-connect-jdbc-sink配置屬性

要使用此連接器,請在connector.class配置屬性中指定連接器類的名稱。

connector.class=io.confluent.connect.jdbc.JdbcSinkConnector

連接器特定的配置屬性如下所述。

數據庫連接安全

在連接器配置中,您會注意到沒有安全參數。這是因爲SSL不屬於JDBC標準,而是取決於所使用的JDBC驅動程序。通常,您需要通過connection.url參數配置SSL 。例如,對於MySQL,它看起來像:

connection.url="jdbc:mysql://127.0.0.1:3306/sample?verifyServerCertificate=false&useSSL=true&requireSSL=true"

請與您的特定JDBC驅動程序文檔聯繫以獲取有關支持和配置的信息。

連接(Connection)

  • connection.url

    JDBC連接URL。例如:jdbc:oracle:thin:@localhost:1521:orclpdb1jdbc:mysql://localhost/db_namejdbc:sqlserver://localhost;instance=SQLEXPRESS;databaseName=db_name

    • 類型:字符串
    • 重要性:高
  • connection.user

    JDBC連接用戶。

    • 類型:字符串
    • 默認值:空
    • 重要性:高
  • connection.password

    JDBC連接密碼。

    • 類型:密碼
    • 默認值:空
    • 重要性:高
  • dialect.name

    該連接器應使用的數據庫方言的名稱。默認情況下爲空,並且連接器根據JDBC連接URL自動確定方言。如果要覆蓋該行爲並使用特定的方言,請使用此選項。可以使用JDBC連接器插件中所有正確包裝的方言。

    • 類型:字符串
    • 默認值:“”
    • 有效值:[,Db2DatabaseDialect,MySqlDatabaseDialect,SybaseDatabaseDialect,GenericDatabaseDialect,OracleDatabaseDialect,SqlServerDatabaseDialect,PostgreSqlDatabaseDialect,SqliteDatabaseDialect,DerbyDatabaseDialect,SapHanaDatabaseDialect,MockDatabaseDialect,MockDatabaseDialect
    • 重要性:低

寫(Writes)

  • insert.mode

    要使用的插入模式。支持的模式有:

    • insert

      使用標準的SQL INSERT語句。

    • upsert

      如果連接器支持目標數據庫,請使用適當的upsert語義,例如。INSERT OR IGNORE

    • update

      如果連接器支持目標數據庫,請使用適當的更新語義,例如UPDATE

    • 類型:字符串

    • 默認值:插入

    • 有效值:[insert, upsert, update]

    • 重要性:高

  • batch.size

    指定在可能的情況下嘗試嘗試將多少記錄一起批處理以插入到目標表中。

    • 類型:int
    • 默認值:3000
    • 有效值:[0,…]
    • 重要性:中等
  • delete.enabled

    是否將null記錄值視爲刪除。要求pk.moderecord_key

    • 類型:布爾值
    • 默認值:false
    • 重要性:中等

數據映射(Data Mapping)

  • table.name.format

    目標表名稱的格式字符串,其中可以包含“ $ {topic}”作爲源主題名稱的佔位符。

    例如,kafka_${topic}對於主題“訂單”將映射到表名稱“ kafka_orders”。

    • 類型:字符串
    • 默認值:$ {topic}
    • 重要性:中等
  • pk.mode

    主鍵模式,也請參考pk.fields文檔以瞭解相互之間的相互作用。支持的模式有:

    • none

      沒有使用鍵。

    • kafka

      Apache Kafka®座標用作PK。

    • record_key

      使用了來自記錄鍵的字段,該字段可以是基元或結構。

    • record_value

      使用記錄值中的字段,該字段必須是結構。

    • 類型:字符串

    • 默認值:無

    • 有效值:[none,kafka,record_key,record_value]

    • 重要性:高

  • pk.fields

    逗號分隔的主鍵字段名稱列表。此配置的運行時解釋取決於pk.mode

    • none

      在此模式下,由於沒有字段被用作主鍵,因此將被忽略。

    • kafka

      必須是代表Kafka座標的三項配置,__connect_topic,__connect_partition,__connect_offset如果爲空則默認爲。

    • record_key

      如果爲空,則將使用鍵結構中的所有字段,否則將用於提取所需的字段-對於原始鍵,僅必須配置一個字段名稱。

    • record_value

      如果爲空,則將使用值struct中的所有字段,否則將用於提取所需的字段。

    • 類型:list

    • 默認值:無

    • 重要性:中等

  • fields.whitelist

    以逗號分隔的記錄值字段名稱的列表。如果爲空,將使用記錄值中的所有字段,否則將用於過濾到所需的字段。

    請注意,pk.fields是在目標數據庫中哪些字段構成主鍵列的上下文中獨立應用的,而此配置適用於其他列。

    • 類型:list
    • 默認值:“”
    • 重要性:中等
  • db.timezone

    插入基於時間的值時,連接器應使用的JDBC時區的名稱。默認爲UTC。

    • 類型:字符串
    • 默認值:“ UTC”
    • 有效值:任何有效的JDK時區
    • 重要性:中等

DDL支持

  • auto.create

    如果發現缺少目標表,將基於記錄模式自動創建目標表CREATE

    • 類型:布爾值
    • 默認值:false
    • 重要性:中等
  • auto.evolve

    如果發現缺少字段,將基於記錄架構,自動添加列ALTER

    • 類型:布爾值
    • 默認值:false
    • 重要性:中等
  • quote.sql.identifiers

    何時在SQL語句中引用表名,列名和其他標識符。爲了向後兼容,默認值爲always

    • 類型:字符串
    • 默認值:始終
    • 重要性:中等

重試(Retries)

  • max.retries

    任務失敗前重試錯誤的最大次數。

    • 類型:int
    • 默認值:10
    • 有效值:[0,…]
    • 重要性:中等
  • retry.backoff.ms

    錯誤嘗試重試之前等待的時間(以毫秒爲單位)。

    • 類型:int
    • 默認值:3000
    • 有效值:[0,…]
    • 重要性:中等

原文

https://docs.confluent.io/5.4.0/connect/kafka-connect-jdbc/sink-connector/sink_config_options.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章