1. Hive アーキテクチャとアプリケーションのシナリオ
ハイブのアーキテクチャ:
1.メタストア
MetaStore とは、メタデータ ストレージの意味です。いわゆるメタデータとは、Hive によって作成されるデータベースやテーブルなどの情報を指します。これらのメタデータは、リレーショナル データベース Derby や MySQL に保存できます。
MetaStore はバックエンド データベースのプロキシ層として理解できます。Hive クライアントが MetaStore に接続した後、MetaStore はバックエンドの MySQL データベースに接続してメタデータにアクセスします。このようにして、複数の Hive クライアントが MetaStore に接続できます。これらのクライアントは、MySQL データベースのユーザー名とパスワードを知る必要はなく、MetaStore サービスに接続することだけが必要です。
2. HiveServer/HiveServer2
名前が示すように、これは hive 上で開始されるサービスです。hive の初期バージョンでは、開始されるサービスは HiveServer でした。このサービスが開始されると、hive クライアントは IP プラス ポートを介して hive にアクセスできるようになります。このサービスは主にリモートで使用されます。クライアントはさまざまなプログラミング言語を使用して Hive にリクエストを送信し、結果をクエリします。リモート クライアントは、jdbc や odbc などの開発インターフェイスを通じて HiveServer サービスにアクセスできます。
HiveServer はオプションのサービスであることがわかります。これは、プログラムが Hive に接続する必要がある場合にのみ必要です。これは、運用環境で最もよく使用される方法でもあります。ただし、HiveServer は複数のクライアントからの同時リクエストを処理できないため、Hive 0.11.0 以降では、HiveServer2 が HiveServer に置き換わります。
3. ハイブ CLI