Apache Hadoop

Apache Hadoop

Apache Hadoopとは

Apache Hadoop(アパッチハドゥープ)とは、大規模データの分散格納と分散処理を実現するオープンソースのフレームワークです。GoogleのGFS(Google File System)とMapReduceの論文に触発されて、ダグ・カッティングが開発しました。ビッグデータ時代の基盤技術として広く普及しました。

Hadoopの主要コンポーネント

Hadoopは主に3つのコンポーネントで構成されます。HDFS(Hadoop Distributed File System:分散ファイルシステム)はデータを複数ノードに分散格納します。YARN(Yet Another Resource Negotiator)はクラスタのリソース管理を行います。MapReduceは分散データ処理のエンジンです。

HDFSの仕組み

HDFSはファイルを大きなブロック(デフォルト128MB)に分割し、クラスタ内の複数のノードに分散配置します。各ブロックは複数のノードにレプリカが作成され(デフォルト3重複製)、ノード障害時にもデータを失わない高い耐障害性を実現しています。

Hadoopエコシステム

Hadoopを中心に多くの関連プロジェクトが発展しました。Hive(SQLライクなクエリ)、Pig(データフロー言語)、HBase(NoSQLデータベース)、ZooKeeper(分散協調サービス)などがHadoopエコシステムを構成しています。近年はクラウドネイティブな代替手段への移行も進んでいます。