23
クラウド運用の ため のストリームマイニング 神戸 大学 柗本 真佑 2014/01/23 WinterWorkshop2014@ 大洗

クラウド運用のためのストリームマイニング

Embed Size (px)

Citation preview

Page 1: クラウド運用のためのストリームマイニング

クラウド運用のためのストリームマイニング

神戸大学 柗本 真佑

2014/01/23WinterWorkshop2014@大洗

Page 2: クラウド運用のためのストリームマイニング

柗本 真佑

themesソフトウェア工学データマイニングSOAクラウド

interested in○ 設計・開発・テスト△ 要求・運用・保守

Page 3: クラウド運用のためのストリームマイニング

2

概要

•データという観点からクラウド運用を考える

•思考・調査のあしあと

•まとまりなし,結論なし

•議論の種・思考の種に

Page 4: クラウド運用のためのストリームマイニング

3

クラウドとWeb API

•システムの機能をAPIとして公開• Web経由で

• プラットフォームに依らず

• ソフトウェアから (自動的に)

• 単純な手続きで,利用できる

IaaSAPI

PaaS/SaaSAPI

・launchVM()・attachVolume()

・tweet()・listTweets()

Page 5: クラウド運用のためのストリームマイニング

4

運用・保守のためのWeb API

•システムの機能( ・ ・ )をAPIとして公開• Web経由で

• プラットフォームに依らず

• ソフトウェアから (自動的に)

• 単純な手続きで,利用できる

IaaS

PaaS/SaaS

Measuring API

Management API

Functional API

Measuring API

Management API

Functional API

本質 計測 運用

Page 6: クラウド運用のためのストリームマイニング

5

何を計測するか?

• IaaS• # of running VMs

• CPU usage

• Disk usage

• Memory swap rate

• I/O latency

• PaaS/SaaS• # of registered users

• # of active users

• # of transactions

(# of tweets, # of photos, …)

• Common• # of API calls

• Avg/Max response time

• # of timed out requests

Measuring API

Management API

Functional API

Page 7: クラウド運用のためのストリームマイニング

6

何を計測するか?

• IaaS• # of running VMs

• CPU usage

• Disk usage

• Memory swap rate

• I/O latency

• PaaS/SaaS• # of registered users

• # of active users

• # of transactions

(# of tweets, # of photos, …)

• Common• # of API calls

• Avg/Max response time

• # of timed out requests

Measuring API

Management API

Functional API

何を計測するか?何のために計測するか?

Page 8: クラウド運用のためのストリームマイニング

7

リク

エス

ト数

時間

何のために計測するか?

• What• 現状分析,異常検出,障害究明,アクセス集中・・・

• How• 基本的な統計分析,見える化,外れ値検出・・・

レス

ポン

ス時

リクエスト

Future

Past

Present

Page 9: クラウド運用のためのストリームマイニング

8

何のために計測するか?

• What• 予測保守,障害予測,デマンド予測,API先読み実行・・・

• How• パターン検出,機械学習,共起関係分析,予測・・・

リク

エス

ト数

月 火 水 木 金 土 日

API X

others

API Y

Future

Past

Present

Page 10: クラウド運用のためのストリームマイニング

9

何のために計測するか?

•米Amazonの“Anticipatory shipping”

http://blogs.wsj.com/digits/2014/01/17/amazon-wants-to-ship-your-package-before-you-buy-it/

Future

Past

Present

Personalized

Page 11: クラウド運用のためのストリームマイニング

10

何のために計測するか?

•米Amazonの“Anticipatory shipping”

http://blogs.wsj.com/digits/2014/01/17/amazon-wants-to-ship-your-package-before-you-buy-it/

Future

Past

Present

Personalized

ユーザレベルでのきめ細やかな運用・保守

Personalized O&M

Page 12: クラウド運用のためのストリームマイニング

11

何のために計測するか?

•米Amazonの“Anticipatory shipping”

http://blogs.wsj.com/digits/2014/01/17/amazon-wants-to-ship-your-package-before-you-buy-it/

Future

Past

Present

Personalized

ユーザレベルでのきめ細やかな運用・保守

Personalized O&M

計測データをどう役立てるか?可視化より強力な方法は?

Page 13: クラウド運用のためのストリームマイニング

12

計測データ活用のためには?

高度な運用・保守,品質改善

•技術的にどうやって? How?

要件1: 大量のデータを

要件2: リアルタイムに

詳細な計測

運用・保守への適用

要件3: 高度なデータマイニング

時系列データ

詳細な計測 高度なデータマイニング

MapReduce

Page 14: クラウド運用のためのストリームマイニング

13

ストリームマイニング (SM)

•データストリームをマイニングする手法・アルゴリズム• データストリーム: 時間的に変化しながら終わりなく到着するデータ

(取引履歴,通信ログ,ニュース,・・・)

store

mine

mine

knowledge

knowledge

通常のデータマイニング ストリームマイニングdata

streams

t

Page 15: クラウド運用のためのストリームマイニング

14

ストリームマイニング概要

•膨大なデータストリームに対し,• 利用者の要求に即応して,

• 小さな計算機資源で,

• 近似解を返す,手法・アルゴリズムのこと*

•特定の手法を指す言葉ではない• One-path制約付きのデータマイニング手段の総称

• (基本的には) 厳密な解を求めない• 粗視化・データ要約・確率計算など

• マイニング目的に応じて興味のない部分を捨てる

※ 最近では厳密解を求められる方法も登場しつつある

*有村 博紀, 喜田 拓也, “データストリームのためのマイニング技術”, 情報処理, 2005, vol.46, no.1

Page 16: クラウド運用のためのストリームマイニング

15

SMで何ができるか?

•基本的な統計量• 集計,平均,分散

•クラスタリング

•機械学習

• トレンド分析

•一般的なデータマイニングと同等

Page 17: クラウド運用のためのストリームマイニング

16

SMの実現手段は?

• Apache S4 (Simple Scalable Streaming System)

•処理の流れ• twitterのハッシュカウント

S4 is a general-purpose, distributed, scalable, fault-tolerant, pluggable platform that allows programmers to easily develop applications for processing continuous unbounded streams of data.

PE

PE

PE http://oss.infoscience.co.jp/s4/docs.s4.io/examples/twitter_topic_counter.html

http://incubator.apache.org/s4/

key: topic=“s4”val: count=1

key: nullval: “#s4, a distributed #stream processing”

key: topic=“stream”val: count=1

PE

val: topic=“s4”, count=4 PE: Processing Element

Page 18: クラウド運用のためのストリームマイニング

17

• Storm

• Storm + Hadoop• Lambda architecture*

Speed layer (Storm)

Batch layer (Hadoop)

他にも色々

Storm is a free and open source distributed realtime computation system.

New data stream

query

*Big Data: Principles and best practices of scalable realtime data systems, Manning Publications Co, 2012

http://storm-project.net/

Streamprocessing

All dataPrecompute

views

Batch view

Batch view

Realtime view

Page 19: クラウド運用のためのストリームマイニング

18

運用・保守へどう適用するか?

• S4, Storm = 汎用リアルタイム処理フレームワーク• 「リアルタイムMapReduce」 「ストリーミングMapReduce」

•運用・保守に特化させたクラウドシステムへ• PaaS型,Cloud Ops. as a Service

Wikipedia, Image:060428-bagger288-garzweiler.jpg; Bearbeitung von Snorky

Page 20: クラウド運用のためのストリームマイニング

19

運用・保守へどう適用するか?

• S4, Storm = 汎用リアルタイム処理フレームワーク• 「リアルタイムMapReduce」 「ストリーミングMapReduce」

•運用・保守に特化させたクラウドシステムへ• PaaS型,Cloud Ops. as a Service

発掘技術 (How) は豊富何をするか (What) が重要

Wikipedia, Image:060428-bagger288-garzweiler.jpg; Bearbeitung von Snorky

Page 21: クラウド運用のためのストリームマイニング

20

「捨てる技術」*

•データは際限なく増える• googleは10,20年後どうなるか?

• 供給電力の問題も

•捨てる技術• 20年~30年使われなかったデータが本当に必要か?

• 必要なデータだけを残す技術が必要になるのでは?• 実例は捨てる.パラメタだけを残す.

*長尾 真, “捨てる技術”, 情報処理, 2014, vol.55, no.1

レス

ポン

ス時

リクエストレ

スポ

ンス

時間

リクエスト

ストレージ

生産速度情報

生産速度

Page 22: クラウド運用のためのストリームマイニング

21

「捨てる技術」*

•データは際限なく増える• googleは10,20年後どうなるか?

• 供給電力の問題も

•捨てる技術• 20年~30年使われなかったデータが本当に必要か?

• 必要なデータだけを残す技術が必要になるのでは?• 実例は捨てる.パラメタだけを残す.

*長尾 真, “捨てる技術”, 情報処理, 2014, vol.55, no.1

レス

ポン

ス時

リクエストレ

スポ

ンス

時間

リクエスト

「必要なデータ」とは?ゴミ山か? 金鉱か?本当に捨てて良いのか?

ストレージ

生産速度情報

生産速度

Page 23: クラウド運用のためのストリームマイニング

22

22

何のために計測するか?

•米Amazonの“Anticipatory shipping”

http://blogs.wsj.com/digits/2014/01/17/amazon-wants-to-ship-your-package-before-you-buy-it/

Future

Past

Present

Personalized

ユーザレベルでのきめ細やかな運用・保守

Personalized O&M

計測データをどう役立てるか?可視化より強力な方法は?

42

「捨てる技術」*

•データは際限なく増える• googleは10,20年後どうなるか?

• 供給電力の問題も

•捨てる技術• 20年~30年使われなかったデータが本当に必要か?

• 必要なデータだけを残す技術が必要になるのでは?• 実例は捨てる.パラメタだけを残す.

*長尾 真, “捨てる技術”, 情報処理, 2014, vol.55, no.1

レス

ポン

ス時

リクエスト

レス

ポン

ス時

リクエスト

「必要なデータ」とは?ゴミ山か? 金鉱か?本当に捨てて良いのか?

ストレージ

生産速度情報

生産速度

38

運用・保守へどう適用するか?

• S4, Storm = 汎用リアルタイム処理フレームワーク• 「リアルタイムMapReduce」 「ストリーミングMapReduce」

•運用・保守に特化させたクラウドシステムへ• PaaS型,Cloud Ops. as a Service

発掘技術 (How) は豊富何をするか (What) が重要

Wikipedia, Image:060428-bagger288-garzweiler.jpg; Bearbeitung von Snorky

12

何を計測するか?

• IaaS• # of running VMs

• CPU usage

• Disk usage

• Memory swap rate

• I/O latency

• PaaS/SaaS• # of registered users

• # of active users

• # of transactions

(# of tweets, # of photos, …)

• Common• # of API calls

• Avg/Max response time

• # of timed out requests

Measuring API

Management API

Functional API

何を計測するか?何のために計測するか?