Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

第1回 ``Learning Spark'' 読書会 第1章 ``Introduction to Data Analysis with Spark''

1,675 views

Published on

2015/2/28開催の第1回 ``Learning Spark'' 読書会 第1章の資料です。
http://readlearningspark.connpass.com/event/11846/

Published in: Data & Analytics
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

第1回 ``Learning Spark'' 読書会 第1章 ``Introduction to Data Analysis with Spark''

  1. 1. 第 1 回 “Learning Spark” 読書会 Chap. 1: “Introduction to Data Analysis with Spark” – Sparkによるデータ分析への招待 – @data sciesotist 2015/2/28
  2. 2. 1 “This chapter provides...” • この章では、Apache Sparkとは何なのか? ということについて、全体像を紹介します • すでにApache Sparkと関連プロジェクトに ついてご存知ならば、読み飛ばして第2章に 進んでください ……だそうです。 いきなり読み飛ばしてもアレなので読みますが 1
  3. 3. 2 “What is Apache Spark?” (1) • 高速・汎用の分散処理プラットフォーム • 高速: MapReduceモデルを拡張し、 インタラクティブ処理や、ストリーム処理に 対応している • データ処理のたびに何時間も待たなくてよい • インメモリで高速な処理が可能 • MapReduce + ディスクより効率的 2
  4. 4. 3 “What is Apache Spark?” (2) • 汎用性: それぞれ専用の仕組みが使われていた さまざまな処理に対応 • バッチ処理、反復処理、 インタラクティブ処理、ストリーム処理 • それらを組み合わせた “データ分析パイプ ライン” を作れる • いろんなツールを使い分ける必要もなく、 管理が簡単 3
  5. 5. 4 “What is Apache Spark?” (3) • Python、Java、ScalaのシンプルなAPIと SQLへの対応、その他にも高機能な 組み込みライブラリが用意されている • 他のビッグデータ処理基盤とも統合可能で、 Hadoopクラスタ上でSparkを実行したり、 Cassandraを含むHadoopのデータソースに もアクセスできる 4
  6. 6. 5 “A Unified Stack” (1) • Sparkプロジェクトはいくつもの 密接に関連するコンポーネントから構成される • Spark Core: リソースのスケジューリング、 分散処理の割り当て、アプリケーションの モニタリングなどを担当 • コアの上でさまざまな用途 (SQL、機械学習) に特化したコンポーネントが動作する • コンポーネントは組み合わせて利用できる 5
  7. 7. 6 “A Unified Stack” (2) • 密接な連携のおかげで、コアの改良が上位の コンポーネントの性能改善につながる • 用途ごとにさまざまなシステムを個別に管理し なくてもよく、運用コストを低減できる • 新機能の検証・導入も容易 • 最大の利点は、異なる分析手法、使い方を 組み合わせた利用が容易であること 6
  8. 8. 7 “A Unified Stack” (3) • 例えば、ストリーム処理によって得られた リアルタイムデータを機械学習で分類する • 例えば、アナリストはSQLで非構造化データ を検索する、もう少しイケてるデータサイエン ティストはPythonシェルでアドホック分析を する、他の人は一般的なバッチ処理の結果を 見るなど、さまざまな使い方ができる • IT部門は “Spark” だけを運用すればよい 7
  9. 9. 8 “A Unified Stack” (4) Sparkの全体像 (SparkプロジェクトWebサイトより) ※本の図版とは多少異なります 8
  10. 10. 9 構成要素 (1) Spark Core • スケジューリング、メモリ管理、障害復旧、 ストレージとのやりとりなどを担当 • RDDs (Resilient Distributed Datasets) と いう概念とそれを扱うためのAPIを提供する • RDDsは “コレクション” で、複数のノードに またがって配置され、並列で処理できる 9
  11. 11. 10 構成要素 (2) Spark SQL • Hive (HQL) と同等の、SQLを用いて構造化 データを扱うためのパッケージ ■ Hive、Parquet、JSONなどに対応している ■ Python、Java、ScalaからRDDsに対してSQLを発行 するためのAPIを提供する ■ 単一のSparkアプリケーション中で、SQL操作と 複雑な分析を組み合わせられる ■ 以前はSharkというプロジェクトだった 10
  12. 12. 11 構成要素 (2) Spark SQL Spark SQLは既存のHiveなどと連携できる 既存のBIツールからビッグデータを検索できる 11
  13. 13. 12 構成要素 (3) Spark Streaming • ストリームデータ*1 を扱うためのパッケージ ■ RDDsと密接に連携したストリームデータ処理のための APIを提供する ■ インメモリ、オンディスク、ストリームデータを 扱うアプリケーション間でAPIの共通性が高いため、 学習やプログラムの改変が容易 *1 間断なく入力されるデータ。リアルタイムデータ 12
  14. 14. 13 構成要素 (3) Spark Streaming 標準機能を用いて、特別な記述なしに耐障害性が実現できる 13
  15. 15. 14 構成要素 (4) MLlib • 機械学習の機能を提供するパッケージ ■ 分類、回帰、クラスタリング、協調フィルタリング*2 の各アルゴリズムに対応 ■ 最急降下法*3 など、低レベルの関数も提供されている ■ クラスタへのスケールアップを意図して設計されている *2 いわゆるレコメンド *3 関数の最適化を行う手法の1つ……だそう 14
  16. 16. 15 構成要素 (4) MLlib ロジスティック回帰の実行速度をHadoopと比較した様子 15
  17. 17. 16 構成要素 (5) GraphX • グラフ*4 を扱うためのパッケージ • Spark CoreのRDDs APIを拡張し、任意の ノードとエッジを用いたグラフが扱える • ページランクや三角形の数のカウント*5 など 広く使われるアルゴリズムを実装している *4 数学のグラフ理論が扱う、データどうしのつながりを 「ノード」と「エッジ」で表現したもの *5 ソーシャルグラフの分析でよく使うらしい 16
  18. 18. 17 構成要素 (5) GraphX ノードとエッジからなるグラフをさまざまに分析可能 17
  19. 19. 18 構成要素 (6) クラスタ管理 • Sparkはサーバ単体での利用から数千台規模へ の拡張まで、高いスケーラビリティを意図し て設計されている • 高い拡張性を実現するために、Sparkは Hadoop YARN、Apache Mesos、自身の スタンドアロンスケジューラなどの クラスタマネージャ上で動作する • デフォルトはスタンドアロンスケジューラ 18
  20. 20. 19 “Who Uses Spark, and for What?” • Sparkは汎用のフレームワークなので、 さまざまな用途で利用されている • 大まかにはデータサイエンティストと エンジニアが主要なユーザ • もちろん1人の人が両方のスキルを持ち、両方 の立場を切り替えてデータ処理を行うことも多 いが、ここではそれぞれのグループにおける ユースケースを見ていく 19
  21. 21. 20 参考: 「データサイエンティスト」のスキルセット 出典: データサイエンティスト協会「データサイエンティストに求められるスキルセット」 http://prtimes.jp/main/html/rd/p/000000005.000007312.html 20
  22. 22. 21 “Data Science Tasks” (1) • 流行りの言葉で明確な定義はない • 一般に、データを分析し、モデル化すること • SQL、統計学、機械学習などへの理解、 Python、MatlabやRのスキルが求められる • データを分析可能な形式に変換するスキルも 必要 (“Data wrangling”)*6 *6 データクレンジングとか前処理とか表現はいろいろ 21
  23. 23. 22 “Data Science Tasks” (2) • 何かを “発見” するには、アドホックな 分析が求められることが多い • Sparkのインタラクティブ処理機能が適する • Scalaシェル、Pythonシェルから高速・多機能 なAPI、パッケージを活用し、RやPandas*7 で やっていたよりも効率的に、問題を解決できる *7 Python Data Analysis Library 22
  24. 24. 23 “Data Processing Applications” (1) • アドホック分析が形になったら、 アプリケーションとして実装する • 多くのエンジニア*8 がSparkでデータ処理 アプリケーションを開発できるようになる • 分散処理、ネットワーク、障害対策を意識 しなくてもアプリケーションを開発できる *8 それなりのスキルがある 23
  25. 25. 24 “A Brief History of Spark” (1) • 2009年、UCB AMP Labで開発開始 • Hadoopは反復処理、インタラクティブ処理に 向かないという課題意識から出発 • 反復処理、インタラクティブ処理の高速化と インメモリ処理、高可用性を目標に開発 • 2009年の論文時点で特定のジョブについては Hadoopの10倍から20倍の高速化を達成 24
  26. 26. 25 “A Brief History of Spark” (2) • “Mobile Millennium Project” をはじめ内外の 多くのプロジェクトがSparkを採用 • Spark MeetupやSpark Summitが盛況 • 2011年、AMP LabはSparkを含むビッグ データ処理基盤の全体像をBDAS*9 として発表 • 2010年にOSS化、2013年にASFに寄贈 *9 Berkeley Data Analytics Stack 25
  27. 27. 26 “Spark Versions and Releases” • コミュニティと多くの開発者によって積極的な 開発が続いている • Spark 1.0は2014年5月にリリースされた • 本書はSpark 1.1.0をベースに執筆している • 注: この読書会資料は最新の1.2.1を ベースに動作確認しています 26
  28. 28. 27 参考: コミュニティの活発度 *10 *11 *10 http://www.slideshare.net/recruitcojp/2014-08-atlpresentationblogpptx *11 http://www.slideshare.net/hadoopxnttdata/20140802-nttd-sparkosckyoto 27
  29. 29. 28 “Storage Layers for Spark” • SparkはHadoop APIがサポートする ストレージを 利用できる (ローカル、HDFS、S3、Cassandra、Hive、Hbaseなど) • SparkにHadoop (全体) は「必要」ではない • データ読み込みに関するAPIだけあればよい ……以上が第1章の内容でした。 28

×