confluent介绍

confluent介绍

服务功能组成:

Zookeeper、Kafka
Control Center、Kafka-rest、Schema-Registry、Connect、ksql-server 。详情可参考Confluent介绍及其使用
实时数据管理功能:表同步、指标实时统计、诊断程序链、监测数据服务等

KSQLDB

通过将ksqlDB简化为仅两件事,有助于简化如何编写和部署流数据管道:存储(Kafka)和计算(ksqlDB)。
可以使用一致,强大的SQL语言将所有流转换,合并和聚合在一起,管理数据管道的端到端流。

KSQL

KSQL是一个用于Apache kafka的流式SQL引擎,KSQL在内部使用Kafka的Streams API,并且它们共享与Kafka流处理相同的核心抽象,KSQL有两个核心抽象,对应于到Kafka Streams中的两个核心抽象(实时流、实时表),可以处理kafka的topic数据。
流:为了实现毫秒级处理延迟,采用一次记录一次处理。此外,随着记录的延迟到来,它支持基于事件时间的窗口操作。
每个实时流、实时表分别对应一个kafka主题
实时表和实时流区别在于,1.实时表会更新数据,实时流只会增加数据。2.实时表需要使用聚合函数

avro

Avro是一个数据序列化系统,用于支持大批量数据交换的应用。

主要特点:支持二进制序列化方式,可以便捷,快速地处理大量数据;动态语言友好,Avro依赖模式(Schema)来实现数据结构定义。
详情,可参考Apache Avro是什么干什么用的(RPC/序列化)

Kafka Connect和Schema Registry

topic包含了消息,每个消息是键值对类型,可以被序列化avro,json,protobuf。schema定义了数据结构。Schema Registry 定义了schema包含的范围(subject)。
Schema Registry 管理编/解码使用的 Schema、处理编码或解码请求并返回结果。为Kafka消费者和Kafka生产商管理Avro Schemas。

  • 为每个注册的模式分配全局唯一ID。保证分配的ID单调增加,但不一定连续。

  • Kafka提供了持久的后端,并充当Schema Registry及其所包含架构的状态的预写更改日志。

  • Schema Registry设计为具有单一主节点体系结构的分布式,并且ZooKeeper / Kafka协调主要节点(基于配置)。

从kafka读取或写入数据时,使用转换类可以让Kafka Connect部署支持特定格式数据。反之,任务使用转换器改变数据格式从字节到连接器内部数据格式。

JsonSchemaConverter io.confluent.connect.json.JsonSchemaConverter: use with Schema Registry(所有schema被一个schema Registry管理)
JsonConverter org.apache.kafka.connect.json.JsonConverter (without Schema Registry): use with structured data

连接器和转换器解耦,jdbc数据源使用avro转换器,可以写入到HDFS。

同步模式

全量:bulk
增量:时间戳,自增主键,时间戳+自增主键

connector

kafka安装目录config下
source:file-source、jdbc-source、hdfs-source
sink:elasticsearch-sink、jdbc-sink

KAFKA

定义:

  • Apache Kafka是一个开源消息系统,由Scala写成。
  • 为处理实时数据提供一个统一、高通量、低等待的平台。
  • Kafka是一个分布式消息队列。Kafka对消息保存时根据Topic进行归类,发送消息者称为Producer,消息接受者称为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)称为broker。
  • 依赖于zookeeper集群保存一些meta信息,来保证系统可用性。

补充:

  • 是一个队列,不是一个数据库
  • 可用offset和timestamp定位消息

Kafka命令行操作:

1)查看当前服务器中的所有topic

bin/kafka-topics.sh --zookeeper hadoop102:2181 --list

2)创建topic

bin/kafka-topics.sh --zookeeper hadoop102:2181 \
--create --replication-factor 3 --partitions 1 --topic first

选项说明:
–topic 定义topic名
–replication-factor 定义副本数
–partitions 定义分区数
3)删除topic

bin/kafka-topics.sh --zookeeper hadoop102:2181 \
--delete --topic first

需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。
4)发送消息

bin/kafka-console-producer.sh \
--broker-list hadoop102:9092 --topic first

5)消费消息

bin/kafka-console-consumer.sh \
--zookeeper hadoop102:2181 --from-beginning --topic first
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值