SlideShare uma empresa Scribd logo
1 de 14
Spark x Solrによるリアルタイムト
レンド抽出の具体的手法
飛び込み用
今作った
R&Dちーむ: tanaka.yuichi
自己紹介とか
金融系・組み込み系・コミュニティサービス・ゲーム・広告等の各システムを経てDMMへ。
DMM.comラボにおいて、検索システムの刷新、レコメンドエンジンの新規開発など、基
盤技術の開発を担当しております。
サーバーサイド、フロントエンド、ミドルウェア、インフラと領域問わず、提案から構築・実
装まで幅広くやらせてもらっています。その他OSSのcontributor等もやっております。
株式会社 DMM.comラボ
CTO室
CTO室ってなんだ?
新しい技術の取り込み
研究開発とか
技術サポートとか
対外活動とか
どんな事やってるのかの話
取り組みのコンセプト
ユーザーの行動ログや商品データ、ソーシャルデータからニーズ
にマッチした商品・広告・コンテンツの提供を行う
売り上げの最大化・パイの最大化・隠れた需要の掘り起こし
大規模データの解析・機械学習によるデータを元にしたアプローチ
前段
ミッション
やる事
リアルタイムレコメンドのおさらい
リアルタイムレコメンドのおさらい
今回主につかったもの
• Apache Spark
• SparkStreaming
• GraphX
• SparkMLlib
• Apache Solr
Sparkの丁寧な説明
Apache Spark?
高速に大規模データ処理を行うエンジン
SparkCoreについての説明
Cluster Manager
Yarn
Mesos
Data Source
Stream
HDFS
SparkRDDsの説明
SparkではRDDsという単位でデータを扱います。
val test = sc.textFile("/tmp/sample.txt")
これRDD
test.count このRDDに対して
count
take
collect
map
filter
といった処理を行います
SparkDStreamの説明
RDDsのまとまりをDStreamとして扱います
RDDと似た関数を持っていて、下記のようなStreamデータを
n秒で分けてバッチ処理をする仕組み
SparkStreamingのWindowOperation説明
Tweet10
Tweet9
Tweet8
Tweet7
Tweet6
Tweet5
Tweet4
Tweet3
Tweet2
Tweet1
時間
DStream
1秒
DStream
2秒
DStream
3秒
DStream
4秒
DStream
まとめ
Sparkで問題になりやすい部分
1. 完全に分散処理させるためのハードルが高い(アーキテクト的に)
1. HDFS、YARNの構築・設定が終わってる事前提
2. Sparkのrequirementだけじゃなくてトータルで考える必要がある
3. メモリ馬鹿喰いする
2. プログラムが作り辛い
1. Standalonモードだと分散処理にしたとき転ける事が多い
2. yarn-clientモードでもdriverをclusterにしたときに転けたりする
3. じゃぁ、分散でやれば良いかと言うと、分散するとデバッグが難しい
SparkStreamingで問題になりやすい部分
1. 途中で止める方法がない
1. 通常のSparkプログラムとCluster上での動作が違う
2. graceful-stopはプログラム側で実装しないとダメ
3. Streamingの性質上、データロストの対策を考えないとダメ
4. プログラムの差し替えの方法を考えないとダメ
5. どうやって運用するかは課題が山積み
以上

Mais conteúdo relacionado

Semelhante a リアルタイムトレンド抽出飛び込み用

楽しいものづくり ファーストステップ
楽しいものづくり ファーストステップ楽しいものづくり ファーストステップ
楽しいものづくり ファーストステップSatoshi Maemoto
 
Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話ToshiharuSakai
 
2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network ConsoleSony Network Communications Inc.
 
世界を変える先端Itテクノロジー
世界を変える先端Itテクノロジー世界を変える先端Itテクノロジー
世界を変える先端ItテクノロジーSatoshi Maemoto
 
クラッシュフィーバー開発の裏側
クラッシュフィーバー開発の裏側クラッシュフィーバー開発の裏側
クラッシュフィーバー開発の裏側Tomotsune Murata
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 
クラッシュフィーバーのシステム構成
クラッシュフィーバーのシステム構成クラッシュフィーバーのシステム構成
クラッシュフィーバーのシステム構成Tomotsune Murata
 
EXE #3: AIを協力して作成するDapp
EXE #3: AIを協力して作成するDappEXE #3: AIを協力して作成するDapp
EXE #3: AIを協力して作成するDappblockchainexe
 
xR Developerなら知っておきたいカメラの基礎知識
xR Developerなら知っておきたいカメラの基礎知識xR Developerなら知っておきたいカメラの基礎知識
xR Developerなら知っておきたいカメラの基礎知識Satoshi Maemoto
 
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方Hisahiko Shiraishi
 
「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来Yoshihito Kuranuki
 
非エンジニアに人工知能に 興味を持ってもらう話
非エンジニアに人工知能に興味を持ってもらう話非エンジニアに人工知能に興味を持ってもらう話
非エンジニアに人工知能に 興味を持ってもらう話Satoru Mikami
 
モバイルが モーションセンサーに 出会ったら
モバイルがモーションセンサーに出会ったらモバイルがモーションセンサーに出会ったら
モバイルが モーションセンサーに 出会ったらAkira Hatsune
 
20160820 ソラコム主催ハンズオン LT資料
20160820 ソラコム主催ハンズオン LT資料20160820 ソラコム主催ハンズオン LT資料
20160820 ソラコム主催ハンズオン LT資料Toru Murasawa
 
探検隊長が語るSoftLayerデザインパターン
探検隊長が語るSoftLayerデザインパターン探検隊長が語るSoftLayerデザインパターン
探検隊長が語るSoftLayerデザインパターンMaho Takara
 
2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leapSony Network Communications Inc.
 
第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料Naoki Shibata
 
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介Mitch Okamoto
 
LEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupLEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupItsuki Kuroda
 

Semelhante a リアルタイムトレンド抽出飛び込み用 (20)

楽しいものづくり ファーストステップ
楽しいものづくり ファーストステップ楽しいものづくり ファーストステップ
楽しいものづくり ファーストステップ
 
Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話Redmineの情報を自分好みに見える化した話
Redmineの情報を自分好みに見える化した話
 
2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console2018/3/23 Introduction to Deep Learning by Neural Network Console
2018/3/23 Introduction to Deep Learning by Neural Network Console
 
世界を変える先端Itテクノロジー
世界を変える先端Itテクノロジー世界を変える先端Itテクノロジー
世界を変える先端Itテクノロジー
 
クラッシュフィーバー開発の裏側
クラッシュフィーバー開発の裏側クラッシュフィーバー開発の裏側
クラッシュフィーバー開発の裏側
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
クラッシュフィーバーのシステム構成
クラッシュフィーバーのシステム構成クラッシュフィーバーのシステム構成
クラッシュフィーバーのシステム構成
 
EXE #3: AIを協力して作成するDapp
EXE #3: AIを協力して作成するDappEXE #3: AIを協力して作成するDapp
EXE #3: AIを協力して作成するDapp
 
What's TMCN?
What's TMCN?What's TMCN?
What's TMCN?
 
xR Developerなら知っておきたいカメラの基礎知識
xR Developerなら知っておきたいカメラの基礎知識xR Developerなら知っておきたいカメラの基礎知識
xR Developerなら知っておきたいカメラの基礎知識
 
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方
ゲーム事業×データ分析 ドリコムにおける組織と仕事の組み立て方
 
「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来「納品のない受託開発」にみるソフトウェア受託開発の未来
「納品のない受託開発」にみるソフトウェア受託開発の未来
 
非エンジニアに人工知能に 興味を持ってもらう話
非エンジニアに人工知能に興味を持ってもらう話非エンジニアに人工知能に興味を持ってもらう話
非エンジニアに人工知能に 興味を持ってもらう話
 
モバイルが モーションセンサーに 出会ったら
モバイルがモーションセンサーに出会ったらモバイルがモーションセンサーに出会ったら
モバイルが モーションセンサーに 出会ったら
 
20160820 ソラコム主催ハンズオン LT資料
20160820 ソラコム主催ハンズオン LT資料20160820 ソラコム主催ハンズオン LT資料
20160820 ソラコム主催ハンズオン LT資料
 
探検隊長が語るSoftLayerデザインパターン
探検隊長が語るSoftLayerデザインパターン探検隊長が語るSoftLayerデザインパターン
探検隊長が語るSoftLayerデザインパターン
 
2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap2018/07/26 Game change by Deep Learning and tips to make a leap
2018/07/26 Game change by Deep Learning and tips to make a leap
 
第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料第4回 SoftLayer勉強会 資料
第4回 SoftLayer勉強会 資料
 
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介
[Heroku meetup LT] Salesforce1 Developers Community MAXの紹介
 
LEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartupLEANSTARTUPアンチパターン #devlove #leanstartup
LEANSTARTUPアンチパターン #devlove #leanstartup
 

Último

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 

Último (10)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 

リアルタイムトレンド抽出飛び込み用

Notas do Editor

  1. ※赤字部分は軽く説明
  2. ※ここでmapreduceとの違いにも言及しておく