Apache ORCとは?
あぱっちおーあーるしー
Apache ORCとは、Hadoopエコシステム向けに設計された列指向の高効率ファイルフォーマットで、大規模データの圧縮・高速処理に優れています。
Apache ORC(Optimized Row Columnar)は、Apache Software Foundationが管理するオープンソースの列指向バイナリファイルフォーマットです。もともとApache HiveのパフォーマンスとスケーラビリティをApache RCFileよりも向上させることを目的に開発されました。
ORCファイルの主な構造的特徴は次のとおりです。
- 列指向ストレージ:データを行単位ではなく列単位で格納するため、特定の列だけを読み込む分析クエリに適しています。
- ストライプ構造:データはストライプ(デフォルト250MB)単位に分割され、各ストライプ内で列データ・インデックス・フッターが管理されます。
- 組み込み圧縮:ZLIB・Snappy・LZ4などの圧縮コーデックを選択でき、ストレージコストを大幅に削減します。
- 述語プッシュダウン:クエリの絞り込み条件をファイル読み込み段階で適用し、不要なデータをスキップできます。
Apache Hive・Apache Spark・Apache Flink・Prestoなど主要なビッグデータ処理エンジンがORCをサポートしており、Parquetと並んでデータレイクで広く採用されるフォーマットです。特にHiveとの親和性が高く、トランザクション(ACID)機能もサポートしています。
使い方・例文
数百GBのログデータをORCフォーマットで保存することで、Hiveクエリで必要な列だけを高速に読み取り、ストレージ容量とクエリ時間の両方を削減できます。
この用語をシェア
最終更新: