DE60:Hadoop・Spark【データサイエンティスト検定(リテラシーレベル)補習ノート】
データサイエンティスト検定(リテラシーレベル)の公式リファレンスブックで躓いたところをまとめていきます。
HadoopやSparkは大規模データの蓄積・分析を分散処理技術によって実現する技術です。簡単にまとめておきます。
Hadoop
HDFS(Hadoop Distributed File System:分散ファイルシステム)
サーバーを動的に追加することで容量・処理性能の強化を図れる。サーバー追加時にもHadoopクラスタの停止不要。
データを格納しているノードに対して複製を持つため、データノードすべてが同時に故障しない限り、データは保障される。
大容量ファイル向きだが、リアルタイム処理は苦手。
MapReduce(分散コンピューティングフレームワーク)
Hadoopのデータ処理の仕組み。データを処理・仕分けするMap処理と、そのデータごとに処理するReduce処理の2つから構成。並列処理可能。
大容量ファイル向きだが、反復処理に弱い。
Spark
Hadoopと同じく分散処理のフレームワーク。分散メモリRDD(Resilient Distributed Dataset)という技術をコアにして、Hadoopの弱点だったデータの繰り返し処理を得意とする。逆に大容量ファイルは苦手で、メリットとデメリットがMapReduceと逆になる。
RDBMSとの違い
ざっくりいえば、Hadoopがバッチ処理向き、RDBMSがリアルタイム処理向きといえそうです。以下の記事で詳しく説明されています。
YARN
MapReduceに適していない処理についても分散処理が可能になる。Apache Hadoop 2.0から実装されている。
Hadoop終わった??
Webの記事をあれこれ見ているとHadoop関連の記事は2015年くらいまでのものが多いことに気づきました。GoogleでHadoopを検索すると、検索ワード候補に「Hadoop 終わった」が出てくるぐらいです。
いくつか調べてみると、どうやらMapReduceが使われなくなってきたことが「終わった」といわれる原因のようです。また、クラウドで処理することが増えてきたことも原因の1つのように思われます。
参考資料
この記事が気に入ったらサポートをしてみませんか?