最开始接触confluent是通过这篇博客,How to Build a Scalable ETL Pipeline with Kafka Connect,对于做大数据的,数据的ETL(抽取,转换,装载)是必不可少的。例如,要把传统的关系型数据库中的数据导入到HDFS里,或者导入到Hive中,进一步对数据进行分析,或者把json或者文本文件中的数据导入到大数据数据仓库中进行分析。这都需要ETL。这篇文章介绍了如何利用confluent的相关组件(Kafka Connect,构建一个ETL pipeline.下图来自于这篇博客。有兴趣的可以看一下这篇博客。
Building a Scalable ETL Pipeline in 30 Minutes
confluent介绍:
LinkedIn有个三人小组出来创业了—正是当时开发出Apache Kafka实时信息列队技术的团队成员,基于这项技术Jay Kreps带头创立了新公司Confluent。Confluent的产品围绕着Kafka做的。
什么是Confluent Platform?
Confluent Platform 是一个流数据平台,能够组织管理来自不同数据源的数据,拥有稳定高效的系统。
Confluent Platform 不仅提供数据传输的系统, 还提供所有的工具:连接数据源的工具,应用, 以及数据接收。
Confluent Platform 都包括什么?
Confluent Platform 很容易的建立实时数据管道和流应用。通过将多个来源和位置的数据集成到公司一个中央数据流平台,Confluent Platform使您可以专注于如何从数据中获得商业价值而不是担心底层机制,如数据是如何被运输或不同系统间摩擦。具体来说,Confluent Platform简化了连接数据源到Kafka,用Kafka构建应用程序,以及安全,监控和管理您的Kafka的基础设施。
Kafka 是最流行的开源即时通讯系统,Confluent Platform 基于Kafka. Kafka 是低延迟,高可扩展,分布式消息系统。它被数百家企业用于许多不同的场景,包括收集用户活动数据,系统日志,应用程序指标,股票行情数据和设备仪器的信号。
Kafka开源项目包括一些关键组件:
Kafka Brokers(开源)。构成Kafka的消息,数据持久性和存储层。
Kafka Java Clients(开源)。Java 库,写消息到kafka 或者从kafka 读消息。
Kafka Streams(开源)。Kafka Streams是一个库使kafka转换成功能齐全的流处理系统。
Kafka Connect(开源)。一种可扩展的和可靠的连接Kafka框架与外部系统(如数据库,键值存储,搜索索引和文件系统)的框架。
除了Kafka以外, Confluent Platform 包括更多的工具和服务,使构建和管理数据流平台更加容易。
Confluent Control Center(闭源)。管理和监控Kafka最全面的GUI驱动系统。
Confluent Kafka Connectors(开源)。连接SQL数据库/Hadoop/Hive
Confluent Kafka Clients(开源)。对于其他编程语言,包括C/C++,Python
Confluent Kafka REST Proxy(开源)。允许一些系统通过HTTP和kafka之间发送和接收消息。
Confluent Schema Registry(开源)。帮助确定每一个应用使用正确的schema当写数据或者读数据到kafka中。
总的来说,Confluent Platform平台的组件给你的团队朝着建立统一而灵活的方式建立一个企业范围的数据流平台。
随后,我们会通过一些quickstart来介绍Confluent 的核心组件。