什么是 Apache Avro?

正在办公室内使用数字平板电脑的商务人士

什么是 Avro?

Avro 是一个开源项目,旨在为 Apache Hadoop 提供数据序列化和数据交换服务。这些服务可以一起使用,也可以单独使用。

Avro 支持在使用不同语言编写的程序之间进行大数据交换。利用序列化服务,程序可以高效快速地将数据序列化为文件或消息。数据存储不仅紧凑,而且高效。Avro 将数据定义和数据本身一起存储在同一个消息或文件中。

Avro 以 JSON 格式存储数据定义,方便读取和解释;而数据本身以二进制格式存储,既紧凑又高效。Avro 文件中包含的标记可用于将大型数据集拆分为大小适合的若干子集,以便于 Apache MapReduce 进行处理。一些数据交换服务会使用代码生成器来解释数据定义,并生成用于获取数据的代码。Avro 省去了此步骤,因此非常适合脚本语言。

Avro 的一个关键功能是,能够有力支持随时间变化的数据模式,这种变化通常称为模式演变。Avro 可处理模式变更,如缺失的字段、新添的字段和更改的字段。因此,旧程序可读取新数据,新程序也可读取旧数据。Avro 包含适用于 Java、Python、Ruby、C、C++ 等编程语言的 API。使用 Avro 存储的数据可通过不同语言编写的程序进行传递,Avro 甚至可以从 C 这样的编译语言传递到诸如 Apache Pig 之类的脚本语言。

小球在轨道上滚动的三维设计

最新的 AI 新闻 + 洞察分析

在每周的 Think 时事通讯中,发现专家精选的有关 AI、云等的洞察分析和新闻。 

Mixture of Experts | 8 月 28 日,第 70 集

解码 AI:每周新闻摘要

加入我们世界级的专家小组——工程师、研究人员、产品负责人等将为您甄别 AI 领域的真知灼见,带来最新的 AI 资讯与深度解析。

相关解决方案
IBM Knowledge Catalog

通过智能编目和策略管理激活数据以用于 AI 和分析。IBM Knowledge Catalog 是一款数据治理软件,通过提供数据目录来自动执行数据发现、数据质量管理和数据保护等任务。

探索 Knowledge Catalog
IBM 数据智能解决方案

快速将原始数据转化为可操作的洞察分析,统一数据治理、质量、沿袭和共享,为数据消费者提供可靠的情境化数据。

探索数据智能解决方案
数据和分析咨询服务

通过 IBM Consulting 发掘企业数据的价值,建立以洞察分析为导向的组织,实现业务优势。

了解分析服务
采取后续步骤

查找、理解、整理和访问数据、知识资产及其关系,无论它们位于云端,还是本地。IBM Knowledge Catalog 是一款数据治理软件,通过提供数据目录来自动化数据发现、数据质量管理和数据保护等任务。

探索 IBM Knowledge Catalog 深入了解数据情报解决方案