HDFS(Hadoop distributed file system):
Name node:
Data node管理
メタ情報管理
Data node:
分散してファイルを保存
同じファイルが三つのノード以上に保持し、
Data nodeの障害に対応できるように設定するのが一般的
クライアントは
①Name nodeにメタ情報を問い合わせ
②Data node上のファイルにアクセスする
MapReduce:
MapReduceとは、データの並列処理を行うためのアルゴリズム
「○○単位に」「××する」という処理を並列に行うことができる
YARN(Yet another resource negotiator):
YARNはHadoopクラスタのリソース管理と、ジョブスケジューリングを行う。
ResourceManagerとNodeManagerで構成される。
クライアント:MapReduceのジョブを投入。
ResourceManager:リソース管理スケジューリング。
NodeManager:ジョブを並列実行。
(map, reduce, shuffleを実施)
Hadoop Clusterは、各ノードに分散保存されているデータに対して、
そのノード上で処理を実施できるので効率が良い。
(処理対象データを取得する為の通信が不要)
Hiveコマンドは以下の処理を行う:
HiveQLの受付
HiveQL⇒MapReduceジョの変換
変換してMapReduceジョブをHadoopに渡す(処理はHadoopで実行)
metastoreは、HiveQLでクエリで見るテーブル定義情報を格納
実体はHadoopクラスタ上、メタ情報はRDBに格納
Hiveのテーブルは、ファイルシステムの指定ディレクトリ配下に格納
パテーションを用いると、サブディレクトリで管理することができる
Hiveのテーブルの実体は、ファイルシステム上のファイル、
通常の(externalではない)テーブルの場合、create tableでテーブルを作成してinsertするとファイルが作成される。
external tableを使うと、HDFSなどに配置したファイル(tsvなど)をhiveのテーブルとして扱うことができる
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。