目录
1 Avro与Schema Registry
Apache Avro 是一种高效的数据序列化系统,用于在不同的应用程序和平台之间传输和存储数据。它提供了一种紧凑且高效的二进制数据编码格式,相比其他常见的序列化方式,Avro能够实现更快的序列化和更小的数据存储。
而Confluent Schema Registry是由Confluent公司提供的一个开源组件,旨在解决分布式系统中的数据模式演化和兼容性的问题。它是建立在Apache Avro之上的一个服务,可以用于集中管理和存储Avro数据的模式(Schema),确保分布式系统中的数据一致性和兼容性。它广泛应用于事件流处理平台(如Kafka),为数据流的可靠性和互操作性提供了支持。
2 搭建Schema Registry
2.1 下载Confluent并解压
curl -O https://packages.confluent.io/archive/7.4/confluent-community-7.4.3.tar.gz
sudo tar xvf confluent-community-7.4.3.tar.gz -C /usr/local/bin
2.2 设置环境变量
vim ~/.bashrc
添加:
export SCHEMA_REG_HOME=/usr/local/bin/confluent-7.4.3
export PAHT=$PAHT:${SCHEMA_REG_HOME}/bin
source ~/.bashrc
2.3 修改配置
获取本机IP
ip addr
修改配置文件:
vim /usr/local/bin/confluent-7.4.3/etc/schema-registry/schema-registry.properties
listeners=http://172.26.143.96:8081
kafkastore.bootstrap.servers=PLAINTEXT://172.26.143.96:9092
2.4 启动服务
schema-registry-start $SCHEMA_REG_HOME/etc/schema-registry/schema-registry.properties
调用API
curl -X GET http://172.26.143.96:8081/subjects
curl -X GET http://172.26.143.96:8081/subjects/product-value/versions
curl -X GET http://172.26.143.96:8081/schemas/ids/3
3 API列表
更多信息可参考:

本文介绍了ApacheAvro在数据序列化中的作用,以及如何通过ConfluentSchemaRegistry来管理分布式系统中的数据模式和版本,包括下载、配置、启动SchemaRegistry服务以及使用其提供的RESTfulAPI进行操作。
最低0.47元/天 解锁文章
8743






