kafka connect连接器如何知道使用哪个模式?



假设我有一堆不同的主题,每个主题都有自己的json模式。在模式注册表中,我指出了不同主题中存在哪些模式,而不是直接引用模式应用的主题。然后,在接收器连接器中,我只引用模式注册中心的端点(URL)。所以据我所知,我从来没有指出kafka连接器(例如JDBC接收器)应该使用哪种注册模式来反序列化来自某个主题的消息?

我在网上找不到任何东西,所以在这里问。

我试图通过消除必须在每个消息中指定模式的开销来减少kafka消息的大小,并使用模式注册表代替。然而,我似乎不能理解这是如何工作的。

生产者直接在记录的字节中序列化模式id。Connect(或使用json反序列化器的消费者)使用作为每条记录一部分的模式。

https://docs.confluent.io/platform/current/schema-registry/serdes-develop/index.html有线形式

如果您试图减少消息大小,不要使用JSON,而是使用二进制格式,并启用主题压缩,如ZSTD

最新更新