Kafka Connect简介

Kafka Connect简介

http://colobu.com/2016/02/24/kafka-connect/#more

Kafka 0.9+增加了一个新的特性Kafka Connect,可以更方便的创建和管理数据流管道。它为Kafka和其它系统创建规模可扩展的、可信赖的流数据提供了一个简单的模型,通过connectors可以将大数据从其它系统导入到Kafka中,也可以从Kafka中导出到其它系统。Kafka Connect可以将完整的数据库注入到Kafka的Topic中,或者将服务器的系统监控指标注入到Kafka,然后像正常的Kafka流处理机制一样进行数据流处理。而导出工作则是将数据从Kafka Topic中导出到其它数据存储系统、查询系统或者离线分析系统等,比如数据库、Elastic SearchApache Ignite等。

Kafka Connect特性包括:

  • Kafka connector通用框架,提供统一的集成API
  • 同时支持分布式模式和单机模式
  • REST 接口,用来查看和管理Kafka connectors
  • 自动化的offset管理,开发人员不必担心错误处理的影响
  • 分布式、可扩展
  • 流/批处理集成

流数据平台

基于Kafka, LinkedIn等一些大公司已经建立起架构类似的、可扩展的流数据平台。它包含两个功能,数据集成和流处理。
Kafka Connect则是为数据集成而生。

多年来,Kafka已经成为处理大数据流的平台标准,成千上万的公司在使用它。程序员在构建它们的平台的时候也遇到一些问题:

  • Schema管理
  • 容错
  • 并行化
  • 数据延迟
  • 分发担保
  • 运营与监控

这些棘手的问题都要程序员去处理,如果有一个统一的框架去完成这些事情,将可以大大减少程序员的工作量,因此Kafka 0.9中提供了这一特性,负责处理这些问题。

Kafka背后的公司confluent鼓励社区创建更多的开源的connector,将Kafka生态圈壮大起来,促进Kafka Connnect的应用。

Kafka Connnect有两个核心概念:Source和Sink。 Source负责导入数据到Kafka,Sink负责从Kafka导出数据,它们都被称为Connector。

当前Kafka Connect支持两种分发担保:at least once (至少一次) 和 at most once(至多一次),exactly once将在未来支持。

当前已有的Connectors包括:

Connector Name Owner Status
 HDFS confluent-platform@googlegroups.com Confluent supported
JDBC confluent-platform@googlegroups.com Confluent supported
Debezium - CDC Sources debezium@gmail.com Community project  
 MongoDB Source  a.patelli@reply.de
 a.topchyan@reply.de
In progress 
 MQTT Source tomasz.pietrzak@evok.ly Community project 
 MySQL Binlog Source wushujames@gmail.com In progress 
Twitter Source  rollulus@xs4all.nl In progress  
 Cassandra Sink  Cassandra Sink  Community project 
Elastic Search Sink ksenji@gmail.com Community project
Elastic Search Sink hannes.stockner@gmail.com In progress
Elastic Search Sink a.patelli@reply.de
 a.topchyan@reply.de
In progress 
Apache Ignite Sink Apache Ignite Project

Community project

(Planned for Apache Ignite 1.6 Release)

Connectors的发布和开发可以参照官方文档。如果以前你通过producer API/consumer API写了一些导入导出的功能,不妨尝试一下换成Kafka Connect,看看是否简化了你的代码,提高了应用可扩展和容错的能力。

参考文档

      1. http://www.confluent.io/blog/announcing-kafka-connect-building-large-scale-low-latency-data-pipelines
      2. http://www.confluent.io/developers/connectors
      3. http://kafka.apache.org/documentation.html#connect
      4. Kafka Producer处理逻辑

        摘要:http://1028826685.iteye.com/blog/2354541 Kafka Producer产生数据发送给Kafka Server,具体的分发逻辑及负载均衡逻辑,全部由producer维护。 Kafka结构图 Kafka Producer默认调用逻辑 默认Partition逻辑 1 阅读全文
        posted @ 2017-06-26 16:23 邹天得 阅读 (529) | 评论 (0) 编辑
         
        Kafka Producer写入消息的几种方式

        摘要:直接发送 下面是一种最简单的发送数据的方式 1 Producer接收是ProducerRecord对象,因此最开始的时候需要创建ProducerRecord的对象。ProducerRecord有好几种构造方法,稍后我们会讲到。上面例子中需要填写接收消息的topic(以啊不能都是字符串类型),想要发送 阅读全文
        posted @ 2017-06-26 16:08 邹天得 阅读 (4481) | 评论 (0) 编辑
         
        Kafka吞吐量测试

        摘要:kafka节点信息: num.network.threads=3 log.dirs=/data2/zdh/kafka/data,/data3/zdh/kafka/data,/data4/zdh/kafka/data,/data5/zdh/kafka/data,/data6/zdh/kafka/dat 阅读全文
        posted @ 2017-03-28 10:26 邹天得 阅读 (2844) | 评论 (0) 编辑
         
        Kafka学习之监控

        摘要:2015-01-04 16:20 http://blog.csdn.net/damacheng/article/details/42393895 参考文档:https://kafka.apache.org/documentation.html#monitoring Kafka使用Yammer Met 阅读全文
        posted @ 2017-03-28 10:06 邹天得 阅读 (121) | 评论 (0) 编辑
         
        Zookeeper常见错误笔记

        摘要:http://www.bubuko.com/infodetail-615044.html 时间:2015-02-03 16:40:33 阅读:859 评论:0 收藏:0 [点我收藏+] 标签:class style 代码 com log 使用 java 文件 http Zookeeper开发过程中一 阅读全文
        posted @ 2017-03-28 10:00 邹天得 阅读 (1154) | 评论 (0) 编辑
         
        Kafka的概念与知识点

        摘要:http://www.cnblogs.com/cyfonly/p/5954614.html 一、为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息 阅读全文
        posted @ 2017-03-28 09:31 邹天得 阅读 (37) | 评论 (0) 编辑
         
        Kafka consumer处理大消息数据问题

        摘要:http://www.cnblogs.com/xiaodf/p/6277761.html 案例分析 处理kafka consumer的程序的时候,发现如下错误: 如上log可以看出,问题就是有一个较大的消息数据在codeTopic的partition 3上,然后consumer未能消费,提示我可以减 阅读全文
        posted @ 2017-03-28 09:30 邹天得 阅读 (338) | 评论 (0) 编辑
         
        Kafka设计解析(一)- Kafka背景及架构介绍

        摘要:发表于 2015-03-10 | 分类于 Kafka , 大数据 , 分布式 | 评论次数 | 阅读次数 21442 | 字数 7,320 原创文章,转载请务必将下面这段话置于文章开头处。(已授权InfoQ中文站发布)本文转发自Jason’s Blog,原文链接 http://www.jasongj 阅读全文
        posted @ 2017-03-23 15:08 邹天得 阅读 (31) | 评论 (0) 编辑
         
        topic零散集合

        摘要:1、手动设置topic,分区数可以单独指定,覆盖server.properties里的分区数设置;但是副本数的指定,不能超过kafka节点数; 2、各topic整体来看,leader和副本数会均匀分布在各节点上; 3、isr的相关设置应提高; 阅读全文
        posted @ 2017-03-06 21:50 邹天得 阅读 (28) | 评论 (0) 编辑
         
        Round-Robin负载均衡算法及其实现原理

        摘要:http://security.ctocio.com.cn/securitycomment/385/8082385_2.shtml 作者:潘风文出处:IT专家网2008-04-18 12:00 【IT专家网独家】概述 毫无疑问,随着互联网、移动网络接入成本的降低,互联网正在日益深入地走入我们的生活, 阅读全文
        posted @ 2017-03-06 10:03 邹天得 阅读 (366) | 评论 (0) 编辑
         
        kafka producer性能调优

        摘要:时间 2016-12-27 18:27:00 Kami Wan 原文 http://www.kaimingwan.com/post/kafka/kafka-producerxing-neng-diao-you 主题 Apache Kafka 时间 2016-12-27 18:27:00 Kami W 阅读全文
        posted @ 2017-02-24 15:59 邹天得 阅读 (7847) | 评论 (1) 编辑
         
        kafka的一些概念和部署

        摘要:时间 2014-04-06 03:12:00 博客园-所有随笔区 原文 http://www.cnblogs.com/wanghongjun/p/3647890.html 主题 Apache Kafka 时间 2014-04-06 03:12:00 博客园-所有随笔区 原文 http://www.c 阅读全文
        posted @ 2017-02-24 15:55 邹天得 阅读 (216) | 评论 (0) 编辑
         
        Kafka学习之producer配置(0.8.1版)

        摘要:时间 2014-07-03 16:01:06 ITeye-博客 原文 http://damacheng009.iteye.com/blog/2087996 主题 Apache Kafka 时间 2014-07-03 16:01:06 ITeye-博客 原文 http://damacheng009.i 阅读全文
        posted @ 2017-02-24 15:52 邹天得 阅读 (79) | 评论 (0) 编辑
         
        Kafka Connect简介

        摘要:http://colobu.com/2016/02/24/kafka-connect/#more Kafka 0.9+增加了一个新的特性Kafka Connect,可以更方便的创建和管理数据流管道。它为Kafka和其它系统创建规模可扩展的、可信赖的流数据提供了一个简单的模型,通过connectors 阅读全文
        posted @ 2017-02-06 17:09 邹天得 阅读 (803) | 评论 (0) 编辑
         
        Kafka 内幕:源代码High level分析

        摘要:http://colobu.com/2015/03/23/kafka-internals/ Kafka 内幕:源代码High level分析 目录 [−] Boker 架构 network layer a. Boker在启动的时候会调用SocketServer的startup方法。 b. 它为每个P 阅读全文
        posted @ 2017-02-06 16:07 邹天得 阅读 (87) | 评论 (0) 编辑
         
        彻底删除Kafka中的topic(III)——Kafka topic创建、删除及partition设置

        摘要:一、 Kafka简介 Kafka为分布式发布-订阅消息系统。通过producer-topic(partition)-consumer三个环节完成消息收集及发布。 二、 命令行操作 ./kafka-topics.sh --zookeeper vmax52:2181,vmax54:2181,vmax55 阅读全文
        posted @ 2016-12-10 12:11 邹天得 阅读 (556) | 评论 (0) 编辑
         
        彻底删除Kafka中的topic等信息(II)

        摘要:停止kafka后,进行以下几个步骤: ①Zookeeper上物理删除topic: [root@zou bin]# su mr [mr@zou bin]$ cd /home/mr/zookeeper/bin [mr@zou bin]$ ls zkCli.cmd zkCli.sh [mr@zou bin 阅读全文
        posted @ 2016-12-10 12:06 邹天得 阅读 (74) | 评论 (0) 编辑
         
        彻底删除Kafka中的topic(I)

        摘要:2016-01-26 11:29 http://blog.csdn.net/fengzheku/article/details/50585972 1、删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录 2、 阅读全文
        posted @ 2016-12-10 12:04 邹天得 阅读 (50) | 评论 (0) 编辑
         
        Zookeeper在kafka中的应用

        摘要:2015-06-06 12:07 http://blog.csdn.net/tianbianlan/article/details/46387039 Zookeeper在kafka中的应用 @20150606 简介 Kafka使用zookeeper作为其分布式协调框架,很好的将消息生产、消息存储、消 阅读全文
        posted @ 2016-12-10 12:03 邹天得 阅读 (128) | 评论 (0) 编辑
         
        kafka server源代码分析(一)

        摘要:时间:2015-05-28 09:26:17 http://www.mamicode.com/info-detail-658184.html 这个是Kafka server的核心包,里面的类也很多,我们还是一个一个分析 一、BrokerStates.scala 定义了目前一个kafka broker 阅读全文
        posted @ 2016-12-09 19:13 邹天得 阅读 (540) | 评论 (0) 编辑
原文地址:https://www.cnblogs.com/Leo_wl/p/11778698.html