SlideShare a Scribd company logo
分析環境-アレコレ- 
By @yuu_kimy
◇自己紹介(簡単に..) 
› 最近は、こんな感じです。相変わらず、エンジニア(の端くれ)です.. 
› Rを結構動かしたり、、 
› 英語の記事を追いかけたり、 
› Java演習のサポートをしたり、、etc 
› ブログを時々書いています。(時々です。笑) 
› http://yuu-kimy-note.hatenablog.com/
◇分析環境 
› 今回のテーマは、「分析環境」をみていきます! 
› これまではRがメインでしたが、他に、どのような環境が 
› 出来るのかをみていきたいと思います。
◇Rの短所 
› 統計解析/機械学習に非常に強みを持つRも短所はあるわけで、、 
› 基本的に1CPU(コア)による演算処理 
› 分析データは、メモリで保持 
› 結構メモリを喰う..(参照渡しが出来ない) 
› つまり、大規模データを扱うには不向きな分析環境と言えますね.. 
› (勿論、フリーソフトであり、様々なパッケージを持つRは、魅力的ですよ!!!)
◇分析環境を考える.. 
› 他に、どのような環境が考えられるか見ていきましょう! 
› 1. Rと大規模データ用のパッケージを利用(or ハードウェア強化) 
› 2. RとHadoopの組合せを利用 
› 3. Mahout(Hadoop)を利用 
› 4. Jubatus(呼称:ユバタス)を利用 
› 5. PostgreSQLとMADlibを利用 
› 6. Revolution Rを利用 
› 7. Pythonを利用 
› 8. Microsoft AzureMLを利用
1. Rと大規模データ用のパッケージ利用(or HW) 
› 既存環境のRを強化するパターン。 
› 元々、Rは大規模データの扱いが苦手なわけですが、 
› パッケージ{ff,Bigmemory}で、その短所を改善する。 
(つまり、オンメモリではなく、ディスクも有効活用するということ) 
› 又は、R環境のメモリ容量を格段に上げる!(64bit環境+XXGB) 
› 注意: 
› 上記パッケージは、大量データを取込む際、活用できそうですが、 
› 多くの分析モデルが対応しているわけではないとのこと..
2. RとHadoopの組合せを利用 
› Hadoopを組合せて、そのPowerを手に入れよう!というパターン。 
› ただ、これって、RからMapReduceを実行することになり、 
› Javaで書く代わりにRで書くことは必要!! 
› パッケージ{RHadoop}を利用する。 
› (勿論、Hadoop環境は必要) 
› 環境は、AWSを利用するのがポピュラーなのかな~★ 
› Ex) R+RStudio Server + Hadoop(Amazon EMR)
2. RとHadoopの組合せを利用(補足) 
› イメージはこんな感じです。(各ノードにRが必要なわけです..!) 
出典: RHadoop Tutorial by Revolution Analytics 
› 各ノードにRのインストールが必要なわけで、結構手間かな~.. 
› いやいや、実装にも慣れが必要そう..汗
3. Mahout(Hadoop)を利用 
› Hadoop上で動く機械学習ライブラリを利用するパターン。 
› Hadoopの場合は、MapReduceに基づいて、ゴリゴリMap処理と 
› Reduce処理を書く必要がありますが、Mahoutは、コマンドから 
› 実行できる関数群が用意されている!(Rのような感じ) 
› 但し、まだまだ分析モデルはRに比べて、少ないのが現状のよう.. 
› そもそも、Hadoop自体の慣れも必要な環境なので、 
› よりエンジニア好みの環境..かも。
4. Jubatus(呼称:ユバタス)を利用 
› 「国産」の機械学習フレームワークを利用するパターン.. 
› (いわゆる、国産製品を使っていこう!っていうわけですね。。) 
› ではなく、、 
› 分散化されたオンライン機械学習フレームワークを利用するパターン。 
› 「オンライン機械学習」とは、リアルタイムに発生するデータの流れに 
› 対して、逐次分析するような機械学習を指す! 
› 活用シーンとしては、M2Mな環境、機器の異常監視等が 
› 想定されます。(実際、そういう事例があるようです。)
5. PostgreSQLとMADlibを利用 
› Rから離れて、SQLで機械学習を頑張ろうぜ、というパターン。 
› PostgreSQLは、MySQLと並び、OSSなデータベース製品。 
› 一方のMADlibは、SQLベースの統計/機械学習ライブラリ。 
› 商用だと、PostgreSQLをベースとしたGreenplum、 
› 又は、PivotalHDと組み合わせることは、某社が推奨してますね.. 
(In-Database分析を推してますよね?!) 
› SQLに慣れ親しんだメンバーが多い時は、結構イケるかも! 
› SVMの分析モデルも実装されていました!! 
› PostgreSQLの場合は、やっぱり、シングルノード構成だけですね..
5. PostgreSQLとMADlibを利用(補足) 
› SQLで分析用関数を呼び出すわけです、、こんな感じ! 
出典: MADlib 1.6 User Documentation 
› つまりは、Rと同様、決められたフォーマットに従い、分析モデルの 
› 関数を呼び出すわけですね。(上記は、ロジスティック回帰の関数)
6. Revolution Rを利用 
› Rが好きなら、とことん利用するぞ、というパターン。 
› この場合は、商用版R(Revolution Analytics社)を利用する。 
› メリットとしては、、より大規模データが扱える、商用サポートあり、 
› 商用ライセンスの信頼性が挙げられていますね! 
› で、肝心の価格は??? 
› アカデミック版は無料らしいです、、 
› ビジネス版は確認が必要そう!!!
7. Pythonを利用 
› 御存知、Rを抜きつつあるPython様を利用するパターン。 
› 軽量なスクリプト言語として人気のあるPythonは、Webサービスの 
› 開発に利用されていますが、分析環境としても熱い視線が!!! 
› Rと同様、統計解析/機械学習ライブラリは勿論あります。 
› とは言え、大規模データを扱うのであれば、Rと同様の問題も.. 
› (Rよりはメモリ利用が上手いというお話があったり、、)
8. Microsoft AzureMLを利用 
› もう、最後は天下のMicrosoftに頼るべしというパターンです。笑 
› 最近は、MicrosoftのAzureクラウド環境も有名ですが、 
› まさに、その環境で機械学習をやろう~って寸法です。 
› 基本は、GUI画面で各タスク(アイコン)を繋げて、分析フローを 
› 構築していくイメージ。(S○SS Modelerと近いかと。。) 
› 実は、構築した分析フローは、Rコードとして吐き出せる優れもの! 
› クラウドのメリットである使った分だけの課金というのも良いですね。 
› 但し、現在は、プレビューの段階とのこと..
8. Microsoft AzureMLを利用(補足) 
出典: Microsoft Azue 
› 実際の画面はこんな感じらしい..(まだ、英語版のみかも?!)
◇参考資料1 
› 本資料は、以下を参考にしております。 
› 1. R諸々 
› http://rogiersbart.blogspot.jp/2011/10/use-r.html 
› http://www.slideshare.net/sfchaos/rbigmemory-tokyowebmining10 
› http://www.r-bloggers.com/five-ways-to-handle-big-data-in-r/ 
› http://www.slideshare.net/wdkz/rffbigmemoryrevoscaler-10334116 
› 2. RHadoop 
› http://www.slideshare.net/holidayworking/rhadoop 
› http://blogs.aws.amazon.com/bigdata/post/Tx37RSKRFDQNTSL/Statistical 
-Analysis-with-Open-Source-R-and-RStudio-on-Amazon-EMR 
› http://cdn.oreillystatic.com/en/assets/1/event/100/Using%20R%20and% 
20Hadoop%20for%20Statistical%20Computation%20at%20Scale%20Pres 
entation.htm#/ 
› http://acro-engineer.hatenablog.com/entry/20111204/1323010742
◇参考資料2 
› 本資料は、以下を参考にしております。 
› 3. Mahout 
› http://www.slideshare.net/yamakatu/lt-23793589 
› http://gihyo.jp/dev/serial/01/mahout/0005 
› 4. Jubatus 
› http://jubat.us/ja/overview/feature.html 
› 5. MADlib 
› http://enterprisezine.jp/iti/detail/3905 
› http://doc.madlib.net/latest/group__grp__logreg.html 
› http://wp.sigmod.org/?p=344
◇参考資料3 
› 本資料は、以下を参考にしております。 
› 6. Revolution R 
› http://www.r-analytics.jp/ 
› http://www.slideshare.net/SatoshiKitajima2/jfssa-taikai-opensource 
› 7. Python 
› http://www.pytables.org/docs/LargeDataAnalysis.pdf 
› http://web-analytics-or-die.org/2013/07/pandas/ 
› 8. Azure ML 
› http://azure.microsoft.com/en-us/ 
documentation/articles/machine-learning-create-experiment/ 
› http://azure.microsoft.com/ja-jp/services/machine-learning/

More Related Content

What's hot

あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
Mikiya Okuno
 
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
Soudai Sone
 
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
Soudai Sone
 
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
Naoyuki Yamada
 
Elasticsearch 変わり種プラグインの作り方
Elasticsearch 変わり種プラグインの作り方Elasticsearch 変わり種プラグインの作り方
Elasticsearch 変わり種プラグインの作り方
Ryoji Kurosawa
 
クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介
しくみ製作所
 
リーダブルパスワード - SQLアンチパターンより抜粋 -
リーダブルパスワード - SQLアンチパターンより抜粋 -リーダブルパスワード - SQLアンチパターンより抜粋 -
リーダブルパスワード - SQLアンチパターンより抜粋 -
hiro345
 
Osc2015北海道 札幌my sql勉強会_波多野_r3
Osc2015北海道 札幌my sql勉強会_波多野_r3Osc2015北海道 札幌my sql勉強会_波多野_r3
Osc2015北海道 札幌my sql勉強会_波多野_r3
Nobuhiro Hatano
 
Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法
Hidehisa Matsutani
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介
Yusuke Hirao
 
はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発
Shunsuke Kozawa
 
MySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearchMySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearch
Kentaro Yoshida
 
Elasticsearchインデクシングのパフォーマンスを測ってみた
Elasticsearchインデクシングのパフォーマンスを測ってみたElasticsearchインデクシングのパフォーマンスを測ってみた
Elasticsearchインデクシングのパフォーマンスを測ってみた
Ryoji Kurosawa
 
Capistrano introduction
Capistrano introductionCapistrano introduction
Capistrano introduction
Misa Kondo
 
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
Insight Technology, Inc.
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料
Takashi Aoe
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1
Nishida Kansuke
 
ソーシャルゲームにレコメンドエンジンを導入した話
ソーシャルゲームにレコメンドエンジンを導入した話ソーシャルゲームにレコメンドエンジンを導入した話
ソーシャルゲームにレコメンドエンジンを導入した話Tokoroten Nakayama
 
⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1
Nishida Kansuke
 

What's hot (20)

あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデルあなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
 
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
 
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
 
ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回ElasticSearch勉強会 第6回
ElasticSearch勉強会 第6回
 
Elasticsearch 変わり種プラグインの作り方
Elasticsearch 変わり種プラグインの作り方Elasticsearch 変わり種プラグインの作り方
Elasticsearch 変わり種プラグインの作り方
 
クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介
 
リーダブルパスワード - SQLアンチパターンより抜粋 -
リーダブルパスワード - SQLアンチパターンより抜粋 -リーダブルパスワード - SQLアンチパターンより抜粋 -
リーダブルパスワード - SQLアンチパターンより抜粋 -
 
Osc2015北海道 札幌my sql勉強会_波多野_r3
Osc2015北海道 札幌my sql勉強会_波多野_r3Osc2015北海道 札幌my sql勉強会_波多野_r3
Osc2015北海道 札幌my sql勉強会_波多野_r3
 
Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介
 
はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発はてなブックマークに基づく関連記事レコメンドエンジンの開発
はてなブックマークに基づく関連記事レコメンドエンジンの開発
 
MySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearchMySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearch
 
Elasticsearchインデクシングのパフォーマンスを測ってみた
Elasticsearchインデクシングのパフォーマンスを測ってみたElasticsearchインデクシングのパフォーマンスを測ってみた
Elasticsearchインデクシングのパフォーマンスを測ってみた
 
Capistrano introduction
Capistrano introductionCapistrano introduction
Capistrano introduction
 
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
[db tech showcase Tokyo 2014] B22: Hadoop Rush!! HDFSからデータを自在に取得、加工するにはどうする? ...
 
鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料鹿駆動勉強会 青江発表資料
鹿駆動勉強会 青江発表資料
 
⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1⑮jQueryをおぼえよう!その1
⑮jQueryをおぼえよう!その1
 
ソーシャルゲームにレコメンドエンジンを導入した話
ソーシャルゲームにレコメンドエンジンを導入した話ソーシャルゲームにレコメンドエンジンを導入した話
ソーシャルゲームにレコメンドエンジンを導入した話
 
Java8でRDBMS作ったよ
Java8でRDBMS作ったよJava8でRDBMS作ったよ
Java8でRDBMS作ったよ
 
⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1⑳CSSでアニメーション!その1
⑳CSSでアニメーション!その1
 

Viewers also liked

About alteryx
About alteryxAbout alteryx
About alteryx
Yuu Kimy
 
Alteryxの紹介とデモ
Alteryxの紹介とデモAlteryxの紹介とデモ
Alteryxの紹介とデモ
Yosuke Katsuki
 
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
Insight Technology, Inc.
 
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
Masanori Kado
 
Predictive analytics and julia
Predictive analytics and juliaPredictive analytics and julia
Predictive analytics and julia
池田 直哉
 
Pivotal OSS meetup - MADlib and PivotalR
Pivotal OSS meetup - MADlib and PivotalRPivotal OSS meetup - MADlib and PivotalR
Pivotal OSS meetup - MADlib and PivotalR
go-pivotal
 
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICSBIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
TIBCO Spotfire
 
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki MatsushitaInsight Technology, Inc.
 
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
Sarah Aerni
 
In-Database Predictive Analytics
In-Database Predictive AnalyticsIn-Database Predictive Analytics
In-Database Predictive Analytics
John De Goes
 
Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119
Keiichiro Nabeno
 
はじパタ2章
はじパタ2章はじパタ2章
はじパタ2章tetsuro ito
 
Pivotal Data Warehouse in the Age of Digital Transformation
Pivotal Data Warehouse in the Age of Digital TransformationPivotal Data Warehouse in the Age of Digital Transformation
Pivotal Data Warehouse in the Age of Digital Transformation
VMware Tanzu
 
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリングベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
宏喜 佐野
 
10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)
Takanori Ogata
 
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
宏喜 佐野
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
cornelia davis
 
ビジネスモデルの作り方
ビジネスモデルの作り方ビジネスモデルの作り方
ビジネスモデルの作り方
Kaizen Platform Inc.
 
The ninja elephant, scaling the analytics database in Transwerwise
The ninja elephant, scaling the analytics database in TranswerwiseThe ninja elephant, scaling the analytics database in Transwerwise
The ninja elephant, scaling the analytics database in Transwerwise
Federico Campoli
 
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセットアウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
Masanori Saito
 

Viewers also liked (20)

About alteryx
About alteryxAbout alteryx
About alteryx
 
Alteryxの紹介とデモ
Alteryxの紹介とデモAlteryxの紹介とデモ
Alteryxの紹介とデモ
 
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
[db tech showcase Sapporo 2015] C15:商用RDBをOSSへ Oracle to Postgres 徹底解説 by 株式会...
 
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
データからインサイト そして、アイデアの発想へ(CJM/POV/HMW)
 
Predictive analytics and julia
Predictive analytics and juliaPredictive analytics and julia
Predictive analytics and julia
 
Pivotal OSS meetup - MADlib and PivotalR
Pivotal OSS meetup - MADlib and PivotalRPivotal OSS meetup - MADlib and PivotalR
Pivotal OSS meetup - MADlib and PivotalR
 
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICSBIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
BIG DATA ANALYTICS MEANS “IN-DATABASE” ANALYTICS
 
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita
[D22] Pivotal HD 2.0 -業界最高レベルSQL on Hadoop技術「HAWQ」解説- by Masayuki Matsushita
 
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
Data Science as a Commodity: Use MADlib, R, & other OSS Tools for Data Scienc...
 
In-Database Predictive Analytics
In-Database Predictive AnalyticsIn-Database Predictive Analytics
In-Database Predictive Analytics
 
Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119Io tビジネスモデルに関する考察20161119
Io tビジネスモデルに関する考察20161119
 
はじパタ2章
はじパタ2章はじパタ2章
はじパタ2章
 
Pivotal Data Warehouse in the Age of Digital Transformation
Pivotal Data Warehouse in the Age of Digital TransformationPivotal Data Warehouse in the Age of Digital Transformation
Pivotal Data Warehouse in the Age of Digital Transformation
 
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリングベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
 
10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)10分でわかる主成分分析(PCA)
10分でわかる主成分分析(PCA)
 
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
 
ビジネスモデルの作り方
ビジネスモデルの作り方ビジネスモデルの作り方
ビジネスモデルの作り方
 
The ninja elephant, scaling the analytics database in Transwerwise
The ninja elephant, scaling the analytics database in TranswerwiseThe ninja elephant, scaling the analytics database in Transwerwise
The ninja elephant, scaling the analytics database in Transwerwise
 
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセットアウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
アウトプットし続ける技術〜毎日書くためのマインドセットとスキルセット
 

Similar to Analytics Environment

Devsの常識、DBAは非常識
Devsの常識、DBAは非常識Devsの常識、DBAは非常識
Devsの常識、DBAは非常識
yoku0825
 
Mongo dbを知ろう devlove関西
Mongo dbを知ろう   devlove関西Mongo dbを知ろう   devlove関西
Mongo dbを知ろう devlove関西
Ryuji Tamagawa
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
GoAzure
 
Djangoのススメ
DjangoのススメDjangoのススメ
Djangoのススメ
Alisue Lambda
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版
elanlilac
 
高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編
Kazuya Numata
 
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)kasaharatt
 
RealtimeTweakPickerMode
RealtimeTweakPickerModeRealtimeTweakPickerMode
RealtimeTweakPickerMode
Yoh Akiyama
 
集合演算を真っ向から否定するアレの話
集合演算を真っ向から否定するアレの話集合演算を真っ向から否定するアレの話
集合演算を真っ向から否定するアレの話
Kouhei Aoyagi
 
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
tetsuro ito
 
BtoCでバインド変数
BtoCでバインド変数BtoCでバインド変数
BtoCでバインド変数Yoshito Ueki
 
ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得Masayuki Ozawa
 
RDBってなに?
RDBってなに?RDBってなに?
RDBってなに?
Soudai Sone
 
MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編
Takanori Sejima
 
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料kasaharatt
 
Hadoop事始め
Hadoop事始めHadoop事始め
Hadoop事始め
You&I
 
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
Operation Lab, LLC.
 
パネルディスカッション資料(公開版)
パネルディスカッション資料(公開版)パネルディスカッション資料(公開版)
パネルディスカッション資料(公開版)odakeiji
 
Amazon DynamoDB 初心者が理解した事
Amazon DynamoDB 初心者が理解した事Amazon DynamoDB 初心者が理解した事
Amazon DynamoDB 初心者が理解した事
Hirokazu Tokuno
 
データベース・リファクタリング読書会第四回オープニング
データベース・リファクタリング読書会第四回オープニングデータベース・リファクタリング読書会第四回オープニング
データベース・リファクタリング読書会第四回オープニングakitsukada
 

Similar to Analytics Environment (20)

Devsの常識、DBAは非常識
Devsの常識、DBAは非常識Devsの常識、DBAは非常識
Devsの常識、DBAは非常識
 
Mongo dbを知ろう devlove関西
Mongo dbを知ろう   devlove関西Mongo dbを知ろう   devlove関西
Mongo dbを知ろう devlove関西
 
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows AzureB 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
 
Djangoのススメ
DjangoのススメDjangoのススメ
Djangoのススメ
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版
 
高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編高トラフィックサイトをRailsで構築するためのTips基礎編
高トラフィックサイトをRailsで構築するためのTips基礎編
 
明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)明日から使えるPostgre sql運用管理テクニック(監視編)
明日から使えるPostgre sql運用管理テクニック(監視編)
 
RealtimeTweakPickerMode
RealtimeTweakPickerModeRealtimeTweakPickerMode
RealtimeTweakPickerMode
 
集合演算を真っ向から否定するアレの話
集合演算を真っ向から否定するアレの話集合演算を真っ向から否定するアレの話
集合演算を真っ向から否定するアレの話
 
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
20150531分析プラットホームとその技術(bizreach) cookpad ito #dcube_analysis
 
BtoCでバインド変数
BtoCでバインド変数BtoCでバインド変数
BtoCでバインド変数
 
ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得ここからはじめる SQL Server の状態取得
ここからはじめる SQL Server の状態取得
 
RDBってなに?
RDBってなに?RDBってなに?
RDBってなに?
 
MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編MySQLやSSDとかの話 前編
MySQLやSSDとかの話 前編
 
OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料OSC沖縄2014_JPUG資料
OSC沖縄2014_JPUG資料
 
Hadoop事始め
Hadoop事始めHadoop事始め
Hadoop事始め
 
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
 
パネルディスカッション資料(公開版)
パネルディスカッション資料(公開版)パネルディスカッション資料(公開版)
パネルディスカッション資料(公開版)
 
Amazon DynamoDB 初心者が理解した事
Amazon DynamoDB 初心者が理解した事Amazon DynamoDB 初心者が理解した事
Amazon DynamoDB 初心者が理解した事
 
データベース・リファクタリング読書会第四回オープニング
データベース・リファクタリング読書会第四回オープニングデータベース・リファクタリング読書会第四回オープニング
データベース・リファクタリング読書会第四回オープニング
 

Analytics Environment

  • 2. ◇自己紹介(簡単に..) › 最近は、こんな感じです。相変わらず、エンジニア(の端くれ)です.. › Rを結構動かしたり、、 › 英語の記事を追いかけたり、 › Java演習のサポートをしたり、、etc › ブログを時々書いています。(時々です。笑) › http://yuu-kimy-note.hatenablog.com/
  • 3. ◇分析環境 › 今回のテーマは、「分析環境」をみていきます! › これまではRがメインでしたが、他に、どのような環境が › 出来るのかをみていきたいと思います。
  • 4. ◇Rの短所 › 統計解析/機械学習に非常に強みを持つRも短所はあるわけで、、 › 基本的に1CPU(コア)による演算処理 › 分析データは、メモリで保持 › 結構メモリを喰う..(参照渡しが出来ない) › つまり、大規模データを扱うには不向きな分析環境と言えますね.. › (勿論、フリーソフトであり、様々なパッケージを持つRは、魅力的ですよ!!!)
  • 5. ◇分析環境を考える.. › 他に、どのような環境が考えられるか見ていきましょう! › 1. Rと大規模データ用のパッケージを利用(or ハードウェア強化) › 2. RとHadoopの組合せを利用 › 3. Mahout(Hadoop)を利用 › 4. Jubatus(呼称:ユバタス)を利用 › 5. PostgreSQLとMADlibを利用 › 6. Revolution Rを利用 › 7. Pythonを利用 › 8. Microsoft AzureMLを利用
  • 6. 1. Rと大規模データ用のパッケージ利用(or HW) › 既存環境のRを強化するパターン。 › 元々、Rは大規模データの扱いが苦手なわけですが、 › パッケージ{ff,Bigmemory}で、その短所を改善する。 (つまり、オンメモリではなく、ディスクも有効活用するということ) › 又は、R環境のメモリ容量を格段に上げる!(64bit環境+XXGB) › 注意: › 上記パッケージは、大量データを取込む際、活用できそうですが、 › 多くの分析モデルが対応しているわけではないとのこと..
  • 7. 2. RとHadoopの組合せを利用 › Hadoopを組合せて、そのPowerを手に入れよう!というパターン。 › ただ、これって、RからMapReduceを実行することになり、 › Javaで書く代わりにRで書くことは必要!! › パッケージ{RHadoop}を利用する。 › (勿論、Hadoop環境は必要) › 環境は、AWSを利用するのがポピュラーなのかな~★ › Ex) R+RStudio Server + Hadoop(Amazon EMR)
  • 8. 2. RとHadoopの組合せを利用(補足) › イメージはこんな感じです。(各ノードにRが必要なわけです..!) 出典: RHadoop Tutorial by Revolution Analytics › 各ノードにRのインストールが必要なわけで、結構手間かな~.. › いやいや、実装にも慣れが必要そう..汗
  • 9. 3. Mahout(Hadoop)を利用 › Hadoop上で動く機械学習ライブラリを利用するパターン。 › Hadoopの場合は、MapReduceに基づいて、ゴリゴリMap処理と › Reduce処理を書く必要がありますが、Mahoutは、コマンドから › 実行できる関数群が用意されている!(Rのような感じ) › 但し、まだまだ分析モデルはRに比べて、少ないのが現状のよう.. › そもそも、Hadoop自体の慣れも必要な環境なので、 › よりエンジニア好みの環境..かも。
  • 10. 4. Jubatus(呼称:ユバタス)を利用 › 「国産」の機械学習フレームワークを利用するパターン.. › (いわゆる、国産製品を使っていこう!っていうわけですね。。) › ではなく、、 › 分散化されたオンライン機械学習フレームワークを利用するパターン。 › 「オンライン機械学習」とは、リアルタイムに発生するデータの流れに › 対して、逐次分析するような機械学習を指す! › 活用シーンとしては、M2Mな環境、機器の異常監視等が › 想定されます。(実際、そういう事例があるようです。)
  • 11. 5. PostgreSQLとMADlibを利用 › Rから離れて、SQLで機械学習を頑張ろうぜ、というパターン。 › PostgreSQLは、MySQLと並び、OSSなデータベース製品。 › 一方のMADlibは、SQLベースの統計/機械学習ライブラリ。 › 商用だと、PostgreSQLをベースとしたGreenplum、 › 又は、PivotalHDと組み合わせることは、某社が推奨してますね.. (In-Database分析を推してますよね?!) › SQLに慣れ親しんだメンバーが多い時は、結構イケるかも! › SVMの分析モデルも実装されていました!! › PostgreSQLの場合は、やっぱり、シングルノード構成だけですね..
  • 12. 5. PostgreSQLとMADlibを利用(補足) › SQLで分析用関数を呼び出すわけです、、こんな感じ! 出典: MADlib 1.6 User Documentation › つまりは、Rと同様、決められたフォーマットに従い、分析モデルの › 関数を呼び出すわけですね。(上記は、ロジスティック回帰の関数)
  • 13. 6. Revolution Rを利用 › Rが好きなら、とことん利用するぞ、というパターン。 › この場合は、商用版R(Revolution Analytics社)を利用する。 › メリットとしては、、より大規模データが扱える、商用サポートあり、 › 商用ライセンスの信頼性が挙げられていますね! › で、肝心の価格は??? › アカデミック版は無料らしいです、、 › ビジネス版は確認が必要そう!!!
  • 14. 7. Pythonを利用 › 御存知、Rを抜きつつあるPython様を利用するパターン。 › 軽量なスクリプト言語として人気のあるPythonは、Webサービスの › 開発に利用されていますが、分析環境としても熱い視線が!!! › Rと同様、統計解析/機械学習ライブラリは勿論あります。 › とは言え、大規模データを扱うのであれば、Rと同様の問題も.. › (Rよりはメモリ利用が上手いというお話があったり、、)
  • 15. 8. Microsoft AzureMLを利用 › もう、最後は天下のMicrosoftに頼るべしというパターンです。笑 › 最近は、MicrosoftのAzureクラウド環境も有名ですが、 › まさに、その環境で機械学習をやろう~って寸法です。 › 基本は、GUI画面で各タスク(アイコン)を繋げて、分析フローを › 構築していくイメージ。(S○SS Modelerと近いかと。。) › 実は、構築した分析フローは、Rコードとして吐き出せる優れもの! › クラウドのメリットである使った分だけの課金というのも良いですね。 › 但し、現在は、プレビューの段階とのこと..
  • 16. 8. Microsoft AzureMLを利用(補足) 出典: Microsoft Azue › 実際の画面はこんな感じらしい..(まだ、英語版のみかも?!)
  • 17. ◇参考資料1 › 本資料は、以下を参考にしております。 › 1. R諸々 › http://rogiersbart.blogspot.jp/2011/10/use-r.html › http://www.slideshare.net/sfchaos/rbigmemory-tokyowebmining10 › http://www.r-bloggers.com/five-ways-to-handle-big-data-in-r/ › http://www.slideshare.net/wdkz/rffbigmemoryrevoscaler-10334116 › 2. RHadoop › http://www.slideshare.net/holidayworking/rhadoop › http://blogs.aws.amazon.com/bigdata/post/Tx37RSKRFDQNTSL/Statistical -Analysis-with-Open-Source-R-and-RStudio-on-Amazon-EMR › http://cdn.oreillystatic.com/en/assets/1/event/100/Using%20R%20and% 20Hadoop%20for%20Statistical%20Computation%20at%20Scale%20Pres entation.htm#/ › http://acro-engineer.hatenablog.com/entry/20111204/1323010742
  • 18. ◇参考資料2 › 本資料は、以下を参考にしております。 › 3. Mahout › http://www.slideshare.net/yamakatu/lt-23793589 › http://gihyo.jp/dev/serial/01/mahout/0005 › 4. Jubatus › http://jubat.us/ja/overview/feature.html › 5. MADlib › http://enterprisezine.jp/iti/detail/3905 › http://doc.madlib.net/latest/group__grp__logreg.html › http://wp.sigmod.org/?p=344
  • 19. ◇参考資料3 › 本資料は、以下を参考にしております。 › 6. Revolution R › http://www.r-analytics.jp/ › http://www.slideshare.net/SatoshiKitajima2/jfssa-taikai-opensource › 7. Python › http://www.pytables.org/docs/LargeDataAnalysis.pdf › http://web-analytics-or-die.org/2013/07/pandas/ › 8. Azure ML › http://azure.microsoft.com/en-us/ documentation/articles/machine-learning-create-experiment/ › http://azure.microsoft.com/ja-jp/services/machine-learning/