当前位置: 首页 > article >正文

Kafka Schema介绍

Avro概述

简介

Apache Avro(以下简称 Avro,读音:阿夫罗)是一个数据序列化系统,是一种与编程语言无关的序列化格式,是提供一种共享数据文件的方式。Avro是Hadoop中的一个子项目,Avro是一个基于二进制数据传输高性能的中间件。Avro可以做到将数据进行序列化,适用于远程或本地大批量数据交互。在传输的过程中Avro对数据二进制序列化后节约数据存储空间和网络传输带宽。

序列化就是将对象转换成二进制流,相应的反序列化就是将二进制流再转换成对应的对象。因此,Avro就是用来在传输数据之前,将对象转换成二进制流,然后此二进制流达到目标地址后,Avro再将二进制流转换成对象。

特点

  1. 丰富的数据结构

  2. 一个紧凑的,快速的,二进制的数据格式

  3. 一个容器文件,来存储持久化数据

  4. 远程过程调用(RPC)

  5. 简单的动态语言集成。

  6. Avro模式是使用JSON定义的 。这有助于以已经具有JSON库的语言实现。

JSON是一种轻量级的数据传输格式,对于大数据集,JSON数据会显示力不从心,因为JSON的格式是key:value型,每条记录都要附上key的名字,有的时候,光key消耗的空间甚至会超过value所占空间,这对空间的浪费十分严重,尤其是对大型数据集来说,因为它不仅不够紧凑,还要重复地加上key信息,不仅会造成存储空间上的浪费,更


http://www.kler.cn/a/158981.html

相关文章:

  • 【Android】EventBus事件总线用法浅析
  • uniapp 实现tabbar分类导航及滚动联动效果
  • 某某科技笔试题
  • 结构化需求分析与设计
  • 基于大语言模型意图识别和实体提取功能;具体ZK数值例子:加密货币交易验证;
  • 使用视频提升应用在 App Store 中的推广效果
  • Git版本控制---入门学习
  • 解决vue ssr服务端渲染运行时报错:net::ERR_PROXY_CONNECTION_FAILED
  • Retrofit的转换器
  • 迅为RK3588开发板定制Ubuntu和Debian系统-系统定制(无法联网)
  • 财报解读:立足海外音视频直播战场,欢聚的BIGO盾牌还需加强?
  • BearPi Std 板从入门到放弃 - 后天篇(2)(I2C1读写EEPROM)
  • Windows11系统下MemoryCompression导致内存占用率过高
  • Auth模块的使用
  • AI 绘画 | Stable Diffusion LCM和FP8 显存不足的福音
  • js中批量修改对象属性
  • 两数之和 三数之和 哈希方法
  • Hadoop学习笔记(HDP)-Part.06 安装OracleJDK
  • openGauss学习笔记-144 openGauss 数据库运维-例行维护-慢sql诊断
  • js中的栈(stack)和堆(heap)
  • 1+X Web 前端开发职业技能等级证书模拟题(中级)理论知识
  • Maxwell学习笔记
  • 虚拟局域网(VLAN)解析(Virtual Local Area Network)(用于在不受物理位置限制的情况下将设备划分到同一网络或不同网络)
  • python之pyqt专栏7-信号与槽3
  • Flask项目Day1,Flask常见第三方拓展包
  • 算法通关村第十七关-青铜挑战贪心算法思想