2022年4月9日

|NO.Z.00068|——————————|BigDataEnd|——|Hadoop&kafka.V53|——|kafka.v53|磁盘存储|零拷贝/页缓存/顺序写入.v03|

摘要: 一、 磁盘存储:顺序写入 ### 顺序写入 ~~~ 操作系统可以针对线性读写做深层次的优化, ~~~ 比如预读(read-ahead,提前将一个比较大的磁盘块读入内存) 和后写(write-behind, ~~~ 将很多小的逻辑写操作合并起来组成一个大的物理写操作)技术。 ~~~ Kafka 在设计 阅读全文

posted @ 2022-04-09 14:22 yanqi_vip 阅读(41) 评论(0) 推荐(0)

|NO.Z.00066|——————————|BigDataEnd|——|Hadoop&kafka.V51|——|kafka.v51|磁盘存储|零拷贝/页缓存/顺序写入.v01|

摘要: 一、磁盘存储:零拷贝 ### [kafka高级特性解析] ~~~ [磁盘存储:零拷贝] ~~~ [磁盘存储:页缓存] ~~~ [磁盘存储:顺序写入] ### 零拷贝 ~~~ kafka高性能,是多方面协同的结果,包括宏观架构、分布式partition存储、ISR数据同步、 ~~~ 以及“无所不用其极 阅读全文

posted @ 2022-04-09 14:21 yanqi_vip 阅读(30) 评论(0) 推荐(0)

|NO.Z.00067|——————————|BigDataEnd|——|Hadoop&kafka.V52|——|kafka.v52|磁盘存储|零拷贝/页缓存/顺序写入.v02|

摘要: 一、磁盘存储:页缓存 ### 页缓存 ~~~ 页缓存是操作系统实现的一种主要的磁盘缓存,以此用来减少对磁盘 I/O 的操作。 ~~~ 具体来说,就是把磁盘中的数据缓存到内存中,把对磁盘的访问变为对内存的访问。 ~~~ Kafka接收来自socket buffer的网络数据,应用进程不需要中间处理、直 阅读全文

posted @ 2022-04-09 14:21 yanqi_vip 阅读(40) 评论(0) 推荐(0)

|NO.Z.00065|——————————|BigDataEnd|——|Hadoop&kafka.V50|——|kafka.v50|日志清理|

摘要: 一、日志压缩策略 ### 概念 ~~~ 日志压缩是Kafka的一种机制,可以提供较为细粒度的记录保留, ~~~ 而不是基于粗粒度的基于时间的保留。 ~~~ 对于具有相同的Key,而数据不同,只保留最后一条数据,前面的数据在合适的情况下删除。 ### 应用场景 ~~~ 日志压缩特性,就实时计算来说,可 阅读全文

posted @ 2022-04-09 14:20 yanqi_vip 阅读(25) 评论(0) 推荐(0)

|NO.Z.00063|——————————|BigDataEnd|——|Hadoop&kafka.V48|——|kafka.v48|日志存储索引|偏移量索引|时间戳索引.v03|

摘要: 一、时间戳索引 ### 时间戳 ~~~ 在偏移量索引文件中,索引数据都是顺序记录 offset , ~~~ 但时间戳索引文件中每个追加的索引时间戳必须大于之前追加的索引项,否则不予追加。 ~~~ 在 Kafka 0.11.0.0 以后,消息信息中存在若干的时间戳信息。 ~~~ 如果 broker 端 阅读全文

posted @ 2022-04-09 14:19 yanqi_vip 阅读(57) 评论(0) 推荐(0)

|NO.Z.00064|——————————|BigDataEnd|——|Hadoop&kafka.V49|——|kafka.v49|日志清理|

摘要: 一、日志清理 ### 日志清理 ~~~ # Kafka 提供两种日志清理策略: ~~~ 日志删除:按照一定的删除策略,将不满足条件的数据进行数据删除 ~~~ 日志压缩:针对每个消息的 Key 进行整合,对于有相同 Key 的不同 Value 值,只保留最后一个版本。 ~~~ Kafka 提供 log 阅读全文

posted @ 2022-04-09 14:19 yanqi_vip 阅读(25) 评论(0) 推荐(0)

|NO.Z.00061|——————————|BigDataEnd|——|Hadoop&kafka.V46|——|kafka.v46|日志存储索引|偏移量索引|时间戳索引.v01|

摘要: 一、日志存储 ### [kafka高级特性解析] ~~~ [日志存储索引] ~~~ [偏移量索引] ~~~ [时间戳索引] ### 索引 ~~~ 偏移量索引文件用于记录消息偏移量与物理地址之间的映射关系。 ~~~ 时间戳索引文件则根据时间戳查找对应的偏移量。 ~~~ # 文件: ~~~ # 查看一个 阅读全文

posted @ 2022-04-09 14:18 yanqi_vip 阅读(39) 评论(0) 推荐(0)

|NO.Z.00062|——————————|BigDataEnd|——|Hadoop&kafka.V47|——|kafka.v47|日志存储索引|偏移量索引|时间戳索引.v02|

摘要: 一、偏移量索引 ### 位置索引保存在index文件中 ~~~ log日志默认每写入4K(log.index.interval.bytes设定的),会写入一条索引信息到index文件中, ~~~ 因此索引文件是稀疏索引,它不会为每条日志都建立索引信息。 ~~~ log文件中的日志,是顺序写入的,由m 阅读全文

posted @ 2022-04-09 14:18 yanqi_vip 阅读(37) 评论(0) 推荐(0)

|NO.Z.00059|——————————|BigDataEnd|——|Hadoop&kafka.V44|——|kafka.v44|自定义分配策略|

摘要: 一、自定义分配策略 ### 自定义分配策略 ~~~ 自定义的分配策略必须要实现 ~~~ org.apache.kafka.clients.consumer.internals.PartitionAssignor接口 ~~~ PartitionAssignor接口的定义如下: Subscription 阅读全文

posted @ 2022-04-09 14:17 yanqi_vip 阅读(25) 评论(0) 推荐(0)

|NO.Z.00060|——————————|BigDataEnd|——|Hadoop&kafka.V45|——|kafka.v45|日志存储概述|

摘要: 一、日志存储概述 ### 日志存储概述 ~~~ Kafka 消息是以主题为单位进行归类,各个主题之间是彼此独立的,互不影响。 ~~~ 每个主题又可以分为一个或多个分区。 ~~~ 每个分区各自存在一个记录消息数据的日志文件。 [root@hadoop01 ~]# ls /opt/yanqi/serve 阅读全文

posted @ 2022-04-09 14:17 yanqi_vip 阅读(35) 评论(0) 推荐(0)

|NO.Z.00058|——————————|BigDataEnd|——|Hadoop&kafka.V43|——|kafka.v43|分区分配策略.v02|

摘要: 一、多重分区分配算法:RoundRobinAssignor ### RoundRobinAssignor ~~~ RoundRobinAssignor的分配策略是将消费组内订阅的所有Topic的分区 ~~~ 及所有消费者进行排序后尽量均衡的分配(RangeAssignor是针对单个Topic的分区进 阅读全文

posted @ 2022-04-09 14:16 yanqi_vip 阅读(38) 评论(0) 推荐(0)

|NO.Z.00056|——————————|BigDataEnd|——|Hadoop&kafka.V41|——|kafka.v41|修改分区副本|

摘要: 一、修改分区副本 ### 修改分区副本 ~~~ # 实际项目中, ~~~ 我们可能由于主题的副本因子设置的问题, ~~~ 需要重新设置副本因子或者由于集群的扩展,需要重新设置副本因子。 ~~~ topic一旦使用又不能轻易删除重建,因此动态增加副本因子就成为最终的选择。 ~~~ # 说明: ~~~ 阅读全文

posted @ 2022-04-09 14:15 yanqi_vip 阅读(42) 评论(0) 推荐(0)

|NO.Z.00057|——————————|BigDataEnd|——|Hadoop&kafka.V42|——|kafka.v42|分区分配策略.v01|

摘要: 一、分区分配策略 ### 分区分配策略 ~~~ 在Kafka中,每个Topic会包含多个分区, ~~~ 默认情况下一个分区只能被一个消费组下面的一个消费者消费,这里就产生了分区分配的问题。 ~~~ Kafka中提供了多重分区分配算法(PartitionAssignor)的实现: ~~~ RangeA 阅读全文

posted @ 2022-04-09 14:15 yanqi_vip 阅读(38) 评论(0) 推荐(0)

|NO.Z.00055|——————————|BigDataEnd|——|Hadoop&kafka.V40|——|kafka.v40|自动再分配|

摘要: 一、自动再均衡 ### [kafka高级特性解析] ~~~ [自动再均衡] ~~~ [broker宕机分区自动分配] ~~~ [broker宕机启动主题分区恢复初始状态] ### 自动再均衡 ~~~ 我们可以在新建主题的时候,手动指定主题各个Leader分区以及Follower分区的分配情况, ~~ 阅读全文

posted @ 2022-04-09 14:14 yanqi_vip 阅读(28) 评论(0) 推荐(0)

|NO.Z.00052|——————————|BigDataEnd|——|Hadoop&kafka.V37|——|kafka.v37|分区重新分配.v01|

摘要: 一、分区重新分配 ### [kafka高级特性解析] ~~~ [分区重新分配] ~~~ [创建kafka集群实例二] ~~~ [自定义分配分区] ### 分区重新分配 ~~~ 向已经部署好的Kafka集群里面添加机器,我们需要从已经部署好的Kafka节点中复制相应的配置文件, ~~~ 然后把里面的b 阅读全文

posted @ 2022-04-09 14:13 yanqi_vip 阅读(22) 评论(0) 推荐(0)

|NO.Z.00053|——————————|BigDataEnd|——|Hadoop&kafka.V38|——|kafka.v38|分区重新分配.v02|

摘要: 一、创建kafka集群实例二: ### 添加kafka实例二:在hadoop02搭建Kafka;此处不需要zookeeper,切记!!! ### 配置hosts文件 [root@hadoop02 ~]# vim /etc/hosts 192.168.1.111 hadoop01 192.168.1. 阅读全文

posted @ 2022-04-09 14:13 yanqi_vip 阅读(36) 评论(0) 推荐(0)

|NO.Z.00054|——————————|BigDataEnd|——|Hadoop&kafka.V39|——|kafka.v39|分区重新分配.v03|

摘要: 一、自定义分配分区:分区重新分配实例 ### 查看主题 ~~~ # 把hadoop02上tp_re_01的partition3/4分区重新分配到hadoop02上 [root@hadoop01 ~]# kafka-topics.sh --zookeeper localhost:2181/myKafk 阅读全文

posted @ 2022-04-09 14:13 yanqi_vip 阅读(13) 评论(0) 推荐(0)

|NO.Z.00051|——————————|BigDataEnd|——|Hadoop&kafka.V36|——|kafka.v36|Leader选举|

摘要: 一、Leader选举 ### 下图中 ~~~ 分区P1的Leader是0,ISR是0和1 ~~~ 分区P2的Leader是2,ISR是1和2 ~~~ 分区P3的Leader是1,ISR是0,1,2。 ~~~ # 生产者和消费者的请求都由Leader副本来处理。 ~~~ Follower副本只负责消费 阅读全文

posted @ 2022-04-09 14:12 yanqi_vip 阅读(31) 评论(0) 推荐(0)

|NO.Z.00049|——————————|BigDataEnd|——|Hadoop&kafka.V34|——|kafka.v34|偏移量管理.v03|

摘要: 一、创建一个maven项目 ### 创建一个maven项目:demo-10-kafka-groupoffsets ### 添加maven依赖 <dependencies> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kaf 阅读全文

posted @ 2022-04-09 14:11 yanqi_vip 阅读(26) 评论(0) 推荐(0)

|NO.Z.00050|——————————|BigDataEnd|——|Hadoop&kafka.V35|——|kafka.v35|副本机制|

摘要: 一、副本机制 ### Kafka在一定数量的服务器上对主题分区进行复制。 ~~~ # 当集群中的一个broker宕机后系统可以自动故障转移到其他可用的副本上,不会造成数据丢失。 ~~~ # --replication-factor 3 1leader+2follower ~~~ 将复制因子为1的未复 阅读全文

posted @ 2022-04-09 14:11 yanqi_vip 阅读(26) 评论(0) 推荐(0)

导航