Submit Search
Upload
Spark GraphX で始めるグラフ解析
•
Download as PPTX, PDF
•
5 likes
•
2,970 views
Yosuke Mizutani
Follow
Ichigaya Geek Night Lightning Talk (2016-12-21)
Read less
Read more
Technology
Report
Share
Report
Share
1 of 17
Download now
Recommended
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
Tanaka Yuichi
Sparkを用いたビッグデータ解析 〜 前編 〜
Sparkを用いたビッグデータ解析 〜 前編 〜
x1 ichi
Spark Streaming と Spark GraphX を使用したTwitter解析による レコメンドサービス例
Spark Streaming と Spark GraphX を使用したTwitter解析による レコメンドサービス例
Junichi Noda
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
sugiyama koki
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
Kazuki Taniguchi
Spark Streamingで作る、つぶやきビッグデータのクローン(Hadoop Spark Conference Japan 2016版)
Spark Streamingで作る、つぶやきビッグデータのクローン(Hadoop Spark Conference Japan 2016版)
Junichi Noda
Bluemixを使ったTwitter分析
Bluemixを使ったTwitter分析
Tanaka Yuichi
Big datauniversity
Big datauniversity
Tanaka Yuichi
Recommended
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
初めてのSpark streaming 〜kafka+sparkstreamingの紹介〜
Tanaka Yuichi
Sparkを用いたビッグデータ解析 〜 前編 〜
Sparkを用いたビッグデータ解析 〜 前編 〜
x1 ichi
Spark Streaming と Spark GraphX を使用したTwitter解析による レコメンドサービス例
Spark Streaming と Spark GraphX を使用したTwitter解析による レコメンドサービス例
Junichi Noda
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
sugiyama koki
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
Kazuki Taniguchi
Spark Streamingで作る、つぶやきビッグデータのクローン(Hadoop Spark Conference Japan 2016版)
Spark Streamingで作る、つぶやきビッグデータのクローン(Hadoop Spark Conference Japan 2016版)
Junichi Noda
Bluemixを使ったTwitter分析
Bluemixを使ったTwitter分析
Tanaka Yuichi
Big datauniversity
Big datauniversity
Tanaka Yuichi
20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark
Ryuji Tamagawa
PythonでDeepLearningを始めるよ
PythonでDeepLearningを始めるよ
Tanaka Yuichi
Apache Sparkを使った感情極性分析
Apache Sparkを使った感情極性分析
Tanaka Yuichi
HBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejp
FwardNetwork
Watson summit 2016_j2_5
Watson summit 2016_j2_5
Tanaka Yuichi
本当にあったApache Spark障害の話
本当にあったApache Spark障害の話
x1 ichi
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
Tanaka Yuichi
20151205 Japan.R SparkRとParquet
20151205 Japan.R SparkRとParquet
Ryuji Tamagawa
Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016
Tatsuya Atsumi
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
Tanaka Yuichi
Apache Sparkの紹介
Apache Sparkの紹介
Ryuji Tamagawa
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
Katsunori Kanda
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
Tanaka Yuichi
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
The Japan DataScientist Society
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
NTT DATA OSS Professional Services
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
LINE Corp.
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Future Of Data Japan
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
LINE Corp.
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
Tanaka Yuichi
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Hadoop / Spark Conference Japan
Survey of Apache Spark
Survey of Apache Spark
Mila, Université de Montréal
Spark graph framesとopencypherによる分散グラフ処理の最新動向
Spark graph framesとopencypherによる分散グラフ処理の最新動向
Nagato Kasaki
More Related Content
What's hot
20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark
Ryuji Tamagawa
PythonでDeepLearningを始めるよ
PythonでDeepLearningを始めるよ
Tanaka Yuichi
Apache Sparkを使った感情極性分析
Apache Sparkを使った感情極性分析
Tanaka Yuichi
HBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejp
FwardNetwork
Watson summit 2016_j2_5
Watson summit 2016_j2_5
Tanaka Yuichi
本当にあったApache Spark障害の話
本当にあったApache Spark障害の話
x1 ichi
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
Tanaka Yuichi
20151205 Japan.R SparkRとParquet
20151205 Japan.R SparkRとParquet
Ryuji Tamagawa
Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016
Tatsuya Atsumi
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
Tanaka Yuichi
Apache Sparkの紹介
Apache Sparkの紹介
Ryuji Tamagawa
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
Katsunori Kanda
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
Tanaka Yuichi
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
The Japan DataScientist Society
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
NTT DATA OSS Professional Services
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
LINE Corp.
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Future Of Data Japan
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
LINE Corp.
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
Tanaka Yuichi
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Hadoop / Spark Conference Japan
What's hot
(20)
20160127三木会 RDB経験者のためのspark
20160127三木会 RDB経験者のためのspark
PythonでDeepLearningを始めるよ
PythonでDeepLearningを始めるよ
Apache Sparkを使った感情極性分析
Apache Sparkを使った感情極性分析
HBaseとSparkでセンサーデータを有効活用 #hbasejp
HBaseとSparkでセンサーデータを有効活用 #hbasejp
Watson summit 2016_j2_5
Watson summit 2016_j2_5
本当にあったApache Spark障害の話
本当にあったApache Spark障害の話
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
SparkとJupyterNotebookを使った分析処理 [Html5 conference]
20151205 Japan.R SparkRとParquet
20151205 Japan.R SparkRとParquet
Pythonで入門するApache Spark at PyCon2016
Pythonで入門するApache Spark at PyCon2016
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
BigDataUnivercity 2017年改めてApache Sparkとデータサイエンスの関係についてのまとめ
Apache Sparkの紹介
Apache Sparkの紹介
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
Devsumi 2016 b_4 KafkaとSparkを組み合わせたリアルタイム分析基盤の構築
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
15.05.21_ビッグデータ分析基盤Sparkの最新動向とその活用-Spark SUMMIT EAST 2015-
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsear...
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
ApacheSparkを中心としたOSSビッグデータ活用と導入時の検討ポイント
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Similar to Spark GraphX で始めるグラフ解析
Survey of Apache Spark
Survey of Apache Spark
Mila, Université de Montréal
Spark graph framesとopencypherによる分散グラフ処理の最新動向
Spark graph framesとopencypherによる分散グラフ処理の最新動向
Nagato Kasaki
ゼロから始めるSparkSQL徹底活用!
ゼロから始めるSparkSQL徹底活用!
Nagato Kasaki
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Rescale Japan株式会社
Spark Summit 2014 の報告と最近の取り組みについて
Spark Summit 2014 の報告と最近の取り組みについて
Recruit Technologies
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
Recruit Technologies
Blueprintsについて
Blueprintsについて
Tetsuro Nagae
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
datastaxjp
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
鉄平 土佐
BigDLでScala × DeepLearning に入門した話
BigDLでScala × DeepLearning に入門した話
hirotakanosato
AWS re:Invent2017で見た AWSの強さとは
AWS re:Invent2017で見た AWSの強さとは
NTT Communications Technology Development
Spark GraphXについて @Spark Meetup 2014/9/8
Spark GraphXについて @Spark Meetup 2014/9/8
鉄平 土佐
Apache spark 2.3 and beyond
Apache spark 2.3 and beyond
NTT DATA Technology & Innovation
Jjug ccc
Jjug ccc
Tanaka Yuichi
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
ryos36
ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介
Jun Ando
Spark CL
Spark CL
力世 山本
DBP-011_Apache Spark for Azure HDInsight ~新世代の Big Data 処理基盤~
DBP-011_Apache Spark for Azure HDInsight ~新世代の Big Data 処理基盤~
decode2016
平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、Databricksでもやってみましょうか
Ryuichi Tokugami
SparkやBigQueryなどを用いたモバイルゲーム分析環境
SparkやBigQueryなどを用いたモバイルゲーム分析環境
yuichi_komatsu
Similar to Spark GraphX で始めるグラフ解析
(20)
Survey of Apache Spark
Survey of Apache Spark
Spark graph framesとopencypherによる分散グラフ処理の最新動向
Spark graph framesとopencypherによる分散グラフ処理の最新動向
ゼロから始めるSparkSQL徹底活用!
ゼロから始めるSparkSQL徹底活用!
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Spark Summit 2014 の報告と最近の取り組みについて
Spark Summit 2014 の報告と最近の取り組みについて
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
Blueprintsについて
Blueprintsについて
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
GraphXはScalaエンジニアにとってのブルーオーシャン @ Scala Matsuri 2014
BigDLでScala × DeepLearning に入門した話
BigDLでScala × DeepLearning に入門した話
AWS re:Invent2017で見た AWSの強さとは
AWS re:Invent2017で見た AWSの強さとは
Spark GraphXについて @Spark Meetup 2014/9/8
Spark GraphXについて @Spark Meetup 2014/9/8
Apache spark 2.3 and beyond
Apache spark 2.3 and beyond
Jjug ccc
Jjug ccc
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
ACRi HLSチャレンジ 高速化テクニック紹介
ACRi HLSチャレンジ 高速化テクニック紹介
Spark CL
Spark CL
DBP-011_Apache Spark for Azure HDInsight ~新世代の Big Data 処理基盤~
DBP-011_Apache Spark for Azure HDInsight ~新世代の Big Data 処理基盤~
平成最後の1月ですし、Databricksでもやってみましょうか
平成最後の1月ですし、Databricksでもやってみましょうか
SparkやBigQueryなどを用いたモバイルゲーム分析環境
SparkやBigQueryなどを用いたモバイルゲーム分析環境
More from Yosuke Mizutani
Introduction to Graph Theory
Introduction to Graph Theory
Yosuke Mizutani
フロントエンド初心者の大学生が Scala.js で Web アプリを作ってみた話
フロントエンド初心者の大学生が Scala.js で Web アプリを作ってみた話
Yosuke Mizutani
はじめての CircleCI
はじめての CircleCI
Yosuke Mizutani
Adtech x Scala x Performance tuning
Adtech x Scala x Performance tuning
Yosuke Mizutani
ScalaにまつわるNewsな話
ScalaにまつわるNewsな話
Yosuke Mizutani
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Yosuke Mizutani
More from Yosuke Mizutani
(6)
Introduction to Graph Theory
Introduction to Graph Theory
フロントエンド初心者の大学生が Scala.js で Web アプリを作ってみた話
フロントエンド初心者の大学生が Scala.js で Web アプリを作ってみた話
はじめての CircleCI
はじめての CircleCI
Adtech x Scala x Performance tuning
Adtech x Scala x Performance tuning
ScalaにまつわるNewsな話
ScalaにまつわるNewsな話
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Spark GraphX で始めるグラフ解析
1.
Spark GraphX で始めるグラフ解析 市ヶ谷Geek★Night#11 Lightning
Talk 2016-12-21 @mogproject
2.
About me http://mogproject.com
3.
Spark GraphX Apache Spark
GraphX とは ▸Spark に標準で組み込まれているグラフ処理 API ▸Spark クラスタ = データストア / 計算資源 ▸大規模グラフを扱いやすい
4.
Spark GraphX 今回お話しする「グラフ」は・・・
5.
Why GraphX? 実用例 ▸大規模グラフの分析プロジェクト (論文の共著者関係分析) ▸ノード数:
500万〜 エッジ数: 9000万〜 ▸最初は Python製 の NetworkX を使っていた ▸グラフが大きくなるにつれ、メモリ不足が発生 ▸Scala / Spark に慣れているなら手軽に利用可能
6.
Why GraphX? 実用例: (無向)グラフの中心性計算 ▸次数中心性 ▸次数
= 各ノードに接続しているエッジの数 ▸直接的なつながりの多いノードを発見できる ▸媒介中心性 ▸全てのノードの組に対して最短経路を求める ▸より多くの組の最短経路上に位置するノードを計算
7.
コード例 build.sbt ▸"spark-graphx" への依存を追加 ▸Scala 2.12
には未対応 scalaVersion := "2.11.8" libraryDependencies ++= Seq( "org.apache.spark" %% "spark-core" % "2.0.2", "org.apache.spark" %% "spark-graphx" % "2.0.2" ) build.sbt
8.
コード例 グラフデータの読み込み ▸エッジリストからグラフを生成する例 0 1 0 2 1
2 1 3 3 4 4 5 4 6 5 6 edge_list_1.txt
9.
コード例 グラフデータの読み込み ▸GraphLoader のメソッドを利用する import org.apache.spark._ import
org.apache.spark.graphx._ val conf = new SparkConf().setMaster(s"local[2]") val sc = new SparkContext(conf) val g: Graph[Int, Int] = GraphLoader.edgeListFile(sc, "path/to/edge_list.txt") Main.scala
10.
コード例 次数中心性の計算 ▸Graph#degrees を呼び出すだけ g.degrees.sortByKey().collect().foreach {
case (n, v) => println(s"Node: ${n} -> Degree: ${v}") } Node: 0 -> Degree: 2 Node: 1 -> Degree: 3 Node: 2 -> Degree: 2 Node: 3 -> Degree: 2 Node: 4 -> Degree: 3 Node: 5 -> Degree: 2 Node: 6 -> Degree: 2 Main.scala 出力例
11.
コード例 次数中心性の計算 3 2 3 2 2 2 2
12.
コード例 媒介中心性の計算 ▸なかなか大変 (説明省略)
13.
コード例 媒介中心性の計算 ▸実行結果 Node: 0 ->
Betweenness: 0.0 Node: 1 -> Betweenness: 8.0 Node: 2 -> Betweenness: 0.0 Node: 3 -> Betweenness: 9.0 Node: 4 -> Betweenness: 8.0 Node: 5 -> Betweenness: 0.0 Node: 6 -> Betweenness: 0.0 出力例
14.
コード例 媒介中心性の計算 8 0 8 0 9 0 0
15.
後日談 性能面の課題 ▸グラフ操作の種類 (アルゴリズム) によって得手不得手があ る ▸Spark
ノード間の通信コスト ▸Spark の UI でモニタリングしつつチューニングを繰り返す
16.
後日談 C++ で実装し直した ▸とある処理の所要時間: 854日
(GraphX) -> 15日 (C++) 60 倍 高速化!
17.
Thanks! ご清聴ありがとうございました ▸コード例はこちら ▸https://github.com/mogproject/example-graphx クリスマスに働く人のイラスト ©︎いらすとや
Editor's Notes
昨年まで市ヶ谷で Scala エンジニア 今年からアメリカに留学、人生ニューゲーム、スーパーマリオラン
点と線で表現されるデータ構造 関係性の分析に適している 点をノード、線をエッジと呼ぶ
ダンベル型のグラフ
3番のノードは、次数は低いのものの、媒介中心性が高い
Download now