HiveコマンドをHadoopクライアントを利用せずに実行するには、HiveServer2をセットアップしHiveServer2を経由してHiveHadoopクラスター上でMapReduceジョブを実行します。
HiveServer2は名前の通りHiveServerのバージョン2でApache Hive 0.11から導入されました。
HiveServer2のクライアントは、以下のようにCLIのBeelineの他に専用のJDBCやODBCドライバを利用するアプリケーションになります。
HiveServer2は、HiveQLを受け取るとMapReduceに変換してHadoopクラスターに実行を要求します。
この図は、ClouderaのブログHow HiveServer2 Brings Security and Concurrency to Apache Hiveを参考にしています。
BeelineはJDBCのアプリなので厳密には構成がちょっと違いますが、HiveServer2の利用イメージはこんな感じです。
以下、Hive CLIがHadoopクラスタに対して実行可能な環境に、HiveServer2を追加し、JDBCを利用するBeeline CLIとPythonのドライバを利用したサンプルの実行確認まで手順をまとめて行きます。
OSはUbuntu 12.04、ディストリビューションはCDH5を利用しています。
“HiverServer2セットアップしJDBC経由でHiveQLを実行する” の続きを読む