我在我们的Kafka(Avro)事件上使用conFluentinc/kafka-connect-bigquery。在某些主题上,我们有不止一种事件类型,例如,UserRegiated
和UserDelet
在主题domain.user
上。
模式注册表中的主题如下所示。
curl --silent -X GET http://avro-schema-registry.core-kafka.svc.cluster.local:8081/subjects | jq .
[...]
"domain.user-com.acme.message_schema.domain.user.UserDeleted",
"domain.user-com.acme.message_schema.domain.user.UserRegistered",
"domain.user-com.acme.message_schema.type.domain.key.DefaultKey",
[...]
我的属性/连接器。属性(我正在使用quickstart文件夹。)如下所示:
[...]
topics.regex=domain.*
sanitizeTopics=true
autoCreateTables=true
[...]
在BigQuery中创建了一个名为
domain_user
的表。但是,我希望有两个表,例如,domain_user_userregistered
和domain_user_userdeleted
或类似的表,因为这两种事件类型的模式完全不同。我如何实现这一点?
我认为您可以使用SchemaNameToTopic单消息转换来执行此操作。通过将主题名称设置为模式名称,这将传播到创建的BigQuery表的名称。
我使用自己的自定义Sink插件运行Kafka Connect集群(本地有1个工人Docker Compose)。我想在连接器中使用几个主题:topicA、topicB、topicC,每个主题都有一个分区。 我的连接器启动时的配置子集如下: 使用此配置,我希望Kafka Connect为每个接收器任务分配一个主题,但遗憾的是,这不是我看到的。实践中发生的情况是,为分配了所有主题的每个任务调用Sink
我想使用Kafka Connect通过CDC检测Postgres DB上一组表的更改,并将它们作为单个主题中的消息推送,其中键作为主表的逻辑键。 这将使使用者能够以正确的顺序使用数据更改,以便将其应用于目标数据库。 是否有源和汇连接器允许我实现这个目标? 我正在使用Debezium CDC源连接器进行Postgres。。。我可以将其配置为将所有表的所有消息路由到一个主题中。 但是,我无法找到能够使
我有一个服务器和一个客户端,它们有自己的引导程序。我的问题是,不同的连接用于不同的目的。一个用于控制通道(与服务器通信并返回),然后建立其他连接以进行数据传输。我以编程方式将idlestate处理程序仅添加到需要它的连接管道中,但在调试之后,我发现无论连接如何,通道总是相同的。因此,我的数据传输正在影响生存。我通过向netty IdleStateHandler添加调试并输出通道id看到了这一点。很
我想知道有没有办法 > 每个架构而不是每个表创建主题。如果启用了每个模式的主题,那么是否可以在表的基础上支持模式演进(使用模式注册表)? 如果每个模式的主题是不可能的,那么有没有关于如何管理100个或数千个主题的指导方针?考虑到表数与主题数之间会有一对一的映射?
分布式模式下Kafka Connect集群的偏移管理行为是什么,即运行多个连接器并监听同一组主题(或一个主题)? 因此,在分布式模式下,Kafka Connect 会将偏移量信息存储在 Kafka 中,此偏移量将由集群中的工作线程读取和提交。如果我在该 Kafka Connect 集群中运行多个连接器侦听同一主题,会发生什么情况?分区的偏移量是否与所有连接器相同,或者每个连接器在分区上的偏移量是否
据我所知,ClientConnectionManager的所有实现都基于路由来保持连接。如果涉及代理,这将导致基本上没有持久连接。例如,HttpClient需要通过一个具有固定IP的HTTP代理访问1000个不同的域,它必须建立至少1000个到代理的连接,而不是创建一个到代理的持久连接,并将其重新用于1000个请求。 我正在模拟多个用户访问数千个域(假域,所有dns解析为几个IP,解析发生在代理之