Kafka MirrorMaker实践 - (a != b) ? b : a - ITeye博客
标签:
| 发表时间:2018-07-22 17:37 | 作者:
出处:http://kane-xie.iteye.com
最近准备使用Kafka Mirrormaker做两个数据中心的数据同步,以下是一些要点:
- mirrormaker必须提供一个或多个consumer配置,一个producer配置,一个whitelist或一个blacklist(支持java正则表达式)
- 启动多个mirrormaker进程,单个进程启动多个consuemr streams, 可以提高吞吐量和提高性能
- mirrormaker部署在destination datacenter,这样如果kafka集群之间发生网络问题,也不至于从src cluster拿到了数据但发不到dest cluster导致数据丢失
- mirrormaker不能防止数据循环发送,即如果使用mm将数据从ClusterA的TopicA复制到ClusterB的TopicA,另一个mm将数据从ClusterB的TopicA复制到ClusterA的TopicA,那么会产生endless loop,mm的负载会急剧上升
- mirrormaker的producer和consumer的一些配置的目标是数据不丢失,而不是高性能,它们分别是
- acks=all(kafka consumer默认1), 意味着数据被拷贝到dest cluster的所有replicas之后才响应
- retries=max integer(kafka producer默认0)
- block.on.buffer.full=true(kafka produmer默认false)
- max.in.flight.requests.per.connection=1(kafka producer默认5), 提升该值可以获得更快的速度,同时意味着如果mirrormaker挂掉,将会丢更多的数据
- auto.commit.enable=false(默认true)
- abort.on.send.failure=true(mirrormaker配置)
6. 其他配置:
- linger.ms=0(kafka producer默认0), 调高linger.ms会使mirrormaker能够将更多的消息打包发送以提升效率,同时意味着消息的平均延迟上升
7. 可以给所有需要mm的topics设置优先级,优先级高的topic将获得更低的延迟,并且能在更短的时间内重启,重启之后也能更快的追上拷贝进度
相关 [kafka mirrormaker 实践] 推荐:
- -
最近准备使用Kafka Mirrormaker做两个数据中心的数据同步,以下是一些要点:. mirrormaker必须提供一个或多个consumer配置,一个producer配置,一个whitelist或一个blacklist(支持java正则表达式). 启动多个mirrormaker进程,单个进程启动多个consuemr streams, 可以提高吞吐量和提高性能.
- -
Kakfa MirrorMaker是Kafka 官方提供的跨数据中心的流数据同步方案. 其实现原理,其实就是通过从Source Cluster消费消息然后将消息生产到Target Cluster,即普通的消息生产和消费. 用户只要通过简单的consumer配置和producer配置,然后启动Mirror,就可以实现准实时的数据同步.
- -
Kakfa MirrorMaker是Kafka 官方提供的跨数据中心的流数据同步方案. 其实现原理,其实就是通过从Source Cluster消费消息然后将消息生产到Target Cluster,即普通的消息生产和消费. 用户只要通过简单的consumer配置和producer配置,然后启动Mirror,就可以实现准实时的数据同步.
- -
原文地址: http://shiyanjun.cn/archives/934.html. 在基于Hadoop平台的很多应用场景中,我们需要对数据进行离线和实时分析,离线分析可以很容易地借助于Hive来实现统计分析,但是对于实时的 需求Hive就不合适了. 实时应用场景可以使用Storm,它是一个实时处理系统,它为实时处理类应用提供了一个计算模型,可以很容易地进行编程处理.
- -
这里翻译一篇关于 Kafka 实践的文章,内容来自 DataWorks Summit/Hadoop Summit(. Hadoop Summit)上一篇分享,PPT 见. Apache Kafka Best Pratices,里面讲述了很多关于 Kafka 配置、监控、优化的内容,绝对是在实践中总结出的精华,有很大的借鉴参考意义,本文主要是根据 PPT 的内容进行翻译及适当补充.
- - 简单之美
基于Spark通用计算平台,可以很好地扩展各种计算类型的应用,尤其是Spark提供了内建的计算库支持,像Spark Streaming、Spark SQL、MLlib、GraphX,这些内建库都提供了高级抽象,可以用非常简洁的代码实现复杂的计算逻辑、这也得益于Scala编程语言的简洁性. 这里,我们基于1.3.0版本的Spark搭建了计算平台,实现基于Spark Streaming的实时计算.
- - IT瘾-dev
(1)高可用双活架构. 如图 3 所示,Kafka 高可用特性依赖于 zookeeper 来实现,由于 zookeeper 的 paxos 算法特性,故 zookeeper 采用同城三中心部署方式,保证 zookeeper 本身高可用,通常其中两个数据中心部署偶数台机器,另一数据中心部署单台机器. Kafkabroker 跨数据中心两节点部署,所有 topic 的 partition 保证在两中心都有副本.
- - 开源软件 - ITeye博客
Apache Kafka是一款流行的分布式数据流平台,它已经广泛地被诸如New Relic(数据智能平台)、Uber、Square(移动支付公司)等大型公司用来构建可扩展的、高吞吐量的、且高可靠的实时数据流系统. 例如,在New Relic的生产环境中,Kafka群集每秒能够处理超过1500万条消息,而且其数据聚合率接近1 Tbps.
- - 掘金后端
最近,想对MySQL有进一步的认识,看如何保证缓存与数据库一致性,在负责业务上也需要这方面的优化,有些文章提到使用监听MySQL binlog实现,想试下,本文纯属好奇心驱使. 所用工具:MySQL + Canal + Kafka. 1、kafka: kafka.apache.org/quickstart(…
2、Canal: github.com/alibaba/can…
3、MySQL版本如下:.
- - DockOne.io
上一篇 Kafka 的文章《 大白话带你认识Kafka》中我们应该已经了解了一些关于基础角色和集群架构相关的问题,这时候我们应该很想了解一下如何构建生产中的Kafka集群或者一些相关的运维工具,所以就应运而生了下文. 假设每天集群需要承载10亿数据. 一天24小时,晚上12点到凌晨8点几乎没多少数据.