36

顶级项目 Apache Arrow 被业界大量采用,Apache 软件基金会骄傲总结其发展潜力

 5 years ago
source link: https://www.infoq.cn/article/zVaYaxvqHcEpT*AyO1AZ?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

马萨诸塞州维克菲尔德,2019 年 2 月 19 日消息:Apache 软件基金会(Apache Software Foundation,简称 ASF)宣布了大数据列式内存数据平台 Apache Arrow 的发展势头。

Arrow 已经被数十个开源和商业技术方案所采用,在作为 Apache 顶级项目的前三年月下载量超过 1 百万。

自从 2016 年 1 月该项目成立以来,Arrow 已经迅速成长为在内存中表示和处理分析数据的事实标准,把分析处理和交换的速度提高了 100 多倍。

Arrow 副总裁 Jacques Nadeau 说:“在 Arrow 成为顶级项目时,我们预测世界上大多数数据将在未来 10 年中通过 Arrow 进行处理。仅仅过了 3 年,我们就看到 Arrow 在各种分析、机器学习和人工智能工作负载中出现了大量的业界采用,并实现了价值增长。”

Arrow 的亮点包括:

业界采用:超过 20 种重要技术采用 Arrow 来加快内存分析,其中包括 Apache Spark、NVIDIA RAPIDS、pandas 和 Dremio,等等。已知开源和商业的实现方案列表可以在 https://arrow.apache.org/powered_by/ 上找到。

数百万次下载:众多其他技术对 Arrow 的采用和集成带来了超过 1 百万次的月下载量。

新语言支持:作为跨语言开发平台,支持多种编程语言是重中之重。Arrow 已经从支持一种语言发展到如今能支持 11 种不同的语言,其中包括 C++、Java、Python、R、C#、JavaScrip 和 Ruby,等等。

无缝数据格式支持:Arrow 支持不同数据类型,无论是简单类型还是嵌套类型,只要它们存在于内存中,如常规的系统 RAM、内存映射文件或 GPU 内存。此外,它还可以从流行的存储格式(如 Apache Parquet、CSV 文件、Apache ORC、JSON,等等)中摄取数据。

主要代码捐赠:Arrow 的新功能和扩展功能要归功于部分代码和组件的捐赠:

  • C# 库
  • 基于 Gandiva LLVM 的表达式编译器
  • Go 库
  • JavaScript 库
  • Plasma 共享内存对象存储
  • Ruby 库(Arrow 和 Apache Parquet)
  • Rust 库(Parquet 和 DataFusion 查询引擎)

社区和捐献者的增长:在过去 12 个月中,近 300 位个人贡献者提交了 3 千多次代码,使 Arrow 代码库增加了 30 万行代码。Arrow 社区每个月有约 10 个新贡献者加入。

2019 年 1 月,该项目发布了最新版本 Arrow 0.12.0,带来了在 2018 年第 4 季度期间开发的 600 多项增强功能。Arrow 社区正致力于采取一系列有影响力的新举措,包括解决高性能分析问题和支持更高效的集群数据分布。

Arrow 项目管理委员会成员以及 pandas 项目创建人 Wes McKinney 表示:“Arrow 在业界的快速采用和开发人员社区的快速发展证实了我们最初的观点,即独立于语言的列式数据开放标准非常重要。另外,我们看到,不仅在编程语言之间,而且在数据库系统和数据科学领域之间都产生了富有成效的合作。我们期望有更多数据系统开发人员能够加入我们的社区。”

Arrow 简介

Arrow 是用于处理内存数据的跨语言开发平台。它为平面和分层数据指定了独立于语言的标准化列式内存格式,可在现代硬件上进行高效的分析操作。它还提供了计算库和零拷贝流式消息传递和进程间通信。目前支持的语言包括 C 语言、C++、C#、Go、JavaScript、MATLAB、Python、R 语言、Ruby 和 Rust。

可用性和监督

Arrow 基于 Apache License v2.0 许可发行,由项目活跃贡献者自选团队进行监督。项目委员会(PMC)指导项目的日常运营工作,包括社区开发和产品发布。关于文件下载、文档信息和加入 Arrow 的方法,请参考以下链接: http://arrow.apache.org/

阅读英文原因: https://blogs.apache.org/foundation/entry/the-apache-software-foundation-announces46


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK