2017年8月23日HiverServer2セットアップしJDBC経由でHiveQLを実行するHiveコマンドをHadoopクライアントを利用せずに実行するには、HiveServer2をセットアップしHiveServer2を経由してHiveHadoopクラスター上でMapReduceジョブを実行します。0.11から導入されました。HiveServer2のクライアントは、以下のようにCLIのBeelineの他に専用のJDBCやODBCドライバを利用するアプリケーションになります。HiveServer2は、HiveQLを受け取るとMapReduceに変換してHadoopクラスターに実行を要求します。Hiveを参考にしています。BeelineはJDBCのアプリなので厳密には構成がちょっと違いますが、HiveServer2の利用イメージはこんな感じです。CLIとPythonのドライバを利用したサンプルの実行確認まで手順をまとめて行きます。12.04、ディストリビューションはCDH5を利用しています。CLIでHiveQLを実行したりPigLatinをリモートのHadoopクラスターで実行する場合に必要なクライアント側のHadoop設定についてまとめてみました。Hadoopは2系、動作の確認はCDH5を利用してしています。CLIやPigコマンドは、生成したたMapReduceジョブを同じマシンのHadoopクライアントを通してリモートのHadoopクラスタ上に送り実行します。PigはHadoop関連プロジェクトの一つでMapReduceをスクリプト(DSL)で手軽に記述できるようにするフレームワークです。Latinという独自のスクリプト言語でパイプラインを1ステップ毎記述していきます。Pigをセットアップし、公式チュートリアルのサンプルをローカル実行して基本的な動作を確認、Hadoopクラスタ上で実行させるまでを体験してみます。MapReduceを利用するのが簡単です。2.5.0で構築したクラスターを利用します。14.04、各パッケージのバージョンは、このブログ記事を書いている時点のものを記載しています。2.xのセットアップを公式ドキュメントに沿って確認したので、今回は複数ノードに分散させたクラスターを組んでみます。各ノードにHadoopをインストール前回の記事の「Hadoopのインストール」までの手順を各ノードで行います。各ノードからホスト名でアクセスできるように設定クラスターに参加する全ノードの/etc/hostsに各ノードを指定します。PigなどHadoopも含めて関連技術を勉強中なので、MapReduceモードでPigを動作させるためにHadoopをセットアップしてみました。Hadoopをインストールして実行を確認してみます。2.5.0をシングルノードクラスター(疑似分散モード)としてセットアップしてMapReduceのサンプルを実行するまでの手順を試した際のメモになります。Cluster.の手順に沿ったものです。14.04のデフォルトのJDKをインストールします。