| 開発者 | Apache ソフトウェア財団 |
|---|---|
| 初回リリース | 2016年10月10日 |
| 安定版リリース | 13.0.0 [1]
/ 2023年8月23日 |
| リポジトリ | https://github.com/apache/arrow |
| 書かれた | C、C++、C#、Go、Java、JavaScript、MATLAB、Python、R、Ruby、Rust |
| タイプ | データ形式、アルゴリズム |
| ライセンス | Apache ライセンス2.0 |
| Webサイト | このサイトについて |
Apache Arrowは、列指向データを処理するデータ分析アプリケーションを開発するための、言語に依存しない ソフトウェアフレームワークです。最新のCPUおよびGPUハードウェアで効率的な分析操作を行うために、フラットなデータと階層的なデータを表現できる標準化された列指向のメモリ形式が含まれています。[2] [3] [4] [5] [6]これにより、コスト、揮発性、動的ランダムアクセスメモリの物理的制約など、大規模なデータセットでの作業の実現可能性を制限する要因が軽減または排除されます。[7]
相互運用性
Arrowは、 Apache Parquet、Apache Spark、NumPy、PySpark、pandasなどのデータ処理ライブラリで使用できます。このプロジェクトには、C、C++、C#、Go、Java、JavaScript、Julia、MATLAB、Python、R、Ruby、Rustで書かれたネイティブソフトウェアライブラリが含まれています。Arrowを使用すると、これらの言語とシステム間でシリアル化のオーバーヘッドなしで、ゼロコピー読み取りと高速データアクセスと交換が可能になります。[2]
アプリケーション
Arrowは分析[8] 、ゲノミクス[9 ]、 [7]、クラウドコンピューティング[10]など、さまざまな分野で使用されています。
Apache Parquet および ORC との比較
Apache ParquetとApache ORC は、ディスク上の列指向データ形式の一般的な例です。Arrow は、メモリ内でデータを処理するためにこれらの形式を補完するものとして設計されています。[11]メモリ内処理のハードウェア リソース エンジニアリングのトレードオフは、ディスク上のストレージに関連するものとは異なります。[12] Arrow プロジェクトと Parquet プロジェクトには、2 つの形式間でデータの読み取りと書き込みを可能にするライブラリが含まれています。[13]
ガバナンス
Apache Arrowは2016年2月17日にApache Software Foundationによって発表され、 [14]他のオープンソースデータ分析プロジェクトの開発者連合が開発を主導しました。[15] [16] [6] [17] [18] 初期のコードベースとJavaライブラリはApache Drillのコードから派生しました。[14]
参考文献
- ^ “Apache Arrow 13.0.0 (2023年8月23日)”. 2023年8月23日. 2023年9月21日閲覧。
- ^ ab 「Apache Arrow と Kubernetes による分散コンピューティング」2018 年 12 月 13 日。
- ^ Baer, Tony (2016年2月17日). 「Apache Arrow: アヒルを一列に並べる... あるいは縦列に」. Seeking Alpha .
- ^ Baer, Tony (2019 年 2 月 25 日)。「Apache Arrow: 可能性を秘めた小さなデータ アクセラレータ」ZDNet。
- ^ Hall, Susan (2016 年 2 月 23 日)。「Apache Arrow のデータの列指向レイアウトにより Hadoop と Spark が高速化される可能性」。The New Stack。
- ^ ab Yegulalp, Serdar (2016 年 2 月 27 日). 「Apache Arrow はビッグデータへのアクセスを高速化することを目指しています」. InfoWorld .
- ^ ab Tanveer Ahmad (2019). 「ArrowSAM: Apache Arrow Framework によるインメモリゲノムデータ処理」. bioRxiv : 741843. doi : 10.1101/741843 .
- ^ Dinsmore TW ( 2016)。「インメモリ分析:スピードのニーズを満たす」。Disruptive Analytics。Apress、カリフォルニア州バークレー。pp. 97–116。doi :10.1007/978-1-4842-1311-7_5。ISBN 978-1-4842-1312-4。
- ^ Versaci F、Pireddu L、Zanetti G (2016)。「スケーラブルなゲノミクス:Apache YARN での生データからアラインメントされた読み取りまで」(PDF)。IEEE国際ビッグデータ会議:1232–1241。
- ^ Maas M、Asanović K、 Kubiatowicz J (2017)。「ランタイムの復活: クラウド 3.0 時代の言語ランタイム システムの再考」。第 16 回オペレーティング システムのホット トピックに関するワークショップ (ACM) の議事録: 138–143。doi : 10.1145/3102980.3103003。
- ^ Le Dem、Julien。「Apache Arrow と Apache Parquet: 列指向データ、ディスク上、メモリ内の異なるプロジェクトが必要な理由」KDnuggets。
- ^ 「Apache Arrow vs. Parquet and ORC: 列指向データ表現のための 3 番目の Apache プロジェクトは本当に必要ですか?」 2017 年 10 月 31 日。
- ^ 「PyArrow:Apache Parquet 形式の読み取りと書き込み」。
- ^ ab 「Apache® Software Foundation が Apache Arrow™ をトップレベル プロジェクトとして発表」。Apache Software Foundation ブログ。2016 年 2 月 17 日。2016 年 3 月 13 日時点のオリジナルよりアーカイブ。
- ^ Martin, Alexander J. (2016 年 2 月 17 日). 「Apache Foundation が Apache Arrow をトップレベル プロジェクトとして急遽発表」. The Register .
- ^ 「ビッグデータに新しいオープンソース プロジェクト Apache Arrow が登場: 分析ワークロードのパフォーマンスが 100 倍以上向上すると財団が発表」 2016 年 2 月 17 日。2016 年 7 月 27 日時点のオリジナルよりアーカイブ。2018年 1 月 31 日閲覧。
- ^ Le Dem, Julien (2016年11月28日). 「Apache Arrowの最初のリリース」. SD Times .
- ^ 「Julien Le Dem 氏による Apache Arrow による列指向データ処理の将来について」
外部リンク
- Apache Arrow プロジェクト Web サイト
- Apache Arrow GitHub プロジェクトのソースコード
