本文概述
- 主题已存在
- 关于主题的更多信息
可以使用以下步骤创建主题:
第1步:首先,请确保同时启动Zookeeper和Kafka服务器。
步骤2:在控制台上输入“ kafka-topics -zookeeper localhost:2181 -topic -create”,然后按Enter。在这里,主题名称为“ myfirst”
kafka-topics -zookeeper localhost:2181 -topic <
topic_name> -create
注意:请在Linux上创建主题时(相应地)使用“ .sh”代替“ .bat”。
文章图片
输出将显示为:
文章图片
上面的快照显示错误“缺少必需的参数分区”。由于在创建主题时必须声明分区的数量及其ISR(复制因子)。如果未声明,则将引发此类错误。
步骤3:现在,在满足必要条件后,重写以上命令,如下所示:
‘ kafka-topics.bat -zookeeper本地主机:2181 -topic < topic_name> – create?partitions < value> – replication-factor < value> ’ 。按回车。
文章图片
同样,将引发错误,表明复制因子大于代理数目。到目前为止,我们仅启动了一个经纪人,而不是多个经纪人。因此,将出现此类错误。
注意:复制因子永远不能大于可用代理的数量。步骤4:现在将复制因子视为1,然后重写上面的命令。按回车。输出将显示为:
文章图片
因此,如果所有步骤都被成功处理,那么主题将被成功创建,如上面的输出所示。
主题已存在如果用户使用与现有主题相同的名称创建另一个主题,则会引发错误“主题< topic_name> 已存在”。
文章图片
关于主题的更多信息1)列出主题数
要列出在代理中创建的主题数,请使用“ -list”命令,如下所示:
‘ kafka-topics.bat -zookeeper localhost:2181 -list’ 。
文章图片
上面的快照中有两个主题“ myfirst”和“ mysecond”。
2)描述一个话题
要在代理中描述主题,请使用’ -describe’ 命令,如下所示:
‘ kafka-topics.bat -zookeeper本地主机:2181-描述– topic < topic_name> ’ 。该命令通过分区,领导者,副本和ISR的数量给出了主题的完整描述。
文章图片
3)删除主题
要删除主题,请使用“ -delete”命令。 delete命令用作:’ kafka-topics.sh -zookeeper localhost:2181 -topic < topic_name> – delete’
注意:Window用户在删除任何主题时都会遇到问题。因此,最好在Linux或macOS上使用此命令。
文章图片
在上面的快照中,可以看到有两个现有主题“ myfirst”和“ mysecond”。删除“ mysecond”主题后,“-list”命令仅列出“ myfirst”主题。
【创建kafka主题(topics)】因此,通过这种方式,可以创建各种主题,并且可以将多个命令应用于不同的主题。
推荐阅读
- 发送数据到kafka主题(topics)
- 在linux上安装kafka
- 在macos上安装apache kafka
- apache kafka的安装
- apache kafka架构原理
- apache kafka多集群
- apache kafka的优点和缺点
- apache kafka的应用
- apache kafka的用例