kafka
文章平均质量分 81
明喆_sama
安居杭州,放眼世界,路漫漫其修远兮,吾将上下而求索
展开
-
kafka系列(八)—— 数据复制&failover
Replica(副本)1 什么是Replica1)当某个Topic的replication-factor为N且N大于1时,每个Partition都会有N个副本(Replica )2)Replica的个数小于等于Broker数,即对每个Partition而言每个Broker上只会有一个Replica ,因此可用Broker ID表示Replica为何这么设置?下图中,假如Partiton0的两个副本都在Broker 1上,那么如果Broker 1挂掉就达不到提高数据可用性。3)所有Par原创 2021-08-11 14:21:33 · 508 阅读 · 0 评论 -
kafka系列(七)—— kafka常见面试题
1.Kafka 中的 ISR(InSyncRepli)、OSR(OutSyncRepli)、AR(AllRepli)代表什么?AR = ISR+OSRISR:In-Sync Replicas 副本同步队列AR:Assigned Replicas 所有副本ISR是由leader维护,follower从leader同步数据有一些延迟(包括延迟时间replica.lag.time.max.ms和延迟条数replica.lag.max.messages两个维度, 当前最新的版本0.10.x中只支持rep原创 2021-08-10 18:09:26 · 699 阅读 · 0 评论 -
kafka系列(六)—— Consumer API
Consumer 消费数据时的可靠性是很容易保证的,因为数据在 Kafka 中是持久化的,故不用担心数据丢失问题。由于 consumer 在消费过程中可能会出现断电宕机等故障, consumer 恢复后,需要从故障前的位置的继续消费,所以 consumer 需要实时记录自己消费到了哪个 offset,以便故障恢复后继续消费。所以 offset 的维护是 Consumer 消费数据是必须考虑的问题。0.9.0.0版本之前是Scala语言写的,之后是java语写的 新版本使用的是org.apach原创 2021-08-10 17:52:31 · 2458 阅读 · 0 评论 -
kafka系列(五)—— broker存储结构
每一个 partition(文件夹)相当于一个巨型文件被平均分配到多个大小相等segment(段)数据文件里。但每一个段segment file消息数量不一定相等,这样的特性方便old segment file高速被删除。(默认情况下每一个文件大小为1G)每一个 partiton仅仅须要支持顺序读写即可了。segment文件生命周期由服务端配置參数决定。partiton中segment文件存储结构:segment file组成:由2大部分组成,此2个文件一一相应,成对出现。索引文件index原创 2021-08-10 17:09:19 · 325 阅读 · 0 评论 -
kafka系列(四)—— Producer API
4.1 消息发送流程生产者要发送消息的属性封装到Properties中,将Properties传到KafkaProducer构造器里,创建一个生产者发送的消息封装成ProducerRecord对象,包含topic、分区、key、value。分区和key可不指定,由kafka自行确定目标分区KafkaProducer调用KafkaProducer的send()方法发送到zookeeper,消费者将要订阅的主题封装在Properties对象中,传入KafkaConsumer构造器中,创建一个消费原创 2021-08-10 17:03:23 · 610 阅读 · 0 评论 -
kafka系列(三)—— Kafka工作流程分析
3.1 kafka工作流程及文件存储机制Kafka 中消息是以 topic 进行分类的, 生产者生产消息,消费者消费消息,都是面向 topic的。topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应于一个 log 文件,该 log 文件中存储的就是 producer 生产的数据。 Producer 生产的数据会被不断追加到该log 文件末端,且每条数据都有自己的 offset。 消费者组中的每个消费者, 都会实时记录自己消费到了哪个 offset,以原创 2021-08-10 16:32:40 · 531 阅读 · 0 评论 -
kafka系列(二)——kafka集群部署
这个参考:https://blog.csdn.net/hancoder/article/details/107446151或者网上其他的文章,照着文章能很快搭建一套kafka集群,如果有mac电脑,建议直接上docker部署。后面有什么好的想法再来补充这篇吧!!!...原创 2021-08-10 15:46:33 · 139 阅读 · 0 评论 -
kafka系列(一)——kafka概述
第1章 Kafka概述1.1 定义Kafka 是一个分布式的基于【发布/订阅模式】的消息队列(Message Queue),主要应用于大数据实时处理领域。1.2 消息队列消息队列又称消息引擎,消息中间件1.2.1 传统消息队列的应用场景使用消息队列的好处1)解耦:允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2)冗余:消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入-获取-删除"原创 2021-08-10 15:43:36 · 243 阅读 · 0 评论 -
structstreaming消费kafka,报找不到kafka source
执行脚本:spark-submit --class com.bigdata.SparkDemo --master yarn --deploy-mode client --driver-memory 1g /tmp/StructStreamingdemo-1.0-SNAPSHOT.jar报错信息如下Exception in thread "main" org.apache.spark.sql.AnalysisException: Failed to find data source: kafka..原创 2021-05-14 17:21:32 · 1908 阅读 · 0 评论 -
sparkstreaming消费kafka数据如何管理offsets
1、kafka本身2、外部存系统zookeeper、hbase、mysql、redis、hdfs等3、sparkstreaming的checkpoint参考:https://www.jianshu.com/p/ef3f15cf400d原创 2020-10-31 00:12:03 · 803 阅读 · 0 评论 -
Kafka ConsumerOffsetChecker 命令失效问题解决
Kafka ConsumerOffsetChecker 命令失效问题解决原创 2017-01-17 18:20:16 · 807 阅读 · 1 评论