編集可能

リピさんとオザさんのTezとSparkの会話

repeatedlyさんとoza_x86さんのTezとSparkに関する会話をまとめさせていただきました。
プログラミング
4
SKSの申し子 @repeatedly
Tezって実際どこまで行けるんだろ?Sparkに比べてunmatureなのは確かだけど,試してみては?と言えるレベルなんだろうか
SKSの申し子 @repeatedly
@oza_x86 TezとSparkって同じDAGだと思うんだけど,なんか実行モデルそのものに大きな違いってある?裏がRDDじゃないかそうでないかとか,そんな感じ?
oza @oza_x86
@repeatedly 実行モデルはだいたい一緒. 抽象化の仕方が RDD か否かの違い. RDD って実体考えると Collection API なので、API が違うという話になる.
SKSの申し子 @repeatedly
@oza_x86 ふーむ.現状だとSparkの方が高速に動作する,という認識なんだけど,TezとしてはそこはTODOという話?それともすでに追いつく算段は出来ている?
oza @oza_x86
@repeatedly 機能的な面では、Tez は実行時に統計情報のとれる API がついてるので、それを基に DAG を rewriting ができる. 例えば、reducer の数を runtime に統計情報から自動的に決めることができる. これは現状のSparkでは無理.
oza @oza_x86
@repeatedly ほう、ベンチマークでてるの?
SKSの申し子 @repeatedly
@oza_x86 いや,これ.どこまで信じていいのか分かってないんだけど > amplab.cs.berkeley.edu/benchmark/
oza @oza_x86
@repeatedly まだベンチマークとってないから確信はしてないんだけど、わたしの認識では、ディスクに触り始めると Tez の方が速いと思う. 中間ファイルの形式に RLE 採用してるから. issues.apache.org/jira/plugins/s…
oza @oza_x86
@repeatedly ソフトウェアのバージョンが古いから、これを根拠にするのはちょっとな、って感じ.
SKSの申し子 @repeatedly
@oza_x86 ディスクに触るかどうかというのは,データ量の話?全部オンメモリでTezが勝てないのはなにゆえ?
oza @oza_x86
@repeatedly そう、データ量の話. RDD はメモリ内部で Java オブジェクトそのままキャッシュする機能があるよね. あれはメモリ効率悪いけど CPU intensive なベンチマークには強い. Ser/Deser を全てすっ飛ばせるから.
SKSの申し子 @repeatedly
@oza_x86 つまり,Spillするようにして動作させる場合にはTezの方が速くて,全部オンメモリでやる場合にはSparkは色々とすっ飛ばしているので,その分パフォーマンスが稼げていると言う話?
oza @oza_x86
@repeatedly Yes.まだベンチマークとれてないから予測の域だけどね.その辺りを根拠に,今のところは Spark は a framework for in-memory computing だと思ってる.
SKSの申し子 @repeatedly
@oza_x86 I see. Thanks! あと一つ確認なんだけど,TezのDAGというのはMRを分解してのDAGという理解で良いよね?Sparkの方はMRとかがないし,どちらかというとPrestoとかに近いと思っているのだけども
oza @oza_x86
@repeatedly MR を分解って何だろ.Spark にも Shuffle はあるし,Tez でも map{}.map{} みたいのはできるよ.
SKSの申し子 @repeatedly
@oza_x86 いや,こんな図があったから,これが便宜上MRで表しているのか,実際の実行モデルは一ステージみたいになっているのか,というのがよくわかってない > slideshare.net/Hadoop_Summit/…
oza @oza_x86
@repeatedly MapReduce 分かってるユーザ向けに,便宜上この説明をしてると思う.実際は Spark のステージみたいになってる.
SKSの申し子 @repeatedly
@oza_x86 なるほど.それだけ分かればいいや.Thx! 今度のすきやばしでのおごり期待してる!!
oza @oza_x86
@repeatedly 相変わらずキミは意味不明だな!
SKSの申し子 @repeatedly
いやー,近くに専門家がいると楽ですなぁ.俺専門とかないから,聞かれないし楽だ

時は流れ…

SKSの申し子 @repeatedly
@oza_x86 Hive on Tezの場合だけど,MapReduceでいうあるノードが失敗した時の別ノードでジョブの再実行みたいなのってどういう感じになるんでしょ? > slideshare.net/Hadoop_Summit/…
oza @oza_x86
@repeatedly 基本的に MapReduce と同じで,ステージごとに永続化してるのでその前から実行.
残りを読む(21)

コメント

SKSの申し子 @repeatedly 2014年9月11日
今日のTez/Sparkのチェックポイント周りの話を追加
ログインして広告を非表示にする
ログインして広告を非表示にする