64
Microsoft が推し進めるビッグデータの民主化

20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

Embed Size (px)

Citation preview

Page 1: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

Microsoft が推し進めるビッグデータの民主化

Page 2: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

2

Page 3: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

3

マイクロソフトのデータ分析基盤と利用事例

双方向ダッシュボード – Power BI

データ分析のため前処理と分析バッチ処理- Azure Data Lake Analytics

R スクリプトを並列実行 - Microsoft R Server

機械学習を具体的な API として利用

- Project Oxford / Azure Machine Learning

まとめ

1.

2.

3.

4.

5.

6.

10 分

7 分

7 分

7 分

7 分

2 分

Page 4: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

4

Page 5: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 6: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

6

開発言語

Microsoft Azure

Page 7: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

7

米国中部Iowa

米国西部California

北ヨーロッパIreland

米国東部Virginia

米国東部2Virginia米国政府

Virginia

米国中北部Illinois

米国政府Iowa

米国中南部Texas

南ブラジルSao Paulo

西ヨーロッパNetherlands

北中国 *Beijing

南中国 *Shanghai

東日本Saitama

西日本Osaka

南インドChennai

東アジアHong Kong

東南アジアSingapore

東南オーストラリアVictoria

東オーストラリアNew South Wales

中央インドPune

カナダ東部Quebec City

カナダ中部Toronto

西インドMumbai

(2015年 12月現在)

稼働中 構築中 * Operated by 21Vianet

100カ所以上のデータセンター ネットワーク網が全世界でトップスリーの一つ AWS の2倍、Google 6倍の地域サポート G Series – 最大 VM 提供開始 – 32 コア, 448GB RAM, SSD…

22 の地域でサービス中、28 の地域まで拡大予定

ドイツ ×2Magdeburg & Frankfurt

UK ×2

Page 8: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

8

MachineLearning

Stream AnalyticsSQL Data Ware House

/ SQL Database/ DocumentDB

IoT Hub /Event Hub

各種デバイス

Data FactoryData Lake Store

Storage(Blob / Table / Queue)

Data Lake Analytics

Power BI

Cortana Analytics Suite (コルタナ アナリティクス スイート) * IoT Hub と R Server 除く

一部サービス含む

MicrosoftR Server

HDInsight

ProjectOxford

Data Catalog

Page 9: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

9価値

Page 10: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

10

https://blogs.microsoft.com/business-matters/2015/07/13/dartmouth-hitchcock-ushers-in-a-new-age-of-proactive-personalized-healthcare-using-cortana-analytics-suite/

Page 11: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 12: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

12

PowerBI.com Service✅ Azure 上で提供される SaaS 型 BI サービス

✅ ダッシュボード、レポート分析、様々なデータの取得

✅ Push 型のリアルタイム表示も可能

(REST API & Stream Analytics)

Power BI Desktop✅ 無償のデスクトップ BI ツール

✅ レポート分析、様々なデータの取得

✅ Excel 2013 の Power Query, PowerPivot, Power View

の各機能を取り出し、統合化

Dashboard

Report

Report

Page 13: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

13

• ダッシュボードとレポートを含むコンテンツパックの利用と作成

• デスクトップ や クラウド上の Power BI Desktop ファイル (.pbix)、Excel ファイルのインポート

• Azure SQL Database / Azure SQL Data Warehouse / SQL Server Analysis Services表形式モード (インメモリ DB) / Spark on HDInsight に対するダイレクト クエリをサポート

Page 14: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

14

Page 15: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

15

• SQL Server Analysis Services コネクタ• PowerBI.com からオンプレミスの SSAS 表形式インメモリ DB に対するダイレクト クエリ連携

• 対象: SQL Server Analysis Services (表形式モード)

• Power BI パーソナル ゲートウェイ• PowerBI.com にアップロードした PowerPivot インメモリDB とオンプレミス データソースの間

のリフレッシュ連携

• 対象: Excel ファイル、CSV ファイル 等

Page 16: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

16

https://github.com/Microsoft/PowerBI-visuals

Page 17: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

17

Power BI(Free)

Power BI Pro(有償)

Page 18: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 19: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

19

* 平均26年度総務省 情報通信白書 第 3 章より

Page 20: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

20

Page 21: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

21

Page 22: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

22

・ マイクロソフトが提供する Managed な Hadoop サービス・ GUI / スクリプトでクラスター構成可能

Hadoop の設定ファイルを 1 つ 1 つ編集、設定することも可能・ Apache Hadoop ファミリーや Apache Spark の

各種コンポーネントも利用可能- Apache HBase, Apache Storm, Hive, Pig, Spark Streaming 等

・ マイクロソフトが提供する Managed な HDFS* 互換サービス* Hadoop Distributed File System

・ 構造化/非構造化ファイルを容量上限なしに格納可能・ HDFS 同様、複数ファイルに自動複製して保持

・ 並列分散処理のためのサービス・ Scala や Python ではなく、U-SQL と呼ぶ SQL ライクな言語で

処理を実装する・ 実行の都度、並列度 (シングルから超多重処理まで) を決定可・ 処理内容の統計(各操作の In/Out や時間等) をグラフィカルに

確認可

Page 23: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

23

HDInsight

Microsoft R Server

Azure Data Lake Store

HDInsight & Azure Data Lake Analytics

Page 24: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

24

Page 25: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

25

.Split(‘;’)

Page 26: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

26

Azure Data Lake Analytics

Azure SQLData Warehouse

AzureSQL Database

Azure Blob Storage

Azure Data Lake Store

SQL DBon Azure VM

Page 27: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

27

Azure Data Lake Analytics

Azure Data Lake Store

なし

¥ 1.74 / 分¥ 2.55 / ジョブ

例) ¥ 52,200 / 月毎日 10 時間 100 多重で100 ジョブ実行

定常的にかかる費用 処理量に応じてかかる費用

¥ 4.08 / 1GB

例) ¥ 20,040常時 5 TB を格納

¥ 7.14 / 最大 128GB

例) ¥ 1,712毎日 約 1TB のアクセス (In/Out)

Page 28: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

28

Page 29: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 30: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

30

• 無償、オープン ソースの R ディストリビューション

• マイクロソフトによって拡張して提供

Microsoft R Open (MRO)

• スケール実行が可能でサポートが受けられる

R ディストリビューション

• マイクロソフトによって作成した特別なコンポーネントを含む

Microsoft R Server (MRS)

Page 32: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

32

Page 33: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

33

• Microsoft R Server for Red Hat Linux

• Microsoft R Server for SUSE Linux

• Microsoft R Server for Teradata DB

• Microsoft R Server for Hadoop on Red Hat

• RRE for Windows(Microsoft SQL Server 2014 Enterprise Edition + SA の場合)

Microsoft R Server (MRS)

Page 34: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

34

• メモリに収まる範囲での処理

• 大規模データ使用時の Out of Memory

• データのサンプリングによる制約

• 直列処理、処理するためにはデータの移動が必要

• 長時間かかる処理、データ移動も長時間かかる

• 並列実行を独自に組み込むには複雑

• 商用サポートなし

• 個人 PC のみでの利用で低い機能性、企業利用の場合問題が発生しても

解決が難しい場合も

Page 35: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

35

データ処理 インメモリ インメモリ インメモリ or ディスク

分析スピード シングルスレッド マルチスレッドマルチスレッド1:N のサーバーに対する並列処理

サポート コミュニティ コミュニティコミュニティ+

商用サポート

分析のためのパッケージ

7500 を超えるパッケージ (CRAN)

7500 を超えるパッケージ (CRAN)

7500 を超えるパッケージ

(CRAN) +商用の高速並列関数

ライセンス オープンソース オープンソース 商用ライセンス

Microsoft ROpen (MRO)

Microsoft RServer (MRS)

Page 36: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

36

マスターアルゴリズム

プロセス

アルゴリズム

大規模データ各ブロック

を分析

都度ブロック読み込み

分散処理

結果

Microsoft R Server“クライアント” Microsoft R Server “サーバー”

コンソール

R IDEもしくは

コマンドライン

リクエスト内容纏めてリモート

環境に送信

Page 37: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

37

### ANALYTICAL PROCESSING ###

### Statistical Summary of the data

rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1)

### CrossTab the data

rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T)

### Linear Model and plot

hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet)

plot(hdfsXdfArrLateLinMod$coefficients)

### SETUP LOCAL ENVIRONMENT VARIABLES ###

myLocalCC <- “localpar”

### LOCAL COMPUTE CONTEXT ###

rxSetComputeContext(myLocalCC)

### CREATE LINUX, DIRECTORY AND FILE OBJECTS ###

localFS <- RxNativeFileSystem()

AirlineDataSet <- RxXdfData(“AirlineDemoSmall.xdf”,

fileSystem = localFS)

myHadoopCC <- RxHadoopMR()

rxSetComputeContext(myHadoopCC)

hdfsFS <- RxHdfsFileSystem()

hdfsFS

自ノードでの並列実行 – Linux/Windows Hadoop 上での実行

R スクリプトの実行コンテキスト

「どこで処理を行うか?」の設定

処理内容は実行する場所が変わっても同一

Page 38: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

38

### ANALYTICAL PROCESSING ###

### Statistical Summary of the data

rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1)

### CrossTab the data

rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T)

### Linear Model and plot

hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet)

plot(hdfsXdfArrLateLinMod$coefficients)

### SETUP LOCAL ENVIRONMENT VARIABLES ###

myLocalCC <- “localpar”

### LOCAL COMPUTE CONTEXT ###

rxSetComputeContext(myLocalCC)

### CREATE LINUX, DIRECTORY AND FILE OBJECTS ###

localFS <- RxNativeFileSystem()

AirlineDataSet <- RxXdfData(“AirlineDemoSmall.xdf”,

fileSystem = localFS)

自ノードでの並列実行 – Linux/Windows SQL Server 上での実行

R スクリプトの実行コンテキスト

「どこで処理を行うか?」の設定

処理内容は実行する場所が変わっても同一

### SETUP SQL Server ENVIRONMENT VARIABLES ###

mySqlCC <- "Driver=SQL;SERVER=localhost;Database=RevoTester;

Uid=RevoTester; pwd=######"

### SQL SERVER COMPUTE CONTEXT ###

rxSetComputeContext(mySqlCC)

### CREATE SQL SERVER DATA SOURCE ###

AirlineDemoQuery <- "SELECT * FROM AirlineDemoSmall;"

AirlineDataSet <- RxSqlServerData(connectionString =

mySqlCC, sqlQuery = AirlineDemoQuery)

Page 39: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

39

### ANALYTICAL PROCESSING ###

### Statistical Summary of the data

rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1)

### CrossTab the data

rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T)

### Linear Model and plot

hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet)

plot(hdfsXdfArrLateLinMod$coefficients)

### SETUP LOCAL ENVIRONMENT VARIABLES ###

myLocalCC <- “localpar”

### LOCAL COMPUTE CONTEXT ###

rxSetComputeContext(myLocalCC)

### CREATE LINUX, DIRECTORY AND FILE OBJECTS ###

localFS <- RxNativeFileSystem()

AirlineDataSet <- RxXdfData(“AirlineDemoSmall.xdf”,

fileSystem = localFS)

自ノードでの並列実行 – Linux/Windows Teradata 上での実行

R スクリプトの実行コンテキスト

「どこで処理を行うか?」の設定

処理内容は実行する場所が変わっても同一

### SETUP TERADATA ENVIRONMENT VARIABLES ###

myTdCC <- "Driver=Teradata; DBCNAME=TeradataProd;

Database=RevoTester; Uid=RevoTester; pwd=######"

### TERADATA COMPUTE CONTEXT ###

rxSetComputeContext(myTdCC)

### CREATE TERADATA DATA SOURCE ###

AirlineDemoQuery <- "SELECT * FROM AirlineDemoSmall;"

AirlineDataSet <- RxTeradata(connectionString =

myTdCC, sqlQuery = AirlineDemoQuery)

Page 40: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

40

Gradient Boosted Decision Trees

Naïve Bayes

Data import – Delimited, Fixed, SAS, SPSS,

OBDC

Variable creation & transformation

Recode variables

Factor variables

Missing value handling

Sort, Merge, Split

Aggregate by category (means, sums)

Min / Max, Mean, Median (approx.)

Quantiles (approx.)

Standard Deviation

Variance

Correlation

Covariance

Sum of Squares (cross product matrix for set

variables)

Pairwise Cross tabs

Risk Ratio & Odds Ratio

Cross-Tabulation of Data (standard tables & long

form)

Marginal Summaries of Cross Tabulations

Chi Square Test

Kendall Rank Correlation

Fisher’s Exact Test

Student’s t-Test

Subsample (observations & variables)

Random Sampling

Data Preparation Statistical Tests

Sampling

Descriptive Statistics Sum of Squares (cross product matrix for set

variables)

Multiple Linear Regression

Generalized Linear Models (GLM) exponential

family distributions: binomial, Gaussian, inverse

Gaussian, Poisson, Tweedie. Standard link

functions: cauchit, identity, log, logit, probit. User

defined distributions & link functions.

Covariance & Correlation Matrices

Logistic Regression

Classification & Regression Trees

Predictions/scoring for models

Residuals for all models

Predictive Models K-Means

Decision Trees

Decision Forests

Cluster Analysis

Classification

Simulation

Variable Selection

Stepwise Regression

Simulation (e.g. Monte Carlo)

Parallel Random Number Generation

Combination rxDataStep

rxExec

PEMA-R API Custom Algorithms

Page 41: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

41

DeployR

R Open R Server

DevelopR

Page 42: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

42

・ R スクリプトをアップロードすることで即時に REST API として利用可能

・ 基本機能は無償 + OSS* として使えます! *GNU AGPL v3.0

https://deployr.revolutionanalytics.com/download/

Page 43: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

43

Page 44: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

44

Page 45: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 46: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

46

Page 47: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

47

ブラウザ (ML Studio) だけで すぐに始められる• サーバー等の環境準備/設定不要

複雑なモデルを GUI 操作だけでも実装可能

作成したモデルをボタン 1つで Web サービス化

R / Python での実装も可能

各種ストレージ、データベースを入力、出力に• Azure Blob/Azure Table/Azure SQL Database/

HiveQL/Web URL via HTTP/OData

1時間あたり ¥102 (ML Studio)/ ¥204 (API) の従量課金• 実行時間に対してのみ課金される• サブスクリプションなしで始められる Free Tier あり

Page 48: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

48

Page 49: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

49

・ モデルの選択はヘルプドキュメントとチートシートを参照・ R 実装によって独自にモデルを追加可能

Page 50: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

50

Page 51: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

51

Page 52: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

52

Machine Learning API

実装済み機械学習モジュールRESTful API として利用

Experiment 例

Page 53: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

53

Page 54: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

54

Page 55: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

55

Page 56: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

56

Machine Learning API

実装済み機械学習モジュールREST API として利用

Experiment 例

Page 57: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

57

Page 58: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

58

Page 59: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

59

https://www.projectoxford.ai/demo https://www.projectoxford.ai/appgallery

Page 60: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

60

Page 61: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京
Page 62: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

62

マイクロソフトのデータ分析基盤と利用事例

双方向ダッシュボード – Power BI

データ分析のため前処理と分析バッチ処理- Azure Data Lake Analytics

R スクリプトを並列実行 - Microsoft R Server

機械学習を具体的な API として利用

- Project Oxford / Azure Machine Learning

まとめ

1.

2.

3.

4.

5.

6.

10 分

7 分

7 分

7 分

7 分

5 分

Page 63: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

63

https://github.com/Microsoft/CNTK/blob/master/Documentation/Tutorial/CNTK-Tutorial-NIPS2015.pdf

Page 64: 20160220 MSのビッグデータ分析基盤 - データマイニング+WEB@東京

64

本書に記載した情報は、本書各項目に関する発行日現在の Microsoft の見解を表明するものです。Microsoftは絶えず変化する市場に対応しなければならないため、ここに記載した情報に対していかなる責務を負うものではなく、提示された情報の信憑性については保証できません。

本書は情報提供のみを目的としています。 Microsoft は、明示的または暗示的を問わず、本書にいかなる保証も与えるものではありません。

すべての当該著作権法を遵守することはお客様の責務です。Microsoftの書面による明確な許可なく、本書の如何なる部分についても、転載や検索システムへの格納または挿入を行うことは、どのような形式または手段(電子的、機械的、複写、レコーディング、その他)、および目的であっても禁じられています。これらは著作権保護された権利を制限するものではありません。

Microsoftは、本書の内容を保護する特許、特許出願書、商標、著作権、またはその他の知的財産権を保有する場合があります。Microsoftから書面によるライセンス契約が明確に供給される場合を除いて、本書の提供はこれらの特許、商標、著作権、またはその他の知的財産へのライセンスを与えるものではありません。

© 2016 Microsoft Corporation. All rights reserved.

Microsoft, Windows, その他本文中に登場した各製品名は、Microsoft Corporation の米国およびその他の国における登録商標または商標です。

その他、記載されている会社名および製品名は、一般に各社の商標です。