文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州
▲ 本章节目的
⚪ 掌握Kafka的架构;
⚪ 掌握Kafka的Topic与Partition;
一、Kafka核心概念及操作
1. producer生产者,可以是一个测试线程,也可以是某种技术框架(比如flume)。
2. producer向kafka生产数据,必须指定向哪个主题去生产数据。
3. 主题topic,主题是由用户(程序员)自己来创建的。
4. 创建主题的指令:
sh kafka-topics.sh --create ---zookeeper hadoop01:2181
--replication-factor 1 --partitions 1 --topic enbook
5. 查看kafka集群的所有主题:
sh kafka-topics.sh --list --zookeeper hadoop01:2181
6. 创建一个主题,需要指定:
①主题名
②主题的分区数量
③分区的副本数量
7. 主题的分区:本质上就是一个分区文件目录。
分区目录的命名规则:主题名 - 分区编号(分区编号从0开始)。
思考:kafka主题引入分区机制的作用?
回答:可以分布式的对一个主题的数据进行存储和管理。
补充:主题的分区数量可以远大于kafka broker 服务器数量。kafka底层尽可能确保分区目录的负载均衡。比如:一个主题有10个分区,有3个broker服务器,则分区目录的数量分配:3-3-4。
8. 启动一个生产者线程。
sh kafka-console-producer.sh --broker-list
hadoop01:9092, hadoop02:9092, hadoop03:9092 --topic enbook
9. producer向kafka指定的主题生产数据,数据最终是存到了分区目录下的log文件中。此外kafka底层会确保每个分区目录的数据达到负载均衡的效果(轮询发送给每个分区目录)。
10. Kafka支持数据的容错机制,即分区数据丢失后,可以恢复。通过副本冗余机制来实现的。即我们在创建主题时,可以指定每个分区有多个副本。
文章来源:https://www.toymoban.com/news/detail-644678.html
补充:如果出现kafka创建主题分区异常。文章来源地址https://www.toymoban.com/news/detail-644678.html
到了这里,关于大数据课程I2——Kafka的架构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!