1.什么是kafka,kafka基础理论知识
对于kafka,如果接触过,我们知道他是用来传输数据的。里面的一些概念也还是懂得的。这里简单说下个人的一些认识,如有错误,欢迎指正交流。
在大数据里面,分区【partition】,很多人其实还是不理解的。我个人理解,分区其实就是对数据的一个分类。也就是众多的数据中,对数据进行整理归类。kafka中,还有一个概念就是topic,这个topic可能我们也创建过,但是topic是什么,还是模糊的,这里引用下面内容,感觉说的还是比较清楚的。
消息发送时都被发送到一个topic,其本质就是一个目录,而topic由是由一些Partition Logs(分区日志)组成
通过上面相信你对topic有了一些了解。
了解基本概念之后,可以在深入些,这里只说下个人的经验,一些可能误解的地方:
kafka在传输数据的过程中,Kafka什么时候删除数据,消费完是否接着就删除数据,这个不是的。Kafka只有过期的数据才会被自动清除以释放磁盘空间。
除了数据删除,可能误解。一些比较难理解的或则容易混淆的地方:
比如Consumergroup与消息消费的关系,如何设置partition值需要考虑的因素等问题
Consumergroup:各个consumer可以组成一个组,每个消息只能被组中的一个consumer消费,如果一个消息可以被多个consumer消费的话,那么这些consumer必须在不同的组。
关于如何设置partition值需要考虑的因素。一个partition只能被一个消费者消费(一个消费者可以同时消费多个partition),因此,如果设置的partition的数量小于consumer的数量,就会有消费者消费不到数据。所以,推荐partition的数量一定要大于同时运行的consumer的数量。
更多内容,可参考下面文章:
Kafka 设计与原理详解
http://www.aboutyun.com/forum.php?mod=viewthread&tid=15812
Kafka入门经典教程
http://www.aboutyun.com/forum.php?mod=viewthread&tid=12882
kafka入门:简介、使用场景、设计原理、主要配置及集群搭建
http://www.aboutyun.com/forum.php?mod=viewthread&tid=9341
分布式消息系统 Kafka 简介:特点、架构、设计、应用场景
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11914
——————————————————————————
上面是比较经典的内容,下面内容可随便看看,仅供参考:
Kafka入门
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11888
分布式消息系统:Kafka介绍
http://www.aboutyun.com/forum.php?mod=viewthread&tid=9038
Kafka文档:基本介绍(Getting Start)
http://www.aboutyun.com/forum.php?mod=viewthread&tid=14732
Kafka【过期数据】清理策略删除和压缩
http://www.aboutyun.com/forum.php?mod=viewthread&tid=15909
kafka在zookeeper中存储结构
http://www.aboutyun.com/forum.php?mod=viewthread&tid=9941
分布式发布订阅消息系统 Kafka 架构设计
http://www.aboutyun.com/forum.php?mod=viewthread&tid=8960
Kafka详解五、Kafka Consumer的底层API- SimpleConsumer
Kafka设计解析(一)- Kafka背景及架构介绍
http://www.aboutyun.com/forum.php?mod=viewthread&tid=18894
Kafka设计解析(二)- Kafka HA高可用(上)
http://www.aboutyun.com/forum.php?mod=viewthread&tid=18903
Kafka设计解析(三)- Kafka HA高可用(下)
http://www.aboutyun.com/forum.php?mod=viewthread&tid=18904
Kafka设计解析(四)- Kafka Consumer设计解析
http://www.aboutyun.com/forum.php?mod=viewthread&tid=18921
kafka资源:
kafka系列解读-文档
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11928
2.集群部署:
对于集群的部署,其实对于很多大数据集群都是差不多的,下面推荐几篇文章:
kafka2.9.2的分布式集群安装和demo(java api)测试
http://www.aboutyun.com/forum.php?mod=viewthread&tid=8919
构建安全的Kafka集群
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13246
Kafka实战-Kafka Cluster
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13807
3.实战内容
Kafka 一般都是与其它框架整合,比如spark,storm,flume等下面文档可参考
flume+storm+kafka+mysql架构设计整合及介绍
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13442
Spark(1.2.0) Streaming 集成 Kafka 总结
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11536
Kafka实战-实时日志统计流程
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13788
Kafka实战-简单示例
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13801
Kafka+Spark Streaming+Redis实时计算整合实践
http://www.aboutyun.com/forum.php?mod=viewthread&tid=13368
用Apache Kafka构建流数据平台
http://www.aboutyun.com/forum.php?mod=viewthread&tid=11802
详解整合Kafka到Spark Streaming【推荐】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=14664
Storm读取Kafka数据是如何实现的
http://www.aboutyun.com/forum.php?mod=viewthread&tid=19403