Apache Hive(アパッチ・ハイブ)は、Apache Hadoop(ハドゥープ)上に構築されたデータウェアハウジングおよびSQLライクなクエリ言語プラットフォームです。Hiveを使うことで、SQLに似た「HiveQL(Hive Query Language)」を使用して、Hadoopの分散ファイルシステム(HDFS)に格納された大量データを簡単にクエリして分析することができます。HadoopのMapReduceモデルの複雑さを抽象化し、SQLの知識があるユーザーが扱いやすい形にしてくれるのがHiveの特徴です。
Apache Hiveの主な特徴
- データウェアハウジングとETL(抽出・変換・ロード):データウェアハウジング向けに設計されており、データの要約やクエリ、分析をサポートします。さまざまなデータ形式に対応しており、大規模データの整理や抽出が容易です。
- SQLライクなクエリ言語(HiveQL):SQLに似たクエリ構文を提供しているため、SQLの知識がある人には使いやすい環境です。基本的なクエリ操作(SELECT、JOIN、GROUP BYなど)をサポートしており、リレーショナルデータベースのように扱えます。
- 分散処理:HiveはMapReduceを使った分散処理を内部で実行するため、大規模なデータセットに対して効率的なクエリ処理が可能です。近年は、MapReduceの代わりにApache TezやApache Sparkなどの高速な処理エンジンもサポートしています。
- 柔軟なデータ形式のサポート:テキスト、シーケンスファイル、ORC(Optimized Row Columnar)やParquetといった、さまざまなデータ形式を扱えるため、多様なデータソースと連携できます。
Hiveは、ビッグデータ分析や大規模データの処理に強みがあり、ETL処理やデータマートの構築など、データエンジニアリングやデータサイエンスの基盤として広く利用されています。