Apache Avro

维基百科,自由的百科全书
跳转至: 导航搜索
Apache Avro
開發者 Apache软件基金会
穩定版本 1.8.0(2016年1月29日,​3個月前​(2016-01-29
開發狀態 活跃
类型 远程过程调用框架
许可协议 Apache许可证 2.0
網站 http://avro.apache.org/

Avro是一种远程过程调用和数据序列化框架,是在ApacheHadoop项目之内开发的。它使用JSON来定义数据类型和通讯协议,使用压缩二进制格式来序列化数据。它主要用于Hadoop,它可以为持久化数据提供一种序列化格式,并为Hadoop节点间及从客户端程序到Hadoop服务的通讯提供一种电报格式。

它类似于Thrift,但当数据库模式英语Database schema改变时,它不要求运行代码生成程序,除非是对静态类型的语言。

已有API的语言[编辑]

虽然理论上任何语言都可以使用Avro,但是以下语言有专门为其编写的API:[1][2]

Avro IDL[编辑]

为进一步支持JSON在类型及协议定义中使用,Avro包含了一种试验性的[5]替代性支持,它针对一种接口描述语言(IDL)语法,被称作Avro IDL。它以前被称为GenAvro,它设计了一种语法类似于C/C++、 Protocol Buffers 等的格式,以吸引那些熟悉传统IDL和编程语言的用户。

参见[编辑]

参考文献[编辑]

  1. ^ phunt. GitHub - phunt/avro-rpc-quickstart: Apache Avro RPC Quick Start.. GitHub. [2016年4月13日]. (英文)
  2. ^ 2.0 2.1 支持的语言 - Apache Avro - Apache软件基金会. [2016年4月21日]. (英文)
  3. ^ Avro: 1.5.1 - ASF JIRA. [2016年4月13日]. (英文)
  4. ^ [AVRO-533] Avro的.NET实现 - ASF JIRA. [2016年4月13日]. (英文)
  5. ^ Apache Avro 1.8.0 IDL. [2016年4月13日]. (英文)

扩展阅读[编辑]