
Kafka
文章平均质量分 74
oo寻梦in记
这个作者很懒,什么都没留下…
展开
-
【架构设计】-- ACK 机制
用于确认接收方是否已经正确接收了发送方发送的数据。这种机制的好处是可以保证数据的可靠传输,防止数据的丢失或重复传输。如果没有ACK机制,就无法确保数据的正确性,可能会导致数据传输的失败或者错误。虽然也可以使用输入输出流来传输数据,但是这种方式无法保证数据的可靠性,因为在网络通信中,数据的传输可能会受到各种干扰和影响,如网络延迟、丢包等。因此,使用ACK机制可以更好地保证数据的可靠传输,提高数据传输的成功率和效率。原创 2024-07-04 17:14:04 · 1664 阅读 · 0 评论 -
【Kafka基础】-- Log Cleanup 策略
Min.Cleanable.dirty.ratio(默认为0.5):若是设置的更高,则会有更高效的清理,但是更少的清理操作触发。若是设置的更低,则清理的效率稍低,但是会有更多的清理操作被触发。log.cleanup.policy=delete 的策略,根据数据保留的时间、以及log的max size,对数据进行cleanup。如何处理过期数据是根据指定的policy(策略)决定的,而处理过期数据的行为,即为log cleanup。转载 2023-02-15 17:14:54 · 1402 阅读 · 0 评论 -
【Kafka基础】-- kafka核心技术与实战
Kafka核心技术与实战 Kafka核心技术与实战 Kafka核心技术与实战 Kafka核心技术与实战 Kafka核心技术与实战 Kafka核心技术与实战原创 2023-02-15 14:23:50 · 187 阅读 · 0 评论 -
【Kafka进阶】-- unclean.leader.election.enable参数的内涵
在 kafka 1.x 版本中,处于安全和可靠的考虑,有不少参数过于保守。所以用户需要按需调整1、将 broker 参数 unclean.leader.election.enable 设置为 true(确保分区可从非 ISR 中选举 leader)2、将 broker 参数 default.replication.factor 设置为 3(提高高可用,但会增大集群的存储压力,可后续讨论)原创 2023-02-15 12:08:20 · 1009 阅读 · 0 评论 -
【kafka基础】-- 读写流程及举例
1. 连接到 zk 集群,从 zookeeper 中拿到对应的 topic 的 partition 信息和 partition 的 leader 的相关信息2. 连接到对应的 leader 对应的 broker3. producer 将消息发送到 partition 的leader上4. leader 将消息写入本地 log, follower 从 leader pull 同步消息5. 写入本地 log 后,依次向 leader 返回/发送 ack6. leader 收到所有 replicatio原创 2022-06-14 15:55:36 · 3271 阅读 · 2 评论 -
【Kafka升级】-- 官方指导及注意事项
感谢英文原文链接: Apache Kafka如果要从2.1.x之前的版本升级,请参阅以下注释,以了解用于存储使用者偏移量的架构的更改。将inter.broker.protocol.version更改为最新版本后,将无法降级到2.1之前的版本。对于滚动升级:2.2.1中的显着变化2.2.0中的显着变化从0.8.x,0.9.x,0.10.0.x,0.10.1.x,0.10.2.x,0.11.0.x,1.0.x,1.1.x或2.0.0升级到2.1.0请注意,2.1.x包含对用于存储使用者偏移量的内部架构的更改。升翻译 2022-06-14 14:29:46 · 1985 阅读 · 0 评论 -
【Kafka基础】-- topic 常用管理命令汇总
1、环境Kafka 版本:2.2.1-cdh6.3.0 Java 版本: oracle jdk 1.82、常用命令2.1、查看Kafka 版本$ kafka-topics --version2.2、创建 topics$ kafka-topics --create --bootstrap-server ky-node1:9092 --replication-factor 1 --partitions 12.3、描述 topics$ kafka-topics --d..原创 2021-08-11 11:48:48 · 799 阅读 · 0 评论 -
【Kafka 基础】-- acks 机制
Kafka producer 的三种 ack 机制Kafka producer 有三种 ack 机制,可以在初始化 producer时在 config 中进行配置举例Properties props = new Properties();props.put("bootstrap.servers", "localhost:9092");props.put("acks", "all");默认值:acks=1以下是相关说明图示:acks=0producer写入 l...原创 2020-12-29 16:28:38 · 2677 阅读 · 0 评论 -
[Kafka 基础]-- 安装 kafka-manager 监控
一、Kafka 监控工具介绍 目前还没有一款公认比较优秀的 Kafka 监控工具,各有各的好,我们可以针对自己需要去选择,但是如果你是 Kafka 集群运维操作人员,还是推荐先用 Kafka Manager 来做监控。1.Kafka Manager雅虎公司开源的免费监控框架 Scala 编写的 国内外最受欢迎的、社区非常活跃 功能非常齐全且 UI 界面可执行一些简单的...原创 2019-11-12 17:33:29 · 488 阅读 · 0 评论 -
[Kafka 基础]-- Producer 参数(Kafka -0.10.2.1)
参数如下: acks = all batch.size = 16384 block.on.buffer.full = false bootstrap.servers = [localhost:9092] buffer.memory = 33554432 client.id = compression.type = none connections.max.idle.ms...原创 2019-04-19 14:55:32 · 1185 阅读 · 0 评论 -
[Kafka基础]-- 在 mac os 10.14.2上安装 kafka-1.0.x
1、 前言目前Kafka 的稳定大版本是 1.0.x,加上主流的CDH (CDH 5.13.0以上)和 HDP(hdp-3.x.x) 厂商的稳定版本也是使用 Kafka 1.0.x版本,所以,个人选择使用 Kafka-1.0.x 版本做安装测试。2、环境准备版本号稳定性发行日期下载链接Jdk1.81.8.0_1712018-04-17跳转页面Zooke...原创 2019-01-06 18:00:59 · 1133 阅读 · 0 评论 -
[Kafka基础]--命令行使用举例(CDH版本)
参考原创 2018-07-02 16:13:07 · 3341 阅读 · 0 评论 -
[Kafka基础]--怎样为Kafka集群选择合适的主题和分区数量?
感谢英文原文:https://www.confluent.io/blog/how-to-choose-the-number-of-topicspartitions-in-a-kafka-cluster/这是许多Kafka用户提出的常见问题。 这篇文章的目的是解释几个重要的决定因素,并提供一些简单的公式。 更多的分区提供更高的吞吐量首先要理解的是,主题分区是Kafka中并行性的单位。 在生产者和代理...翻译 2018-05-03 15:12:47 · 6055 阅读 · 0 评论 -
[Kafka调优]--调优Apache Kafka集群
本文转自:http://www.cnblogs.com/huxi2b/p/6936348.html今天带来一篇译文“调优Apache Kafka集群”,里面有一些观点并无太多新颖之处,但总结得还算详细。该文从四个不同的目标出发给出了各自不同的参数配置,值得大家一读~ 原文地址请参考:https://www.confluent.io/blog/optimizing-apache-kafka-depl...转载 2018-04-04 22:09:56 · 2696 阅读 · 0 评论 -
[Spark streaming 基础]--使用低阶API消费Kafka数据(手动更新offset)
版本:spark(1.6.0)+kafka(0.9.0)+zookeeper(3.4.6) 由于目前spark每天需要从kafka中消费数亿条左右的消息,集群压力比较大,会导致job不同程度的异常退出。原来使用spark1.6.0版本中的createStream函数,但是在数据处理速度跟不上数据消费速度且job异常退出的情况下,可能造成大量的数据丢失。还好,spark后续版本对这一情况有...原创 2018-04-08 11:16:09 · 2708 阅读 · 0 评论 -
[Spark streaming基础]--消费Kafka的方式对比(Receiver-based Approach vs Direct Approach)
原文链接:https://www.jianshu.com/p/b4af851286e5前言这个算是Spark Streaming 接收数据相关的第三篇文章了。 前面两篇是:Spark Streaming 数据产生与导入相关的内存分析Spark Streaming 数据接收优化Spark Streaming 接受数据的方式有两种:Receiver-based ApproachDirect Appro...转载 2018-04-08 09:41:59 · 1292 阅读 · 2 评论 -
[Kafka设计解析]--(八)Exactly Once语义与事务机制原理
本文转发自技术世界,原文链接 http://www.jasongj.com/kafka/transaction/写在前面的话本文所有Kafka原理性的描述除特殊说明外均基于Kafka 1.0.0版本。为什么要提供事务机制Kafka事务机制的实现主要是为了支持Exactly Once即正好一次语义操作的原子性有状态操作的可恢复性Exactly Once《Kafka背景及架构介绍》一文中有说明Kafk...转载 2018-03-12 14:59:52 · 780 阅读 · 0 评论 -
[Kafka基础]--自定义Kafka分区器
在调用Kafka的Producer API时,如果没有指定分区器,那么数据将会根据默认分区器的算法均分到各个分区。然而实际的生产环境中,可能Kafka的分区数不止一个(官方建议:Kafka的分区数量应该是Broker数量的整数倍!),所以这时需要我们自定义分区器。本文将从以下几个方面介绍自定义分区器的实现:1、默认分区器的实现2、我的自定义分区器实现3、自定义分区器的使用一、先...原创 2016-12-17 12:05:51 · 5320 阅读 · 1 评论 -
[Kafka基础]-- auto.offset.reset介绍
我们先看看最新的官方文档说明:What to do when there is no initial offset in Kafka or if the current offset does not exist any more on the server (e.g. because that data has been deleted):earliest: automatically ...原创 2016-12-17 12:38:37 · 8728 阅读 · 0 评论 -
[Kafka基础]-- Kafka的2套Consumer API(本文讲解SampleConsumer)
Kafka提供了两套API给ConsumerThe high-level Consumer API The SimpleConsumer API 第一种高度抽象的Consumer API,它使用起来简单、方便,但是对于某些特殊的需求我们可能要用到第二种更底层的API,那么先介绍下第二种API能够帮助我们做哪些事情一个消息读取多次 在一个处理过程中只消费Partition其中的...原创 2016-12-18 11:11:30 · 1764 阅读 · 0 评论 -
[Kafka基础]-- 集群的安装
准备:3台机器---》h15\h16\h17 每台机器都需要kafka先安装kafka到h15,其他2台机器安装一样的kafka,但是需要修改 broker.id=?(保证?不和其他kafka机器重复)1、进入kafka的zip所在目录下解压: unzip kafka_2.10-0.8.2.1.zip 2、进入目录/home/kafka_2.10-0.8.2.1/...原创 2016-06-07 09:52:42 · 881 阅读 · 0 评论 -
[Kafka基础]-- kafka指南
参考:https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocolhttp://kafka.apache.org/protocol.html 介绍 概观 预赛 网络 分区和自举 分区策略 配料 版本控制和兼容性 议定书 协议原始类型 阅读请求格式语法的...翻译 2017-07-18 18:07:45 · 852 阅读 · 0 评论 -
[Kafaka Broker Configs]--log.retention.hours
我们先看看官方最新说明:log.retention.hours :The number of hours to keep a log file before deleting it (in hours), tertiary to log.retention.ms property log.retention.minutes:The number of minutes to keep a l...原创 2018-03-09 11:33:41 · 2649 阅读 · 0 评论 -
[Kafka设计解析]--(一)Kafka背景及架构介绍
本文转发自技术世界,原文链接 http://www.jasongj.com/2015/03/10/KafkaColumn1摘要 Kafka是由LinkedIn开发并开源的分布式消息系统,因其分布式及高吞吐率而被广泛使用,现已与Cloudera Hadoop,Apache Storm,Apache Spark集成。本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对...转载 2018-03-12 13:48:05 · 412 阅读 · 0 评论 -
[Kafka设计解析]--(二)Kafka High Availability (上)
本文转发自技术世界,原文链接 http://www.jasongj.com/2015/04/24/KafkaColumn2摘要 Kafka在0.8以前的版本中,并不提供High Availablity机制,一旦一个或多个Broker宕机,则宕机期间其上所有Partition都无法继续提供服务。若该Broker永远不能再恢复,亦或磁盘故障,则其上数据将丢失。而Kafka的设计目标之一即是提供数据持...转载 2018-03-12 14:40:06 · 423 阅读 · 0 评论 -
[Kafka设计解析]--(三) Kafka High Availability (下)
本文转发自技术世界,原文链接 http://www.jasongj.com/2015/06/08/KafkaColumn3摘要 本文在上篇文章基础上,更加深入讲解了Kafka的HA机制,主要阐述了HA相关各种场景,如Broker failover,Controller failover,Topic创建/删除,Broker启动,Follower从Leader fetch数据等详细处理过程。同时介绍...转载 2018-03-12 14:44:38 · 414 阅读 · 0 评论 -
[Kafka设计解析]--(四)Kafka Consumer设计解析
本文转发自技术世界,原文链接 http://www.jasongj.com/2015/08/09/KafkaColumn4摘要 本文主要介绍了Kafka High Level Consumer,Consumer Group,Consumer Rebalance,Low Level Consumer实现的语义,以及适用场景。以及未来版本中对High Level Consumer的重新设计–使用Co...转载 2018-03-12 14:47:35 · 411 阅读 · 0 评论 -
[Kafka设计解析]--(五)Kafka性能测试方法及Benchmark报告
本文转发自技术世界,原文链接:http://www.jasongj.com/2015/12/31/KafkaColumn5_kafka_benchmark摘要 本文主要介绍了如何利用Kafka自带的性能测试脚本及Kafka Manager测试Kafka的性能,以及如何使用Kafka Manager监控Kafka的工作状态,最后给出了Kafka的性能测试报告。性能测试及集群监控工具 Kafka提...转载 2018-03-12 14:50:02 · 4947 阅读 · 0 评论 -
[Kafka设计解析]--(六)Kafka高性能架构之道
本文转发自技术世界,原文链接 http://www.jasongj.com/kafka/high_throughput/摘要上一篇文章《Kafka设计解析(五)- Kafka性能测试方法及Benchmark报告》从测试角度说明了Kafka的性能。本文从宏观架构层面和具体实现层面分析了Kafka如何实现高性能。宏观架构层面利用Partition实现并行处理Partition提供并行处理的能力Kafk...转载 2018-03-12 14:53:56 · 373 阅读 · 0 评论 -
[Kafka设计解析]--(七)Kafka Stream
本文转发自技术世界,原文链接 http://www.jasongj.com/kafka/kafka_stream/Kafka Stream背景Kafka Stream是什么Kafka Stream是Apache Kafka从0.10版本引入的一个新Feature。它是提供了对存储于Kafka内的数据进行流式处理和分析的功能。Kafka Stream的特点如下:Kafka Stream提供了一个非常...转载 2018-03-12 14:56:52 · 972 阅读 · 0 评论 -
[Flume基础]-- 使用Kafka与Flume
一、描述 在CDH 5.2及更高版本中,Flume包含Kafka源和sink。 使用这些从Kafka到Hadoop或从任何Flume源到Kafka的流数据。二、条件 在CDH 5.7及更高版本中,Kafka的Flume连接器仅适用于Kafka 2.0及更高版本。三、要点 不要配置Kafka源以将数据发送到Kafka接收器。 如果这样做,Kafka源...翻译 2016-11-22 10:22:25 · 8001 阅读 · 0 评论