アパッチパーケット


Apache_Parquet

Apache Parquetは、ApacheHadoopエコシステムの無料のオープンソース 列指向データストレージ形式です。これは、Hadoopで利用可能な他の列指向ストレージファイル形式、つまりRCFileとORCに似ています。これは、Hadoop環境のほとんどのデータ処理フレームワークと互換性が複雑なデータをまとめて処理するためのパフォーマンスが向上した、効率的なデータ圧縮およびエンコード方式を提供します。
アパッチパーケット
初回リリース
2013年3月13日; 8年前 (2013-03-13)
安定リリース
2.8.0 / 2020年1月13日 ; 20か月前  (2020-01-13)
リポジトリ
git-wip-us .apache .org / repos / asf / parquet -mr .git
で書かれている
Java(リファレンス実装)
オペレーティング・システム
クロスプラットフォーム
タイプ
列指向DBMS
ライセンス
Apacheライセンス2.0
Webサイト
寄木細工.apache .ORG

コンテンツ
1 歴史
2 特徴
3 圧縮とエンコード
3.1 辞書エンコーディング 3.2 ビットパッキング 3.3 ランレングスエンコーディング(RLE)
4 比較
5 も参照してください
6 参考文献
7 外部リンク

歴史
Apache Parquetを構築するためのオープンソースプロジェクトは、Twitter とClouderaの共同作業として始まりました。の寄せ木はHadoopの作成者によって作成されたTrevni柱状記憶フォーマットに改善として設計されたダグ・カッティング。最初のバージョンであるApacheParquet  1.0は、2013年7月にリリースされました。2015年4月27日以降、Apache Parquetは、Apache Software Foundation(ASF)が後援するトップレベルのプロジェクトです。

特徴
Apache Parquetは、データの格納に使用できる複雑なデータ構造に対応するレコードシュレッダーおよびアセンブリアルゴリズムを使用して実装されます。各列の値は、連続したメモリ位置に物理的に格納され、この列ストレージには次の利点が
列単位の圧縮は効率的で、ストレージスペースを節約します
列の値は同じタイプになる傾向があるため、タイプに固有の圧縮手法を適用できます。
特定の列値をフェッチするクエリは、行データ全体を読み取る必要がないため、パフォーマンスが向上します
さまざまなエンコード手法をさまざまな列に適用できます
Apache Parquetは、柔軟性を高めるApacheThriftフレームワークを使用して実装されています。C ++、Java、Python、PHPなどの多くのプログラミング言語で動作します。
2015年8月の時点で、寄木細工は、以下を含むビッグデータ処理フレームワークサポートはApache Hiveの、Apacheのドリル、Apacheのインパラ、Apacheのクランチ、Apacheの豚、カスケーディング、プレストとApacheのスパークを。

圧縮とエンコード
Parquetでは、圧縮は列ごとに実行されるため、テキストデータと整数データにさまざまなエンコードスキームを使用できます。この戦略はまた、発明されたときに実装されるより新しくより良いエンコーディングスキームへの扉を開いたままにします。

辞書エンコーディング
寄木細工は、自動ディクショナリ符号化とデータのために動的に有効になっている小さな一意の値の数(すなわち、10以下5著しい圧縮及び速度を処理ブーストを可能にします)。

ビットパッキング
整数の格納は通常、整数あたり32ビットまたは64ビット専用で行われます。小さい整数の場合、複数の整数を同じスペースにパックすると、ストレージがより効率的になります。

ランレングスエンコーディング(RLE)
同じ値の複数のオカレンスの保存を最適化するために、1つの値がオカレンスの数とともに1回保存されます。
Parquetは、ビットパッキングとRLEのハイブリッドを実装しており、どちらに基づいてエンコーディングが切り替わると、最良の圧縮結果が得られます。この戦略は、特定のタイプの整数データに対して適切に機能し、辞書エンコードとうまく組み合わされます。

比較
Apache Parquetは、RCFileおよびOptimized Row Columnar(ORC)ファイル形式に相当します。3つすべてが、Hadoopエコシステム内の列データストレージのカテゴリに分類されます。それらはすべて、書き込みが遅くなる代わりに、読み取りパフォーマンスが向上した、より優れた圧縮とエンコードを備えています。これらの機能に加えて、Apache Parquetは限定されたスキーマの進化をサポートします。つまり、データの変更に応じてスキーマを変更できます。また、競合しない新しい列を追加したり、スキーマをマージしたりする機能も提供します。

も参照してください
image"
 無料のオープンソースソフトウェアポータル
Pig(プログラミングツール)Apache Hive Apache Impala
ApacheドリルApache Kudu Apache Spark Apache Thrift
Trino(SQLクエリエンジン)
Presto(SQLクエリエンジン)
SQLite組み込みデータベースシステム

参考文献
^ 「Githubリリース」。
^ 「Parquet-MRソースコード」。
^ 「リリース日」。
^ 「Parquetの紹介:ApacheHadoop用の効率的な列型ストレージ-Clouderaエンジニアリングブログ」。2013-03-13。
^ http://www.infoworld.com/article/2915565/big-data/apache-parquet-paves-the-way-towards-better-hadoop-data-storage.html
^ https://blogs.apache.org/foundation/entry/the_apache_software_foundation_announces75
^ 「Googleに触発されたDremel紙からのストライピングとアセンブリアルゴリズム」。github 。
^ 「ApacheParquetのドキュメント」。
^ 「ApacheParquetCloudera」。
^ 「ApacheThrift」。
^ 「サポートされているフレームワーク」。
^ “”Parquet 1.0の発表:Hadoop用の列型ストレージ| Twitterブログ””。blog.twitter.com 。

外部リンク
公式サイト
image   ドレメル紙
強力なApacheParquet、Google、Amazonでヒーローになる方法
image