尝试从现有的Kafka主题在KSQL中创建Stream时,我面临以下错误。
io.confluent.ksql.exception.KafkaTopicExistsException:已经存在名称为“ test-data”的Kafka主题,其分区/副本配置与所需配置不同。 KSQL期望有2个分区(主题有1个)和1个复制因子(主题有1个)。
是否必须有2个分区才能在KSQL中创建流?
答案 0 :(得分:0)
我猜您正在运行以下命令:
CREATE TABLE FOO (<some column defs>)
WITH (
partitions=<some-value>, <-- explicitly setting partition count
kafka_topic='test-data',
value_format='<something>'
);
具体来说,您是否在partition
子句中明确设置了WITH
计数?
在现有主题上创建PARTITIONS
或REPLICAS
时,无需在WITH
子句中设置TABLE
或STREAM
属性。仅在希望ksqlDB为数据创建新主题时才需要设置这些属性。如果已设置,则它们必须与任何现有主题匹配。
这些文档页面提供了有关此主题的更多信息:
https://docs.ksqldb.io/en/latest/developer-guide/create-a-stream/ https://docs.ksqldb.io/en/latest/developer-guide/create-a-table/
如果该说明不能涵盖您的错误,请提供更多信息。例如。 ksql版本,使用的语句,Kafka中现有主题的详细信息等。