Spark が次のビッグデータの主役、という主張についての疑問

Hadoop!
5
Sho Shimauchi @shiumachi

"Sparkは、ビッグデータ処理ソフトの定番「Hadoop」に続く、次なるビッグデータ処理の主役に目され始めている" ちょっと私の理解と違うかなあ itpro.nikkeibp.co.jp/atcl/column/15…

2015-06-23 00:23:56
Sho Shimauchi @shiumachi

SparkはHadoopと比較するのではなく、 MapReduceと比較するものだと思っている。 バッチ処理(MapReduce)や、SQL (Impala/Presto/Drill)、全文検索(Solr/Elasticsearch)等に並ぶ新しい分散処理がSparkという認識

2015-06-23 00:24:54
Sho Shimauchi @shiumachi

そもそもHadoopは何か。HDFS(分散ストレージ)+MapReduce(分散バッチ処理)だけの時代はこのまま覚えていればよかった。しかし、MapRやEMRなどプロプラのファイルシステムやストレージを使った非HDFSのHadoopが登場するとそうもいかなくなった。

2015-06-23 00:25:49
Sho Shimauchi @shiumachi

これらのベンダーはHadoop=MapReduceという主張でビジネスを展開した。しかし、2012年にImpalaが登場したのを皮切りに続々とSQL-on-Hadoopが登場し、YARNの登場によってMapReduceはHadoopコア唯一の分散処理ではなくなった。

2015-06-23 00:26:41
Sho Shimauchi @shiumachi

そしてSparkが爆発的に普及を始め、Tezが登場し、Solrは分散化し、分散処理の選択肢は格段に広がった。では、MapReduceも使わずHDFSも使わないシステムは本当にHadoopなのか?

2015-06-23 00:28:08
Sho Shimauchi @shiumachi

例えば去年のHadoop Conference Japanを見ても、HadoopのコアであるHDFS/MR/YARN自体のセッションはほとんどないし、明らかにHadoopそのものについて言及していないセッションもある。 eventbrite.com/e/hadoop-confe…

2015-06-23 00:30:12
Sho Shimauchi @shiumachi

日本Hadoopユーザ会の主催するHadoopソースコードリーディングの最近の開催内容を見ても、Hadoopそのものに触れていない回の方が多いくらいだ。ついでに言うとソースコードも読んでない。

2015-06-23 00:31:19
ひしだま @hishidama

ソースコードを読んだのは第1回だけだという噂を聞いたことがあるw twitter.com/shiumachi/stat…

2015-06-23 00:33:13
Sho Shimauchi @shiumachi

Hadoopの定義については、日本Hadoopユーザ会の事実上の会長となっている @hamaken 氏も悩んでいる通り、とても曖昧になっていると思う。twitter.com/hamaken/status…

2015-06-23 00:32:24
Kenichiro HAMANO @hamaken

@shiumachi @RKajiyama 正しくはMapReduceの適用領域ってところかな。毎度難しいと思うのは、Hadoopっていうときの範囲。 個人的にはエコシステムなどを含んでいいと思うけど、システム特性とかを語るときには、言葉の使い分けがややタイヘンとも感じる。

2015-06-10 14:01:12
Sho Shimauchi @shiumachi

私の個人的な見解を言えば、「分散ストレージ+分散処理の基盤」をHadoopと呼んでいるのではないかと思っている。Hadoopはテセウスのパラドックスに陥っていて、パーツの置き換えが続いていくことでかつてのHadoopと同じかどうか曖昧になってきているのではないか。

2015-06-23 00:34:33
Sho Shimauchi @shiumachi

Hadoopと呼ばない分散ストレージ+分散処理はいくらでもあって、例えばGoogle BigQueryをHadoopと呼ぶ人はまずいないだろう。じゃあMapReduceがあればHadoopかというとそうでもない。RiakのMapReduce機能をHadoopと呼ぶ人はいない。

2015-06-23 00:36:51
Sho Shimauchi @shiumachi

一方で、HDFSを使わないEMRはHadoopとして認識している人が多いし、MapReduceを使わないTezをHadoopであるとHortonworksは主張している。YARNがあるからHadoop?YARNをMesosに置き換えたらそれはHadoopと呼ばなくなるのか?

2015-06-23 00:39:06
Sho Shimauchi @shiumachi

このように、Hadoopが指し示すものは曖昧になってきている。なので、SparkとHadoopを並べるのはどうにも違和感があるし、「分散ストレージ+分散処理」というパラダイムでみれば、Sparkは一つの分散処理アプリケーションにすぎないことがわかる。

2015-06-23 00:41:04
ひしだま @hishidama

今のところHadoopに残りそうなのは、HDFS(API)とYARNだけのような気がしている。

2015-06-23 00:41:25
Sho Shimauchi @shiumachi

もちろんSpark自身は素晴らしい。高速処理や記述の簡便性が利点に挙げられるが、私はそれらを合わせた「普通の非分散プログラムのようにコードを記述し、小規模なプログラムのように高速に実行できるというユーザ体験」こそがSparkの価値だと思っている。

2015-06-23 00:44:00
Sho Shimauchi @shiumachi

しかし、あたかもSparkがHadoopを置き換えるかのごとく捉えてしまうのは、ちょっと違うのではないかなと思う。

2015-06-23 00:44:26
ひしだま @hishidama

YARNが出た当初は「こんなもん使い物になるんかいな」って感じだったけど、今や当たり前になりつつあるよなー。 でも判定に使えるリソースの種類が増えたってのは聞いた覚えが無いけど^^;

2015-06-23 00:47:53
草薙 昭彦 @nagix

たぶんHDFS APIに対応していればHadoop

2015-06-23 00:50:43