我正在介绍kafka,我想知道如何将主题中的分区中的mesages消费到clickhouse表,如下所示:
当我有3个主题时,很容易连接每个主题的表
ENGINE = Kafka SETTINGS
kafka_broker_list = 'broker:9092',
kafka_topic_list = 'topic1',
kafka_group_name = 'kafka_group',
kafka_format = 'JSONEachRow'
但我不知道如何使用从一个主题的分区到表的消息。请帮忙
1条答案
按热度按时间voj3qocg1#
有多种方法可以做到这一点
在您的信息中保留标识符,如下所示。在使用者中,您可以读取表属性并决定必须在哪个表中保存数据。
{表:表1}
虽然kafka没有提供任何直接的方法来生成特定分区的方法,但是您可以使用key。让我们用三个值1、2、3来创建键。为表1生成消息时,使用键1。这样消息将只发送到一个分区,然后该分区的使用者可以将数据保存在表1中
我个人更喜欢方法1,因为它不会将kafka处理与您的业务逻辑结合起来