博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
以Kafka Connect作为实时数据集成平台的基础架构有什么优势?
阅读量:6480 次
发布时间:2019-06-23

本文共 1180 字,大约阅读时间需要 3 分钟。

hot3.png

Kafka Connect是一种用于在Kafka和其他系统之间可扩展的、可靠的流式传输数据的工具,可以更快捷和简单地将大量数据集合移入和移出Kafka的连接器。Kafka Connect为DataPipeline提供了一个相对成熟稳定的基础框架,还提供了一些开箱即用的工具,大大地降低研发的投入和提升应用的质量。

下面,我们看一看Kafka Connect的具体优势。

首先,Kafka Connect提供的是以数据管道为中心的业务抽象。在Kafka Connect里有两个核心概念:Source和Sink。Source负责导入数据到Kafka,Sink负责从Kafka导出数据,它们都被称为Connector。比如Source Connector,Sink Connector,其实就是提供了数据读取和写入的高度业务抽象,可以简化很多生命周期的管理工作。

当然,Source Connector会去初始化Source Task,Sink Connector会去初始化Sink Task。这些都是标准的封装。对于数据方面,通过Source & Sink Record把数据的结构进行标准化的抽象。另外,企业客户在做数据集成的时候,数据在很多应用场景下都要求有一定的格式,所以在Kafka Connect里用Schema Registry & Projector来解决数据格式验证和兼容性的问题。当数据源产生变化的时候,会生成新的Schema版本,通过不同的处理策略用Projector来完成对数据格式的兼容。

第二,Kafka Connect具有良好的可伸缩性、与容错性。这些特性是与Kafka是一脉相承的。在流式处理和批量处理模式里,更多取决于Source端如何去读取数据,Kafka Connect天然支持流式处理和批量传输方式。单节点和集群水平扩展功能都是由Kafka Connect框架直接支持。而任务恢复和状态保持方面,目的端任务的写入进度信息通过Kafka Connect框架自动管理、源端任务可以根据需要往Kafka里面放读取进度信息,节省很多精力去管理任务重启后的进度。

对于数据集成这样一个通用的应用场景里,大家肯定都不希望重复发明轮子。目前,在Kafka Connect生态系统下,拥有可以直接使用的Connector共84个,绝大部分都是开源的。其中,一部分是Kafka官方提供的,另外一些是Confluent认证的,还有一些是第三方提供的。根据需求适当裁剪后,这些Connector都可以应用到自己的系统平台中。

更多关于Kafka Connect及实时数据集成的问题,欢迎关注DataPipeline微信公众号,或直接访问官方网址:。

转载于:https://my.oschina.net/u/3828502/blog/1801928

你可能感兴趣的文章
你的leader还在考核你的千行代码Bug率吗?
查看>>
多块盘制作成一个lvm
查看>>
InnoDB多版本
查看>>
贪心算法 - 活动选择问题
查看>>
独立思考与输入、吸收
查看>>
es6 includes(), startsWith(), endsWith()
查看>>
关于azkaban上传job压缩包报错问题的解决方案
查看>>
JS版日期格式化和解析工具类,毫秒级
查看>>
百度人脸对比
查看>>
Linux内存管理 一个进程究竟占用多少空间?-VSS/RSS/PSS/USS
查看>>
苹果AppStore如何申请加急审核
查看>>
SpringBoot 使用Swagger2打造在线接口文档(附汉化教程)
查看>>
Mysql一个表编码的坑,mark一下
查看>>
JS动态事件绑定问题
查看>>
在WPF应用程序中利用IEditableObject接口实现可撤销编辑的对象
查看>>
android 8 wifi wifi 扫描过程
查看>>
phalcon的save方法保存失败?
查看>>
获取任意链接文章正文 API 功能简介
查看>>
js中Math.random()生成指定范围数值的随机数
查看>>
线程类的常见方法介绍
查看>>