ビデオ: Hive Tutorial | Hive Architecture | Hive Tutorial For Beginners | Hive In Hadoop | Simplilearn 2024
Apache Hiveの要素を調べると、下部にHiveがHadoop分散ファイルシステム(HDFS )とMapReduceシステム。
MapReduceの場合、図はHadoop 1とHadoop 2の両方のコンポーネントを示しています。 Hadoop 1では、HiveクエリはMapReduceコードに変換され、JobTrackerやTaskTrackerなどのMapReduce v1(MRv1)インフラストラクチャを使用して実行されます。
<! - 1 - >Hadoop 2では、YARNはMapReduceフレームワークからリソース管理とスケジューリングを切り離しました。 MapReduce v2(MRv2)とYARNインフラストラクチャで、HiveクエリをMapReduceコードに変換して実行することができます。
Apache Tezと呼ばれる開発中の新しいフレームワークがあります。これは、バッチスタイルのクエリでHiveのパフォーマンスを向上させ、より小さい対話形式の(リアルタイム とも呼ばれる)クエリをサポートするように設計されています。執筆時点では、Apache Tezプロジェクトはまだインキュベーション中で、まだプロダクションの準備ができていません。 <!すべての作品がどのように組み合わされているかを視覚化するのに役立つならば、HDFSとMapReduceシステムは、Hiveを含むApache Hadoopオペレーティングシステムの一部であると考えてください。また、HBase - より高いレベルの機能またはアプリケーションとして。 (HDFSはストレージを提供し、MapReduceはHadoopエコシステム内の上位レベルの機能に並列処理機能を提供します。)
<! - 3 - >図を上に移動すると、HiveQLがコンパイル、最適化、実行されます。 Hiveドライバは、現在のタスクに応じて、HiveQLステートメントとコマンドをローカルで実行するか、MapReduceジョブを起動するかを選択できます。 Hiveドライバは、メタデータとそのデータベースにテーブルメタデータを格納します。
おそらくRDBMSの世界のSQLとリレーショナルデータベースモデルに精通しているでしょう。表999または表999の関係は、縦列と横列とからなる。行と列が交差する場所にセルが格納されます。 SQLとリレーショナルデータベースモデルに精通していない場合は、好きな検索エンジンを使って参考になる学習ソースを見つけることができます。
デフォルトでは、Hiveには、埋め込みモードと呼ばれるメタストアで設定されたApache Derby RDBMSが含まれています。 埋め込みモード は、ハイブドライバ、メタストア、およびApache Derbyがすべて1つのJava仮想マシン(JVM)で実行されていることを意味します。 この設定は学習目的では問題ありませんが、組み込みモードでは1つのHiveセッションしかサポートできないため、通常はマルチユーザ環境では使用されません。プロダクション環境で複数のハイブセッションをよりよくサポートできる2つの他のモード、 ローカル 、 リモート
また、Java Database Connectivity(JDBC)アプリケーション・プログラミング・インターフェース(API)スイートに準拠するRDBMSを構成することもできます。 (例としてはMySQLとDB2があります。) アプリケーションサポートの鍵は、Hive Thrift Serverです。これは、豊富なクライアントセットがHiveサブシステムにアクセスできるようにします。オープンソースのSQuirreL SQLクライアントが例として含まれています。要点は、JDBC準拠のアプリケーションがバンドルされたJDBCドライバを介してHiveにアクセスできることです。 Open Database Connectivity(ODBC)に準拠したクライアントにも同じステートメントが適用されます。たとえば、LinuxにバンドルされているunixODBCやisqlユーティリティでは、リモートLinuxクライアントからHiveにアクセスできます。
また、Microsoft Excelを使用する場合は、クライアントシステムにMicrosoft ODBCドライバをインストールした後、Hiveにアクセスできることを知ってうれしいです。最後に、Java(PHPやPythonなど)以外のプログラミング言語からHiveにアクセスする必要がある場合は、Apache Thriftが答えです。 Apache Thriftクライアントは、JDBCおよびODBCクライアントと同様に、Hive Thrift Server経由でHiveに接続します。 Hiveアーキテクチャの図を続けるには、Hiveにコマンドラインインターフェイス(CLI)が含まれていることに注意してください。ここでLinuxターミナルウィンドウを使用して、クエリと管理コマンドを直接Hiveドライバに発行できます。グラフィカルなアプローチがあなたのスピードを上げる場合は、便利なWebインターフェイスもあり、お気に入りのブラウザでHive管理のテーブルやデータにアクセスできます。 Apache Hiveにグラフィカルユーザーインターフェイス(GUI)を提供する、Hueと呼ばれる別のWebブラウザテクノロジがあります。一部のHadoopユーザーは、コマンドラインインターフェイス(CLI)ではなくGUIを使いたいと思うユーザーもいます。 Hueは、HDFS、MapReduce / YARN、HBase、Zookeeper、Oozie、Pig、およびSqoopのような他の重要なHadoop技術もサポートしています。あなたはHueのApache Hive GUIの名前が好きでしょう - それはBeeswaxと呼ばれています。