16
Hadoop こここここ こ Hadoop こここここここここここここここ 2016.03.22 @ ここここここここ Hadoop/Spark Presented By: Katsunori Kanda(@potix2) CyberAgent Inc.

Hadoopことはじめ

Embed Size (px)

Citation preview

Page 1: Hadoopことはじめ

Hadoop ことはじめ〜 Hadoop を取り巻く環境とその最新動向〜

2016.03.22 @ これからはじめる Hadoop/SparkPresented By: Katsunori Kanda(@potix2)CyberAgent Inc.

Page 2: Hadoopことはじめ

自己紹介神田勝規(かんだかつのり)株式会社サイバーエージェントアドテクスタジオ 基盤開発グループサーバーサイドエンジニア (OS/ 分散システムが専門 )

potix2@twitter/github※ 毎月 LispMeetup(shibuya.lisp) を開催してます

Page 3: Hadoopことはじめ

今日話したいこと• Hadoop を使う動機• Hadoop の全体像• 最近のトレンド• デモ

Page 4: Hadoopことはじめ

Hadoop を使う動機• 大量データを苦労せず高速に処理したい• 一度溜まったデータを動かすにはコストがかかる

• 溜まっているデータをみんなで使いたい

Page 5: Hadoopことはじめ

Q. 大量データを高速に処理するには?A. ディスクをたくさんならべて分散処理するディスクの台数分だけスループットが向上する

ログ 10TBディスク

CPUメモリ1 台の場合 20 台に分散させた場合

500GB 500GB…500GB

読み込みに1GB/sで約 2.8 時間

読み込みに1GB/sで 8.3 分

Page 6: Hadoopことはじめ

Hadoop は分散処理に関わる面倒ごとを引き受けてくれる

Page 7: Hadoopことはじめ

Hadoop のシステムスタック

HDFS(Hadoop Distributed File System)

YARN(Cluster Resource Manager)

Hive/Tez SparkMapReduce Streaming(Storm/Flink…) Others…

UserApplications

Page 8: Hadoopことはじめ

HDFS

• Hadoop Distributed File System の略• 複数のサーバーにあるディスクを一つの巨大なディスクのように見せてくれる• 自動でレプリケーションも作ってくれるので対障害性が高い

Page 9: Hadoopことはじめ

YARN の役割

HDFS

AM AMリソース割り当て( CPU/Mem/IO )

App1(MapReduce) App2(Spark)

ResourceManager

単一クラスターで複数の分散アプリケーションが稼働できる

Page 10: Hadoopことはじめ

単一クラスターのメリット• リソースが効率的に使用され稼働率が上がる• 一つのクラスターだけを運用すればいいので運用コストが低減される• システム間のデータ移動コストがかからなくなる( c.f. 複数クラスターではコピーが発生する)

Page 11: Hadoopことはじめ

Hadoop 上で動く分散アプリケーション• SQL on Hadoop

• Spark SQL, Hive/Tez, Presto, …• ストリーミング

• Spark Streaming, Storm, Flink, …• 機械学習

• Spark ML, SystemML, TensorFlow, …

Page 12: Hadoopことはじめ

SQL on Hadoop• 最近は、 MapReduce 処理を一から書くことはあまりない• SQL( っぽい ) 言語でデータの抽出や集計処理を書くことができる• Jupyter, Apache Zeppelin, re:dash などノートブック環境と合わせて使うと便利

Page 13: Hadoopことはじめ

ストリーミング• 開発が活発に行なわれている。 Apache プロジェクト内でもいくつあるのか・・・。

• Storm, Spark, Flink, Apex…

• 比較記事 : https://yahooeng.tumblr.com/post/135321837876/benchmarking-streaming-computation-engines-at

Page 14: Hadoopことはじめ

これから Hadoop を使ってみるなら• クラウド環境から使いはじめてみるのがよい

• S3 や GCS を HDFS を通して使える• AWS なら、 EMR

• GCP なら、 Cloud Data Proc

Page 15: Hadoopことはじめ

デモ

Page 16: Hadoopことはじめ

まとめ• Hadoop は大量データを処理するためのシステム

• HDFS + YARN + 分散アプリケーション• 用途の異なるアプリが単一クラスターで動く

• 最近は SQL でデータ処理を書けるようになってきた• これからはじめるならクラウド環境を活用するのがよい