上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 69 下一页

2022年4月10日

|NO.Z.00074|——————————|BigDataEnd|——|Hadoop&kafka.V59|——|kafka.v59|稳定性|控制器|

摘要: 一、控制器 ### 控制器 ~~~ Kafka集群包含若干个broker,broker.id指定broker的编号,编号不要重复。 ~~~ Kafka集群上创建的主题,包含若干个分区。 ~~~ 每个分区包含若干个副本,副本因子包括了Follower副本和Leader副本。 ~~~ 副本又分为ISR( 阅读全文

posted @ 2022-04-10 13:50 yanqi_vip 阅读(11) 评论(0) 推荐(0)

|NO.Z.00072|——————————|BigDataEnd|——|Hadoop&kafka.V57|——|kafka.v57|稳定性|幂等性|

摘要: 一、稳定性:幂等性 ### 幂等性 ~~~ Kafka在引入幂等性之前,Producer向Broker发送消息, ~~~ 然后Broker将消息追加到消息流中后给Producer返回Ack信号值。实现流程如下: ~~~ 生产中,会出现各种不确定的因素,比如在Producer在发送给Broker的时候 阅读全文

posted @ 2022-04-10 13:49 yanqi_vip 阅读(39) 评论(0) 推荐(0)

|NO.Z.00071|——————————|BigDataEnd|——|Hadoop&kafka.V56|——|kafka.v56|稳定性|事务相关配置.v03|

摘要: 一、事务的中止 ### 事务的中止 ~~~ 当事务生产者发送业务消息的时候如果发生异常,可以中止该事务。 ~~~ 如果事务提交超时,事务协调器也会中止当前事务。 ~~~ # Producer:向事务协调器发送AbortTransaction(TxId)请求并等待响应。 ~~~ (一个没有异常的响应表 阅读全文

posted @ 2022-04-10 13:48 yanqi_vip 阅读(55) 评论(0) 推荐(0)

|NO.Z.00070|——————————|BigDataEnd|——|Hadoop&kafka.V55|——|kafka.v55|稳定性|事务相关配置.v02|

摘要: 一、事务概览 ### 事务概览 ~~~ 生产者将表示事务开始/结束/中止状态的事务控制消息发送给 ~~~ 使用多阶段协议管理事务的高可用==事务协调器==。 ~~~ 生产者将事务控制记录(开始/结束/中止)发送到事务协调器, ~~~ 并将事务的消息直接发送到目标数据分区。 ### 消费者需要了解事务 阅读全文

posted @ 2022-04-10 13:47 yanqi_vip 阅读(31) 评论(0) 推荐(0)

|NO.Z.00069|——————————|BigDataEnd|——|Hadoop&kafka.V54|——|kafka.v54|稳定性|事务相关配置.v01|

摘要: 一、稳定性:事务相关配置 ### 事务场景 ~~~ 如producer发的多条消息组成一个事务这些消息需要对consumer同时可见或者同时不可见。 ~~~ producer可能会给多个topic,多个partition发消息,这些消息也需要能放在一个事务里面, ~~~ 这就形成了一个典型的分布式事 阅读全文

posted @ 2022-04-10 13:46 yanqi_vip 阅读(26) 评论(0) 推荐(0)

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 阅读(41) 评论(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)

|NO.Z.00046|——————————|BigDataEnd|——|Hadoop&kafka.V31|——|kafka.v31|kafkaAdminclient应用.v02|

摘要: 一、KafkaAdminClient应用实现流程 ### 主要操作步骤: ~~~ 客户端根据方法的调用创建相应的协议请求, ~~~ 比如创建Topic的createTopics方法,其内部就是发送CreateTopicRequest请求。 ~~~ 客户端发送请求至Kafka Broker。 ~~~ 阅读全文

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

|NO.Z.00047|——————————|BigDataEnd|——|Hadoop&kafka.V32|——|kafka.v32|偏移量管理.v01|

摘要: 一、偏移量管理 ### 偏移量管理 ~~~ Kafka 1.0.2,__consumer_offsets主题中保存各个消费组的偏移量。 ~~~ 早期由zookeeper管理消费组的偏移量。 ### 查询方法: ~~~ 通过原生 kafka 提供的工具脚本进行查询。 ~~~ 工具脚本的位置与名称为bi 阅读全文

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

|NO.Z.00048|——————————|BigDataEnd|——|Hadoop&kafka.V33|——|kafka.v33|偏移量管理.v02|

摘要: 一、偏移量管理实例[需要启动代码程序查看] ### 查看指定group.id 的消费者消费情况 [root@hadoop ~]# kafka-consumer-groups.sh --bootstrap-server localhost:9092 \ --describe --group group 阅读全文

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

|NO.Z.00044|——————————|BigDataEnd|——|Hadoop&kafka.V29|——|kafka.v29|增加分区.v02|

摘要: 一、必要参数配置 1、必要参数配置 kafka-topics.sh --config xx=xx --config yy=yy 二、配置给主题的参数。 属性 默认值 服务器默认属性 说明 cleanup.policy delete log.cleanup.policy 要么是”delete“要么是” 阅读全文

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

|NO.Z.00045|——————————|BigDataEnd|——|Hadoop&kafka.V30|——|kafka.v30|kafkaAdminclient应用.v01|

摘要: 一、KafkaAdminClient应用 ### KafkaAdminClient应用说明 ~~~ 除了使用Kafka的bin目录下的脚本工具来管理Kafka, ~~~ 还可以使用管理Kafka的API将某些管理查看的功能集成到系统中。 ~~~ 在Kafka0.11.0.0版本之前,可以通过kafk 阅读全文

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

|NO.Z.00042|——————————|^^ 创建 ^^|——|Hadoop&kafka.V27|——|kafka.v27|主题管理.v02|

摘要: 一、修改主题 ### 为topic_x加入segment.bytes配置 [root@hadoop ~]# kafka-topics.sh --zookeeper localhost:2181/myKafka --alter \ --topic topic_x --config segment.by 阅读全文

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

|NO.Z.00043|——————————|BigDataEnd|——|Hadoop&kafka.V28|——|kafka.v28|增加分区.v01|

摘要: 一、增加分区 ### 创建主题:分区副本均为1 [root@hadoop ~]# kafka-topics.sh --zookeeper localhost:2181/myKafka \ --create --topic topic_demo_001 --partitions 1 --replica 阅读全文

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

|NO.Z.00041|——————————|^^ 创建 ^^|——|Hadoop&kafka.V26|——|kafka.v26|主题管理.v01|

摘要: 一、主题管理:创建主题 ### 方案一:创建主题 ~~~ # 创建主题 [root@hadoop ~]# kafka-topics.sh --zookeeper localhost:2181/myKafka --create --topic topic_x \ --partitions 3 --re 阅读全文

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

|NO.Z.00039|——————————|BigDataEnd|——|Hadoop&kafka.V24|——|kafka.v24|消费组管理|

摘要: 一、消费组管理:消费者组 (Consumer Group) ### 什么是消费者组 ~~~ consumer group是kafka提供的可扩展且具有容错性的消费者机制。 ### 三个特性: ~~~ 消费组有一个或多个消费者,消费者可以是一个进程,也可以是一个线程 ~~~ group.id是一个字符 阅读全文

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

|NO.Z.00040|——————————|BigDataEnd|——|Hadoop&kafka.V25|——|kafka.v25|主题管理参数说明|

摘要: 一、主题管理参数说明:使用kafka-topics.sh脚本: 选项 说明 -config<String:name=value> 为创建的或修改的主题指定配置信息。支持下述配置条目:cleanup.policycompression.typedelete.retention.msfile.delet 阅读全文

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

|NO.Z.00038|——————————|BigDataEnd|——|Hadoop&kafka.V23|——|kafka.v23|消费者拦截器参数配置|

摘要: 一、消费者拦截器参数配置:消费者参数配置补充 配置项 说明 bootstrap.servers 建立到Kafka集群的初始连接用到的host/port列表。客户端会使用这里指定的所有的host/port来建立初始连接。这个配置仅会影响发现集群所有节点的初始连接。形式:host1:port1,host 阅读全文

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

|NO.Z.00036|——————————|BigDataEnd|——|Hadoop&kafka.V21|——|kafka.v21|消费者拦截器实验案例.v01|

摘要: 一、消费者拦截器 ### 消费者拦截器 ~~~ 消费者在拉取了分区消息之后,要首先经过反序列化器对key和value进行反序列化处理。 ~~~ 处理完之后, ~~~ 如果消费端设置了拦截器,则需要经过拦截器的处理之后,才能返回给消费者应用程序进行处理。 ~~~ 如果拦截器是null,表示没有配置消费 阅读全文

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

|NO.Z.00037|——————————|BigDataEnd|——|Hadoop&kafka.V22|——|kafka.v22|消费者拦截器实验案例.v02|

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

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

|NO.Z.00033|——————————|BigDataEnd|——|Hadoop&kafka.V18|——|kafka.v18|消费者位移管理.v01|

摘要: 一、消费者位移管理 ### 消费者位移管理 ~~~ Kafka中,消费者根据消息的位移顺序消费消息。 ~~~ 消费者的位移由消费者管理可以存储于zookeeper中也可以存储于Kafka主题__consumer_offsets中。 ~~~ Kafka提供了消费者API,让消费者可以管理自己的位移。 阅读全文

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

|NO.Z.00034|——————————|BigDataEnd|——|Hadoop&kafka.V19|——|kafka.v19|消费者位移管理.v02|

摘要: 一、消费者位移管理数据准备 ### 准备数据 ~~~ # 生成消息文件 [root@hadoop ~]# for i in `seq 60`; do echo "hello yanqi $i" >> nm.txt; done ~~~ # 创建主题,三个分区,每个分区一个副本 [root@hadoop 阅读全文

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

上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 69 下一页

导航