Microsoft が推し進めるビッグデータの民主化
2
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 分
4
6
開発言語
Microsoft Azure
7
米国中部
Iowa
米国西部
California
北ヨーロッパ
Ireland
米国東部
Virginia
米国東部2
Virginia米国政府
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 の地域まで拡大予定
ドイツ ×2
Magdeburg & Frankfurt
UK ×2
8
Machine
Learning
Stream Analytics
SQL Data Ware House
/ SQL Database
/ DocumentDB
IoT Hub /
Event Hub
各種デバイス
Data Factory
Data Lake Store
Storage
(Blob / Table / Queue)
Data Lake Analytics
Power BI
Cortana Analytics Suite (コルタナ アナリティクス スイート) * IoT Hub と R Server 除く
一部サービス含む
Microsoft
R Server
HDInsight
Project
Oxford
Data Catalog
9価値
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/
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
13
• ダッシュボードとレポートを含むコンテンツパックの利用と作成
• デスクトップ や クラウド上の Power BI Desktop ファイル (.pbix)、Excel ファイルのインポート
• Azure SQL Database / Azure SQL Data Warehouse / SQL Server Analysis Services 表形式モード (インメモリ DB) /
Spark on HDInsight に対するダイレクト クエリをサポート
14
15
• SQL Server Analysis Services コネクタ
• PowerBI.com からオンプレミスの SSAS 表形式インメモリ DB に対するダイレクト クエリ連携
• 対象: SQL Server Analysis Services (表形式モード)
• Power BI パーソナル ゲートウェイ
• PowerBI.com にアップロードした PowerPivot インメモリDB とオンプレミス データソースの間
のリフレッシュ連携
• 対象: Excel ファイル、CSV ファイル 等
16
https://github.com/Microsoft/PowerBI-visuals
17
Power BI
(Free)
Power BI Pro
(有償)
19
* 平均26年度総務省 情報通信白書 第 3 章より
20
21
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 や時間等) をグラフィカルに
確認可
23
HDInsight
Microsoft R
Server
Azure Data Lake Store
HDInsight & Azure Data Lake Analytics
24
25
.Split(‘;’)
26
Azure Data Lake Analytics
Azure SQL
Data Warehouse
Azure
SQL Database
Azure
Blob Storage
Azure
Data Lake Store
SQL DB
on Azure VM
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)
28
30
• 無償、オープン ソースの R ディストリビューション
• マイクロソフトによって拡張して提供
Microsoft R Open (MRO)
• スケール実行が可能でサポートが受けられる
R ディストリビューション
• マイクロソフトによって作成した特別なコンポーネントを含む
Microsoft R Server (MRS)
31
Revolution R
Enterprise
Revolution R
Open
Microsoft R Server
SQL Server 2016
R Services *
Microsoft R Open
これまで これから
Windows
Hadoop
Red Hat SuSE
Teradata
Linux (Ubuntu/CentOS
/Red Hat/SuSE)
Windows Mac
* SQL Server 2016 リリースまでは Revolution R Enterprise for Windows を利用
32
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)
34
• メモリに収まる範囲での処理
• 大規模データ使用時の Out of Memory
• データのサンプリングによる制約
• 直列処理、処理するためにはデータの移動が必要
• 長時間かかる処理、データ移動も長時間かかる
• 並列実行を独自に組み込むには複雑
• 商用サポートなし
• 個人 PC のみでの利用で低い機能性、企業利用の場合問題が発生しても
解決が難しい場合も
35
データ処理 インメモリ インメモリ インメモリ or ディスク
分析スピード シングルスレッド マルチスレッド
マルチスレッド
1:N のサーバーに対する
並列処理
サポート コミュニティ コミュニティ
コミュニティ+
商用サポート
分析のための
パッケージ
7500 を超えるパッ
ケージ (CRAN)
7500 を超えるパッ
ケージ (CRAN)
7500 を超えるパッケージ
(CRAN) +
商用の高速並列関数
ライセンス オープンソース オープンソース 商用ライセンス
Microsoft R
Open (MRO)
Microsoft R
Server (MRS)
36
マスター
アルゴリズム
プロセス
アルゴリズム
大規模
データ各ブロック
を分析
都度ブロック
読み込み
分散処理
結果
Microsoft R Server
“クライアント” Microsoft R Server “サーバー”
コンソール
R IDE
もしくは
コマンドライン
リクエスト内容
纏めてリモート
環境に送信
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 スクリプトの
実行コンテキスト
「どこで処理を行
うか?」の設定
処理内容は
実行する場所が
変わっても同一
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)
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)
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
41
DeployR
R Open R Server
DevelopR
42
・ R スクリプトをアップロードすることで即時に REST API として
利用可能
・ 基本機能は無償 + OSS* として使えます! *GNU AGPL v3.0
https://deployr.revolutionanalytics.com/download/
43
44
46
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 あり
48
49
・ モデルの選択はヘルプドキュメントとチートシートを参照
・ R 実装によって独自にモデルを追加可能
50
51
52
Machine Learning API
実装済み機械学習モジュール
RESTful API として利用
Experiment 例
53
54
55
56
Machine Learning API
実装済み機械学習モジュール
REST API として利用
Experiment 例
57
58
59
https://www.projectoxford.ai/demo https://www.projectoxford.ai/appgallery
60
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 分
63
https://github.com/Microsoft/CNTK/blob/master/Documentation/Tutorial/CNTK-Tutorial-
NIPS2015.pdf
64
 本書に記載した情報は、本書各項目に関する発行日現在の Microsoft の見解を表明するものです。Microsoftは絶えず変化する市場に対応しなければならないため、
ここに記載した情報に対していかなる責務を負うものではなく、提示された情報の信憑性については保証できません。
 本書は情報提供のみを目的としています。 Microsoft は、明示的または暗示的を問わず、本書にいかなる保証も与えるものではありません。
 すべての当該著作権法を遵守することはお客様の責務です。Microsoftの書面による明確な許可なく、本書の如何なる部分についても、転載や検索システムへの格納または挿入を行うことは、どのような形式または手段(電子的、
機械的、複写、レコーディング、その他)、および目的であっても禁じられています。
これらは著作権保護された権利を制限するものではありません。
 Microsoftは、本書の内容を保護する特許、特許出願書、商標、著作権、またはその他の知的財産権を保有する場合があります。Microsoftから書面によるライセンス契約が明確に供給される場合を除いて、本書の提供はこれらの
特許、商標、著作権、またはその他の知的財産へのライセンスを与えるものではありません。
© 2016 Microsoft Corporation. All rights reserved.
Microsoft, Windows, その他本文中に登場した各製品名は、Microsoft Corporation の米国およびその他の国における登録商標または商標です。
その他、記載されている会社名および製品名は、一般に各社の商標です。

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

  • 1.
  • 2.
  • 3.
    3 マイクロソフトのデータ分析基盤と利用事例 双方向ダッシュボード – PowerBI データ分析のため前処理と分析バッチ処理 - 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 分
  • 4.
  • 6.
  • 7.
    7 米国中部 Iowa 米国西部 California 北ヨーロッパ Ireland 米国東部 Virginia 米国東部2 Virginia米国政府 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 の地域まで拡大予定 ドイツ ×2 Magdeburg & Frankfurt UK ×2
  • 8.
    8 Machine Learning Stream Analytics SQL DataWare House / SQL Database / DocumentDB IoT Hub / Event Hub 各種デバイス Data Factory Data Lake Store Storage (Blob / Table / Queue) Data Lake Analytics Power BI Cortana Analytics Suite (コルタナ アナリティクス スイート) * IoT Hub と R Server 除く 一部サービス含む Microsoft R Server HDInsight Project Oxford Data Catalog
  • 9.
  • 10.
  • 12.
    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
  • 13.
    13 • ダッシュボードとレポートを含むコンテンツパックの利用と作成 • デスクトップや クラウド上の Power BI Desktop ファイル (.pbix)、Excel ファイルのインポート • Azure SQL Database / Azure SQL Data Warehouse / SQL Server Analysis Services 表形式モード (インメモリ DB) / Spark on HDInsight に対するダイレクト クエリをサポート
  • 14.
  • 15.
    15 • SQL ServerAnalysis Services コネクタ • PowerBI.com からオンプレミスの SSAS 表形式インメモリ DB に対するダイレクト クエリ連携 • 対象: SQL Server Analysis Services (表形式モード) • Power BI パーソナル ゲートウェイ • PowerBI.com にアップロードした PowerPivot インメモリDB とオンプレミス データソースの間 のリフレッシュ連携 • 対象: Excel ファイル、CSV ファイル 等
  • 16.
  • 17.
  • 19.
  • 20.
  • 21.
  • 22.
    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 や時間等) をグラフィカルに 確認可
  • 23.
    23 HDInsight Microsoft R Server Azure DataLake Store HDInsight & Azure Data Lake Analytics
  • 24.
  • 25.
  • 26.
    26 Azure Data LakeAnalytics Azure SQL Data Warehouse Azure SQL Database Azure Blob Storage Azure Data Lake Store SQL DB on Azure VM
  • 27.
    27 Azure Data LakeAnalytics 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)
  • 28.
  • 30.
    30 • 無償、オープン ソースのR ディストリビューション • マイクロソフトによって拡張して提供 Microsoft R Open (MRO) • スケール実行が可能でサポートが受けられる R ディストリビューション • マイクロソフトによって作成した特別なコンポーネントを含む Microsoft R Server (MRS)
  • 31.
    31 Revolution R Enterprise Revolution R Open MicrosoftR Server SQL Server 2016 R Services * Microsoft R Open これまで これから Windows Hadoop Red Hat SuSE Teradata Linux (Ubuntu/CentOS /Red Hat/SuSE) Windows Mac * SQL Server 2016 リリースまでは Revolution R Enterprise for Windows を利用
  • 32.
  • 33.
    33 • Microsoft RServer 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)
  • 34.
    34 • メモリに収まる範囲での処理 • 大規模データ使用時のOut of Memory • データのサンプリングによる制約 • 直列処理、処理するためにはデータの移動が必要 • 長時間かかる処理、データ移動も長時間かかる • 並列実行を独自に組み込むには複雑 • 商用サポートなし • 個人 PC のみでの利用で低い機能性、企業利用の場合問題が発生しても 解決が難しい場合も
  • 35.
    35 データ処理 インメモリ インメモリインメモリ or ディスク 分析スピード シングルスレッド マルチスレッド マルチスレッド 1:N のサーバーに対する 並列処理 サポート コミュニティ コミュニティ コミュニティ+ 商用サポート 分析のための パッケージ 7500 を超えるパッ ケージ (CRAN) 7500 を超えるパッ ケージ (CRAN) 7500 を超えるパッケージ (CRAN) + 商用の高速並列関数 ライセンス オープンソース オープンソース 商用ライセンス Microsoft R Open (MRO) Microsoft R Server (MRS)
  • 36.
    36 マスター アルゴリズム プロセス アルゴリズム 大規模 データ各ブロック を分析 都度ブロック 読み込み 分散処理 結果 Microsoft R Server “クライアント”Microsoft R Server “サーバー” コンソール R IDE もしくは コマンドライン リクエスト内容 纏めてリモート 環境に送信
  • 37.
    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 スクリプトの 実行コンテキスト 「どこで処理を行 うか?」の設定 処理内容は 実行する場所が 変わっても同一
  • 38.
    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)
  • 39.
    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)
  • 40.
    40  Gradient BoostedDecision 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
  • 41.
    41 DeployR R Open RServer DevelopR
  • 42.
    42 ・ R スクリプトをアップロードすることで即時にREST API として 利用可能 ・ 基本機能は無償 + OSS* として使えます! *GNU AGPL v3.0 https://deployr.revolutionanalytics.com/download/
  • 43.
  • 44.
  • 46.
  • 47.
    47  ブラウザ (MLStudio) だけで すぐに始められる • サーバー等の環境準備/設定不要  複雑なモデルを 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 あり
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 62.
    62 マイクロソフトのデータ分析基盤と利用事例 双方向ダッシュボード – PowerBI データ分析のため前処理と分析バッチ処理 - 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 分
  • 63.
  • 64.
    64  本書に記載した情報は、本書各項目に関する発行日現在の Microsoftの見解を表明するものです。Microsoftは絶えず変化する市場に対応しなければならないため、 ここに記載した情報に対していかなる責務を負うものではなく、提示された情報の信憑性については保証できません。  本書は情報提供のみを目的としています。 Microsoft は、明示的または暗示的を問わず、本書にいかなる保証も与えるものではありません。  すべての当該著作権法を遵守することはお客様の責務です。Microsoftの書面による明確な許可なく、本書の如何なる部分についても、転載や検索システムへの格納または挿入を行うことは、どのような形式または手段(電子的、 機械的、複写、レコーディング、その他)、および目的であっても禁じられています。 これらは著作権保護された権利を制限するものではありません。  Microsoftは、本書の内容を保護する特許、特許出願書、商標、著作権、またはその他の知的財産権を保有する場合があります。Microsoftから書面によるライセンス契約が明確に供給される場合を除いて、本書の提供はこれらの 特許、商標、著作権、またはその他の知的財産へのライセンスを与えるものではありません。 © 2016 Microsoft Corporation. All rights reserved. Microsoft, Windows, その他本文中に登場した各製品名は、Microsoft Corporation の米国およびその他の国における登録商標または商標です。 その他、記載されている会社名および製品名は、一般に各社の商標です。