在kafka上对topic新增partition】的更多相关文章

对topic增加partition 参考官网site:http://kafka.apache.org/documentation.html#basic_ops_modify_topic 通过kafka-topics.sh工具的alter命令,将replicated-topic的partitions从1增加到3; > bin/kafka-topics.sh --zookeeter h1:2181 --alter --partitions 3 --topic replicated-topic 增加前…
版本 0.9.2 创建topic bin/kafka-topics.sh --create --topic topic_name --partition 6 --replication-factor 1 -zookeeper 10.27.100.207:2181,10.27.100.144:2181,10.27.100.145:2181 开启console consumer查看消息 bin/kafka-console-consumer.sh --topic rt_live_pcweb -zook…
topic中partition存储分布 Topic在逻辑上可以被认为是一个queue.每条消费都必须指定它的topic,可以简单理解为必须指明把这条消息放进哪个queue里.为了使得 Kafka的吞吐率可以水平扩展,物理上把topic分成一个或多个partition,每个partition在物理上对应一个文件夹,该文件夹下存储 这个partition的所有消息和索引文件.partiton命名规则为topic名称+有序序号,第一个partiton序号从0开始,序号最大值为partitions数量减…
Topic在逻辑上可以被认为是一个queue队列,每条消息都必须指定它的topic,可以简单理解为必须指明把这条消息放进哪个queue里.为 了使得Kafka的吞吐率可以水平扩展,物理上把topic分成一个或多个partition,每个partition在物理上对应一个文件夹,该文件夹 下存储这个partition的所有消息和索引文件. 每个日志文件都是"log entries"序列,每一个log entry包含一个4字节整型数(值为N),其后跟N个字节的消息体.每条消息都有一个当前p…
Topic在逻辑上可以被认为是一个queue队列,每条消息都必须指定它的topic,可以简单理解为必须指明把这条消息放进哪个queue里.为 了使得Kafka的吞吐率可以水平扩展,物理上把topic分成一个或多个partition,每个partition在物理上对应一个文件夹,该文件夹 下存储这个partition的所有消息和索引文件. 每个日志文件都是“log entries”序列,每一个log entry包含一个4字节整型数(值为N),其后跟N个字节的消息体.每条消息都有一个当前partit…
Kafka的Topic和Partition Topic Topic是Kafka数据写入操作的基本单元,可以指定副本 一个Topic包含一个或多个Partition,建Topic的时候可以手动指定Partition个数,个数与服务器个数相当 每条消息属于且仅属于一个Topic Producer发布数据时,必须指定将该消息发布到哪个Topic Consumer订阅消息时,也必须指定订阅哪个Topic的信息 Partition 每个Partition只会在一个Broker上,物理上每个Partitio…
需求与场景 上游某业务数据量特别大,进入到kafka一个topic中(当然了这个topic的partition数必然多,有人肯定疑问为什么非要把如此庞大的数据写入到1个topic里,历史留下的问题,现状就是如此庞大的数据集中在一个topic里).这就需要根据一些业务规则把这个大数据量的topic数据分发到多个(成百上千)topic中,以便下游的多个job去消费自己topic的数据,这样上下游之间的耦合性就降低了,也让下游的job轻松了很多,下游的job只处理属于自己的数据,避免成百上千的job都…
需求与场景 上游某业务数据量特别大,进入到kafka一个topic中(当然了这个topic的partition数必然多,有人肯定疑问为什么非要把如此庞大的数据写入到1个topic里,历史留下的问题,现状就是如此庞大的数据集中在一个topic里).这就需要根据一些业务规则把这个大数据量的topic数据分发到多个(成百上千)topic中,以便下游的多个job去消费自己topic的数据,这样上下游之间的耦合性就降低了,也让下游的job轻松了很多,下游的job只处理属于自己的数据,避免成百上千的job都…
众所周知,Apache Kafka是基于生产者和消费者模型作为开源的分布式发布订阅消息系统(当然,目前Kafka定位于an open-source distributed event streaming platform),由Scala和Java编写. Kafka提供了类似于JMS的特性,但设计上又有很大区别,它不是JMS规范的实现,如Kafka允许多个消费者主动拉取数据,而在JMS中只有点对点模式消费者才会主动拉取数据. Kafka producer在向Kafka集群发送消息时,需要指定top…
参数的设定:参考资料 不错的资料:http://blog.csdn.net/honglei915/article/details/37697655 http://developer.51cto.com/art/201501/464491.htm 注意:在配置文件server.properties中指定了partition的数量num.partitions.这指的是多单个topic的partition数量之和.若有多个broker,可能partition分布在不同的节点上,则多个broker的所有…
转载自:  https://yq.aliyun.com/ziliao/65771 参考:  Kafka集群partition replication默认自动分配分析    如何为kafka选择合适的partitions 1.前言 一个商业化消息队列的性能好坏,其文件存储机制设计是衡量一个消息队列服务技术水平和最关键指标之一. 下面将从Kafka文件存储机制和物理结构角度,分析Kafka是如何实现高效文件存储,及实际应用效果. 2.Kafka文件存储机制 Kafka部分名词解释如下: Broker…
消息的存储原理: 消息的文件存储机制: 前面我们知道了一个 topic 的多个 partition 在物理磁盘上的保存路径,那么我们再来分析日志的存储方式.通过 [root@localhost ~]# ls /tmp/kafka-logs/firstTopic-1/命令找到对应 partition 下的日志内容:       00000000000000000000.index 00000000000000000000.log        00000000000000000000.timein…
一.kafka的副本机制 由于Producer和Consumer都只会与Leader角色的分区副本相连,所以kafka需要以集群的组织形式提供主题下的消息高可用.kafka支持主备复制,所以消息具备高可用和持久性. 一个分区可以有多个副本,这些副本保存在不同的broker上.每个分区的副本中都会有一个作为Leader.当一个broker失败时,Leader在这台broker上的分区都会变得不可用,kafka会自动移除Leader,再其他副本中选一个作为新的Leader. 在通常情况下,增加分区可…
前言 当我们在shell中执行topic删除命令的时候` kafka-topics --delete --topic xxxx --zookeeper xxx`,会显示,xxxx已经被标记为删除.然后过了很久你再查看topic列表,发现那个topic依然被标记删除,显然删除没有真正执行.下面就深入了解,kafka删除topic的流程. 先说结论 delete.topic.enable,配置默认是false,意思是 是否允许kafka集群删除topic,只有为true的情况,kafka才会删除那些…
转载自 huxihx,原文链接 Kafka如何创建topic? 目录 一.命令行部分 二.后台逻辑部分 Kafka创建topic命令很简单,一条命令足矣: bin/kafka-topics. --replication-factor --partitions --topic test 这条命令会创建一个名为test的topic,有3个分区,每个分区需分配3个副本.那么在这条命令之后Kafka又做了什么事情呢?本文将对此进行一下梳理,完整地阐述Kafka topic是如何创建的. topic创建主…
Topic在逻辑上可以被认为是一个queue队列,每条消息都必须指定它的topic,可以简单理解为必须指明把这条消息放进哪个queue里.为 了使得Kafka的吞吐率可以水平扩展,物理上把topic分成一个或多个partition,每个partition在物理上对应一个文件夹,该文件夹 下存储这个partition的所有消息和索引文件. 每个日志文件都是“log entries”序列,每一个log entry包含一个4字节整型数(值为N),其后跟N个字节的消息体.每条消息都有一个当前partit…
引言 上一期我们对比了三类消息产品(Kafka.RabbitMQ.RocketMQ)单纯发送小消息的性能,受到了程序猿们的广泛关注,其中大家对这种单纯的发送场景感到并不过瘾,因为没有任何一个网站的业务只有发送消息.本期,我们就来模拟一个真实的场景: 消息的发送和订阅一定是共存的 要支持多个订阅端订阅自己感兴趣的消息鉴于上一期Kafka和RocketMQ的指标和关注度很高,本期我们将只针对这两个产品,对比在上述场景中,究竟谁更胜一筹.在正式开始测试之前,首先要向大家明确2个概念: Topic为何物…
(二)Kafka动态增加Topic的副本(Replication) 1. 查看topic的原来的副本分布 [hadoop@sdf-nimbus-perf ~]$ le-kafka-topics.sh --describe --topic http_zhixin_line1 Topic:http_zhixin_line1 PartitionCount:3 ReplicationFactor:1 Configs: Topic: http_zhixin_line1 Partition: 0 Leade…
参考site:https://cwiki.apache.org/confluence/display/KAFKA/Replication+tools 目前我们的topic  test-add-replication-topic中partition 0的replicas为[1,2],则1为preferred replica,应该成为leader. 这时我们期望2为preferred replica,并变成leader. 操作步骤: 1. 查看当前topic详细信息: > bin/kafka-top…
  Kafka中操作topic时 Error: Failed to parse the broker info from zookeeper 1.问题描述   2.问题原因     kafka在启动后,会将broker的信息存放在对应的zookeeper里的zNode中,默认存放在zookeeper中的路径 /broker/ids/xxx(当然如果在kafka的server.properties文件中指定zookeeper中的路径/kafka,那么对应的zNode也会在/kafka下创建)  …
Kafka如何删除topic? 今天为大家带来“Kafka删除topic原理解析”,希望可以帮到那些苦于无法删除topic的朋友们. 前提条件: 在启动broker时候开启删除topic的开关,即在server.properties中添加:  delete.topic.enable=true 命令: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --delete --topic my_topic_name 这条命令其实就是在zookeep…
引言 上一期我们对比了三类消息产品(Kafka.RabbitMQ.RocketMQ)单纯发送小消息的性能,受到了程序猿们的广泛关注,其中大家对这种单纯的发送场景感到并不过瘾,因为没有任何一个网站的业务只有发送消息.本期,我们就来模拟一个真实的场景: 消息的发送和订阅一定是共存的 要支持多个订阅端订阅自己感兴趣的消息鉴于上一期Kafka和RocketMQ的指标和关注度很高,本期我们将只针对这两个产品,对比在上述场景中,究竟谁更胜一筹.在正式开始测试之前,首先要向大家明确2个概念: Topic为何物…
Tapdata Cloud cloud.tapdata.net Tapdata Cloud 是国内首家异构数据库实时同步云平台,目前支持Oracle.MySQL.PG.SQL Server.MongoDB.ES .达梦.Kafka.GP.MQ.ClickHouse.Hazelcast Cloud.ADB MySQL.ADB PostgreSQL.KunDB.TiDB.Dummy DB之间的数据同步,即将支持 DB2.Sybase ASE.Redis.GBase.GaussDB 等,并对用户永久免…
使用Kafka的同学都知道,我们每次创建Kafka主题(Topic)的时候可以指定分区数和副本数等信息,如果将这些属性配置到server.properties文件中,以后调用Java API生成的主题将使用默认值,先改变需要使用命令bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic --config max.message.bytes=128000显示的修改,我们也希望将此过程在Producer调用之前通…
shell 脚本: 1)列出只有一个副本的topic,保存到一个文件中: [root@hdp05 src]# cat fush.sh #!/bin/bash # topics=`/usr/hdp//kafka/bin/kafka-topics.sh --zookeeper -list` for i in $topics;do replicsNum=`/usr/hdp//kafka/bin/kafka-topics.sh --zookeeper -describe --topic $i|grep…
删除Kafka中的topic 一.配置delete.topic.enable=true 二.其他方法 一.配置delete.topic.enable=true 修改kafaka配置文件server.properties, 添加delete.topic.enable=true,重启kafka,之后通过kafka命令行就可以直接删除topic   通过命令行删除topic:     ./bin/kafka-topics.sh --delete --zookeeper {zookeeper serve…
Kafka创建topic命令很简单,一条命令足矣:bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 3 --topic test 这条命令会创建一个名为test的topic,有3个分区,每个分区需分配3个副本.那么在这条命令之后Kafka又做了什么事情呢?本文将对此进行一下梳理,完整地阐述Kafka topic是如何创建的. topic创建主要分为两个部分:命令行…
由于项目原因,最近经常碰到Kafka消息队列拥堵的情况.碰到这种情况为了不影响在线系统的正常使用,需要大家手动的清理Kafka Log.但是清理Kafka Log又不能单纯的去删除中间环节产生的日志,中间关联的很多东西需要手动同时去清理,否则可能会导致删除后客户端无法消费的情况. 在介绍手动删除操作之前,先简单的介绍一下Kafka消费Offset原理. 一.Kafka消费Offset 在通过Client端消费Kafka中的消息时,消费的消息会同时在Zookeeper和Kafka Log中保存,如…
Topic xxx not present in metadata after 60000 ms 一.背景 二.场景还原 1.jar包引入 2.jar代码 3.运行结果 三.问题解决 四.参考文档 一.背景 今天尝试使用 kafka 的 生产者 api 写一下,消息发送,结果遇到以下问题, Topic xxx not present in metadata after 60000 ms,找了半天结果发现是jar包引入不全导致的,为防以后忘记,在此记录一下. 二.场景还原 1.jar包引入 <de…
如果只是用kafka-topics.sh的delete命令删除topic,会有两种情况: 如果当前topic没有使用过即没有传输过信息:可以彻底删除 如果当前topic有使用过即有过传输过信息:并没有真正删除topic只是把这个topic标记为删除(marked for deletion). 要彻底把情况2中的topic删除必须把kafka中与当前topic相关的数据目录和zookeeper与当前topic相关的路径一并删除. 相关组件的版本 zookeeper: 3.4.6 kafka: 0.…