Spark Summit 2015 参加報告

28
Spark Summit 2015 参加報告 神田 勝規 @potix2 Spark Casual Talk#1 2015.06.23

Transcript of Spark Summit 2015 参加報告

Page 1: Spark Summit 2015 参加報告

Spark Summit 2015 参加報告

神田 勝規 @potix2 Spark Casual Talk#1 2015.06.23

Page 2: Spark Summit 2015 参加報告

自己紹介神田勝規(かんだかつのり) 株式会社サイバーエージェント アドテク本部 AMoAd所属 サーバーサイドエンジニア(OS/分散システムが専門) !

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

Page 3: Spark Summit 2015 参加報告

Sparkと私• 業務では、広告システムのデータ分析基盤として利用 • Sparkゼミ • 社内の研究支援制度を使って発足 • Sparkへコントリビュートするために6名で活動中 • Sparkのソースコードリーディング会 • もくもく会/合宿 • 現在3名がコントリビューターに

Page 4: Spark Summit 2015 参加報告

アジェンダ• Sparkの紹介 • Spark Summit 2015 振り返り • イベント概要 • セッション紹介

Page 5: Spark Summit 2015 参加報告

Sparkとは?分散環境向けの高速な汎用計算エンジン 計算結果をメモリにキャッシュするので、従来のMRと比べて繰り返し計算が高速

ロジスティック回帰(Hadoop vs Spark)

Page 6: Spark Summit 2015 参加報告

Sparkを構成するコンポーネント

Page 7: Spark Summit 2015 参加報告

Sparkを取り巻くエコシステム

出典: http://www.slideshare.net/databricks/spark-community-update-spark-summit-san-francisco-2015

Page 8: Spark Summit 2015 参加報告

コミュニティも成長を続けている

June 2014 June 2015

total contributors 255 730

contributors/month 75 130

lines of code 175,000 400,000

出典: http://www.slideshare.net/databricks/spark-community-update-spark-summit-san-francisco-2015

Page 9: Spark Summit 2015 参加報告

さらに開発規模が拡大していく予感・・・

出典: http://jp.techcrunch.com/2015/06/16/20150615ibm-pours-researchers-and-resources-into-apache-spark-project/

Page 10: Spark Summit 2015 参加報告

最近の主なリリース• 2015/06/11 1.4.0 • SparkR • Pipelines API • Core/Dataframes可視化ツール • Direct Kafka API for Python

• 2015/03/13 1.3.0 • DataFrame API • Direct Kafka API

Page 11: Spark Summit 2015 参加報告

DataFrame API• DataFrameとはテーブル型データ • SparkのDataFrame APIはPandasとかdplyrと似せてる • Scala, Python, R(1.4以降)で使える

> head(filter(df, df$waiting < 50)) # an example in R ## eruptions waiting ##1 1.750 47 ##2 1.750 47 ##3 1.867 48

Page 12: Spark Summit 2015 参加報告

Spark Summit 2015振り返り

Page 13: Spark Summit 2015 参加報告

イベント概要日時: 2015年6月15日~17日

場所: HILTON SAN FRANCISCO UNION SQUARE

!1日目午前: キーノート

1日目午後: 3トラック(28セッション)

2日目午前: キーノート

2日目午後: 3トラック(28セッション)

3日目: チュートリアル

メイン会場の様子

Page 14: Spark Summit 2015 参加報告

全体を通しての印象• データ分析に関わる内容が多かった • データ分析基盤としての活用事例が多い • DataFrame API/SparkRの登場でユーザー層が広がりそう

• 性能改善に関する取り組みが活発になってきた • 産学連携しながらコミュニティが成長している

Page 15: Spark Summit 2015 参加報告

セッション紹介

Page 16: Spark Summit 2015 参加報告

SparkSQL/DataFrameAPI関連• Spark DataFrames: Simple and Fast Analysis of Structured Data • DataFrame APIのチュートリアル

Page 17: Spark Summit 2015 参加報告

パフォーマンス向上関連(1/3)• Making Sense of Spark Performance • Sparkのパフォーマンス改善の方向性を示している • NSDI’2015に採択 • 以下の条件が揃った結果、CPUがボトルネックになる • ハードウェアの性能向上(高速NW、広帯域SSD) • 十分に最適化されたIO • Dataformatの最適化(Parquetなどbinary format)

Page 18: Spark Summit 2015 参加報告

パフォーマンス向上関連(2/3)• How to Boost 100x Performance for Real World Application w/ Apache Spark • Intel上海チームが取り組んだSparkの性能改善タスクの共有

• SPARK-2213, SPARK-7165, SPARK-2661, SPARK-2713

Page 19: Spark Summit 2015 参加報告

パフォーマンス向上関連(3/3)• プロジェクトTungsten • From DataFrames to Tungsten: A Peek into Spark's Future • DataFramesとTungstenの関係、今後の展開 • http://www.slideshare.net/databricks/2015-0616-spark-summit

• Deep Dive into Project Tungsten: Bringing Spark Closer to Bare Metal • Tungstenで行っていること、開発ロードマップ • https://issues.apache.org/jira/browse/SPARK-7075

Page 20: Spark Summit 2015 参加報告

Tungsten: Preparing Spark for Next 5 Year

CPU効率を上げることで、実行速度を上げる

(1)実行時コード生成 (2)局所性を生かしたキャッシュ (3)オフヒープメモリ管理

実装方針:

出典: http://www.slideshare.net/databricks/2015-0616-spark-summit

Page 21: Spark Summit 2015 参加報告

Tungsten: ベンチマーク結果

出典: http://www.slideshare.net/databricks/2015-0616-spark-summit

Page 22: Spark Summit 2015 参加報告

Tungstenが描く将来 Unified API, One Engine, Automatically Optimized

出典: http://www.slideshare.net/databricks/2015-0616-spark-summit

Page 23: Spark Summit 2015 参加報告

出典: http://www.slideshare.net/databricks/2015-0616-spark-summit

Page 24: Spark Summit 2015 参加報告

まとめ• DataFrame API・Spark SQLなどデータ分析の基盤となる機能は継続して開発が続いていく

• データ分析基盤として活用するユーザー企業が増えてきている

• ユーザー企業が増え続ける中、性能改善へのニーズが増してきている

Page 25: Spark Summit 2015 参加報告

参考資料

Page 26: Spark Summit 2015 参加報告

参考資料(1/2)• Spark

• https://spark.apache.org/ • Spark 1.4 リリースノート

• https://spark.apache.org/releases/spark-release-1-4-0.html • Spark Summit 2015 Agenda

• https://spark-summit.org/2015/schedule/ • Spark Summit 2015 振り返り記事

• https://databricks.com/blog/2015/06/19/a-look-back-at-spark-summit-2015.html

• Slideshare • http://www.slideshare.net/databricks

Page 27: Spark Summit 2015 参加報告

参考資料(2/2)• Project Tungsten

• https://databricks.com/blog/2015/04/28/project-tungsten-bringing-spark-closer-to-bare-metal.html

• https://issues.apache.org/jira/browse/SPARK-7075 • Catalyst Query Optimizer

• https://databricks.com/blog/2015/04/13/deep-dive-into-spark-sqls-catalyst-optimizer.html

• http://people.csail.mit.edu/matei/papers/2015/sigmod_spark_sql.pdf

Page 28: Spark Summit 2015 参加報告

Spark Streaming関連で気になるセッション

• Spark and Spark Streaming at Netflix • NetflixでのSpark活用事例 • 4兆5千億 Events/Day(17GB/s peak)

• Recipes for Running Spark Streaming Applications in Production • Spark StreamingのTips紹介 • スケールアップの方法、高速化、Direct Kafka APIの使い方など