源配置设置

连接器设置

名称 描述

connector.class 必填

org.neo4j.connectors.kafka.source.Neo4jConnector

key.converter 必填

兼容的 Kafka Connect 转换器。

可以是以下之一:

  • io.confluent.connect.avro.AvroConverter

  • io.confluent.connect.json.JsonSchemaConverter

  • io.confluent.connect.protobuf.ProtobufConverter

key.converter.schema.registry.url

消息键的 Schema Registry URL。当配置的 key.converter 需要 Schema Registry 时为必填项。

key.converter.optional.for.nullables

当 key.converter 为 io.confluent.connect.protobuf.ProtobufConverter 时,应设置为 true。

value.converter 必填

兼容的 Kafka Connect 转换器。

可以是以下之一:

  • io.confluent.connect.avro.AvroConverter

  • io.confluent.connect.json.JsonSchemaConverter

  • io.confluent.connect.protobuf.ProtobufConverter

value.converter.schema.registry.url

消息值的 Schema Registry URL。当配置的 value.converter 需要 Schema Registry 时为必填项。

value.converter.optional.for.nullables

当 key.converter 为 io.confluent.connect.protobuf.ProtobufConverter 时,应设置为 true。

Neo4j 连接设置

名称 描述

neo4j.uri 必填

要连接的 Neo4j URI。可以指定多个 URI,并使用 , 分隔。

neo4j.database

要连接的 Neo4j 数据库名称。建议明确指定。

neo4j.authentication.type 必填

使用的身份验证类型。可选值:NONE, BASIC, KERBEROS, BEARER, CUSTOM

默认值:BASIC

neo4j.authentication.basic.username

身份验证用户名。当 neo4j.authentication.type 为 BASIC 时为必填项。

neo4j.authentication.basic.password

身份验证密码。当 neo4j.authentication.type 为 BASIC 时为必填项。

neo4j.authentication.basic.realm

身份验证领域,留空则使用默认值。

neo4j.authentication.kerberos.ticket

建立连接所需的 Kerberos 票据。当 neo4j.authentication.type 为 KERBEROS 时为必填项。

neo4j.authentication.bearer.token

建立连接所需的 Bearer Token。当 neo4j.authentication.type 为 BEARER 时为必填项。

neo4j.authentication.custom.scheme

建立连接所需的自定义身份验证方案。当 neo4j.authentication.type 为 CUSTOM 时为必填项。

neo4j.authentication.custom.principal

建立连接所需的自定义主体 (Principal)。当 neo4j.authentication.type 为 CUSTOM 时为必填项。

neo4j.authentication.custom.credentials

建立连接所需的自定义凭据。当 neo4j.authentication.type 为 CUSTOM 时为必填项。

neo4j.authentication.custom.realm

自定义身份验证领域,按您的自定义身份验证提供程序要求进行设置。

neo4j.connection-timeout

TCP 连接超时(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:30s (驱动程序默认值)

neo4j.pool.max-connection-pool-size

连接池中保持的最大连接数。

默认值:100 (驱动程序默认值)

neo4j.pool.connection-acquisition-timeout

从连接池获取连接的最长等待时间(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:60s (驱动程序默认值)

neo4j.pool.idle-time-before-connection-test

空闲连接在该时长后会被测试存活性(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:no test (驱动程序默认值)

neo4j.pool.max-connection-lifetime

连接在连接池中存放的最长有效期(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:1h (驱动程序默认值)

neo4j.max-retry-time

重试事务的最长时长。

默认值:30s

neo4j.security.encrypted

是否启用加密。仅当 neo4j.uri 中使用 bolt 或 neo4j 方案时适用。可选值:true, false

默认值:false。

neo4j.security.trust-strategy

TLS 连接使用的信任策略。可选值:TRUST_ALL_CERTIFICATES, TRUST_SYSTEM_CA_SIGNED_CERTIFICATES, TRUST_CUSTOM_CA_SIGNED_CERTIFICATES。当 neo4j.security.encrypted 为 true 时为必填项。

默认值:TRUST_SYSTEM_CA_SIGNED_CERTIFICATES

neo4j.security.cert-files

包含要信任的 CA 的 X509 证书文件列表。当 neo4j.security.trust-strategy 为 TRUST_CUSTOM_CA_SIGNED_CERTIFICATES 时为必填项。

neo4j.security.hostname-verification-enabled

TLS 握手期间是否启用主机名验证。可选值:true, false。

默认值:true

通用源设置

名称 描述

neo4j.source-strategy 必填

此连接器的源策略。可选值:CDC, QUERY。

neo4j.start-from 必填

开始流式传输的时间锚点。可选值:EARLIEST, NOW, USER_PROVIDED。仅在连接器实例首次运行时使用,当 Kafka Connect 中已存储偏移量时将被忽略。

默认值:NOW

neo4j.start-from.value

用作起始偏移量的自定义值。当 neo4j.start-from 设置为 USER_PROVIDED 时为必填项。

neo4j.ignore-stored-offset

是否忽略先前运行所保存的偏移量存储中检索到的任何偏移量值。可选值:true, false。

默认值:false

neo4j.batch-size

每个轮询周期发布的最大更改事件数。

默认值:1000

neo4j.payload-mode

定义更改消息的结构。可选值:COMPACT, EXTENDED。COMPACT 提供更简单的消息,但如果属性类型发生更改,则会面临模式兼容性问题。EXTENDED 包含类型信息以避免此类问题。

默认值:EXTENDED。 于 5.1.5 版本引入

CDC 策略设置

名称 描述

neo4j.cdc.topic.{NAME}.key-strategy

CDC 主题键的序列化策略。可选值:SKIP, ELEMENT_ID, ENTITY_KEYS, WHOLE_VALUE。

默认值:WHOLE_VALUE

neo4j.cdc.topic.{NAME}.value-strategy

CDC 主题值的序列化策略。可选值:CHANGE_EVENT, ENTITY_EVENT。

默认值:CHANGE_EVENT

注意:如果您在 CDC 策略之一中使用接收器连接器 (sink connector),则此设置必须配置为 CHANGE_EVENT。

neo4j.cdc.poll-duration

Kafka Connect 轮询请求等待从数据库接收更改的最长时长(有效单位:ms, s, m, h 和 d;默认单位为 s)

默认值:5s

neo4j.cdc.poll-interval

在 neo4j.cdc.poll-duration 期间轮询数据库以获取更改的时间间隔(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:1s

neo4j.cdc.topic.{NAME}.patterns

图模式的逗号分隔列表,带有可选的事件属性过滤器(前缀 + 或 - 分别表示包含或排除)。

配置示例:"neo4j.cdc.topic.my-topic.patterns": "(:Person {+name}),(:Person)-[:WORKS_FOR]→(:Company),(:Company {-id})"。Company 节点的更改事件将不包含 id 属性。

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.pattern

索引图模式,带有可选的事件属性过滤器(前缀 + 或 - 分别表示包含或排除)。

示例:"neo4j.cdc.topic.my-topic.patterns.0.pattern": "(:Company {+name})"。Company 节点的更改事件要么总是包含 name 属性(在 CDC FULL 丰富模式下),要么在 name 属性更改时包含(在 CDC DIFF 丰富模式下)。

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.operation

可选值:CREATE, UPDATE, DELETE。我们要为其接收对应索引图模式事件的操作。

示例:"neo4j.cdc.topic.my-topic.patterns.0.operation": "DELETE"

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.changesTo

属性名称的逗号分隔列表。

示例:"neo4j.cdc.topic.my-topic.patterns.0.changesTo": "name, age"(请参阅 如何组合选择器)

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.metadata.authenticatedUser

执行更改时经过身份验证的用户。

示例:"neo4j.cdc.topic.my-topic.patterns.0.metadata.authenticatedUser": "userA"

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.metadata.executingUser

执行更改时执行事务的用户。通常与 authenticatedUser 相同,但如果使用了用户模拟 (impersonation),则可能会有所不同。

示例:"neo4j.cdc.topic.my-topic.patterns.0.metadata.executingUser": "userB"

neo4j.cdc.topic.{NAME}.patterns.{INDEX}.metadata.txMetadata.{KEY}

键值对事务元数据选择器。键值对会与实际的事务元数据进行匹配(键会去掉前述前缀)。

示例:"neo4j.cdc.topic.my-topic.patterns.0.metadata.txMetadata.app": "neo4j-browser"

neo4j.cdc.metric.last-db-tx-id.enabled

是否启用 last_db_tx_id 指标。

默认值:false 于 5.3.0 版本引入

neo4j.cdc.metric.last-db-tx-id.refresh-interval

last_db_tx_id 指标的刷新间隔(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:30s 于 5.3.0 版本引入

neo4j.cdc.use-leader

是否对 CDC 查询使用数据库的领导者 (Leader) 实例。

默认值:false 于 5.3.0 版本引入

QUERY 策略设置

名称 描述

neo4j.query.topic 必填

用于发布通过提供的查询收集到的更改事件的 Kafka 主题。

neo4j.query 必填

用于收集更改的 Cypher 查询。要求结果集中包含 neo4j.query.streaming-property,并且使用 $lastCheck 查询参数来跟踪更改。

neo4j.query.streaming-property

属性名称,该属性既存在于指定查询的结果集中,也用作从先前值查询更改的过滤器。

默认值:timestamp

neo4j.query.poll-duration

Kafka Connect 轮询请求等待从数据库接收更改的最长时长(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:5s

neo4j.query.poll-interval

在 neo4j.query.poll-duration 期间轮询数据库以获取更改的时间间隔(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:1s

neo4j.query.timeout

允许查询运行的最长时长(有效单位:ms, s, m, h 和 d;默认单位为 s)。

默认值:0s

neo4j.query.force-maps-as-struct

这强制将映射 (map) 值的模式编码为结构体 (struct)(默认值:true)。将值设置为 false 将仅影响具有同构值类型的映射的模式编码。具有异构值类型的映射将保持编码为结构体。请注意,Protobuf 转换器不支持映射消息类型(当在 COMPACT 负载模式下且此参数设置为 false 时,可能会出现映射消息类型)。

© . This site is unofficial and not affiliated with Neo4j, Inc.