SlideShare a Scribd company logo
1 of 28
Download to read offline
1© Cloudera, Inc. All rights reserved.
Cloudera Data Science
WorkbenchとPySparkで
好きなPythonライブラリを
分散で使う
Michiaki Ariga, Field Data Scientist
2017/06/27 @Data Engineering and Data
Analysis Workshop #1
2© Cloudera, Inc. All rights reserved.
⾃⼰紹介
• 有賀 康顕 (Twitter/GitHub @chezou)
• Field Data Scientist @Cloudera
• 過去の経歴
• 製造系メーカーでNLP/⾳声対話/機械学習の研究開発
• クックパッドでRailsアプリケーションの傍らレコメンドシステムの開発
• 技術書典2で機械学習の⼊⾨本を頒布
• Rubyコミュニティkawasaki.rbも主催
• rubyist.clubというPodcastもやってます
3© Cloudera, Inc. All rights reserved.
We are hiring!
• サポートメンバー、コンサルタント募集中
4© Cloudera, Inc. All rights reserved.
オープンデータサイエンス
5© Cloudera, Inc. All rights reserved.
https://medium.com/towards-data-science/data-engineer-vs-data-scientist-vs-business-analyst-b68d201364bc#.s6w0i8716
を元に作成
コンピュータ
サイエンス
ドメイン知識統計学
データエンジニア ビジネスアナリスト
データサイエンティスト
6© Cloudera, Inc. All rights reserved.
オープンデータサイエンスの台頭
統計計算とグラフィックのため
の、プログラミング⾔語とソフ
トウェア環境
最も普及している領域: アカデ
ミアと統計コミュニティ
汎⽤の⾼次プログラミング⾔語
最も普及している領域:機械学
習とデータエンジニアリングコ
ミュニティ
強い静的型付けシステムを持つ、
汎⽤の関数プログラミング⾔語
最も普及している領域: Spark
を中⼼としたデータエンジニア
リングコミュニティ
何千ものオープンソースの機械学習、統計、ビジュアライゼーションライブラリが存在
7© Cloudera, Inc. All rights reserved.
オープンデータサイエンスを⽀えるオープンな論⽂
https://medium.com/@karpathy/a-peek-at-trends-in-machine-
learning-ab8a1085a106 より引⽤
機械学習関連の論⽂は
4年で4倍以上に
8© Cloudera, Inc. All rights reserved.
エンタープライズにおける、
スケールするデータサイエンス
9© Cloudera, Inc. All rights reserved.
Apache Spark
⾼速で柔軟な汎⽤データ処理フレームワーク
データ
エンジニアリング
ストリーム処理
データサイエンス
& 機械学習
統⼀されたAPIと⼤規模データのための処理エンジン
10© Cloudera, Inc. All rights reserved.
Clouderaが提供するSpark
がClouderaのSparkを
̶以下を圧倒̶
半数以上
がHadoopの他のコンポーネントと
共にSparkを利⽤Clouderaを選択する最⼤の理由 = サポート、
トレーニング、そしてサービス
57%が⾃社の最も重要なユースケースに向けCloudera Sparkを使⽤。
これに対し他社は、Hortonworks(26%)、Apache ダウンロード(22%)、
Databricks (7%)という状況
回答者の48%が、最も⼀般的な利⽤形態としてSparkとHbaseとの併⽤を、
41%がSparkとKafkaの併⽤を表明
11© Cloudera, Inc. All rights reserved.
Sparkのユースケース
3	out	of	8	are	employing	Spark	in	data	science	research
Sparkの上位ユースケース
がデータサイエンス⽤途でSparkを活⽤
バッチ処理 (ETL)
ストリーム処理
データサイエンス
機械学習
Sparkの上位ユースケースには、バッチ処理(55%)、ストリーム処理
(44%)、データサイエンス(33%)、機械学習(33%)が存在
8⼈中3⼈がSparkをデータサイエンス
調査の⽤途で活⽤
12© Cloudera, Inc. All rights reserved.
チーム データサイエンティストとアナリスト
ゴール データの理解、モデルの開発と改善、知⾒の共有
データ 新規のデータ、かつ頻繁に変更される。⼤抵の場
合サンプリングしたデータが⽤いられる
環境 ローカルマシンかサンドボックスクラスタ
ツール R、Python、SAS/SPSS、SQL、ノートブック、
データラングリング・ディスカバリツール
最終アウトプット レポート、ダッシュボード、PDF、Excel、Word、
PowerPoint
エンタープライズデータサイエンスにおける2つのステージ
探索
(新しい機会の捜索と定量化)
運⽤
(本番システムへのデプロイ)
チーム データエンジニア、開発者、SRE
ゴール アプリケーションのビルドとメンテナンス、改善
データ 既知のデータ、全データ
環境 本番クラスタ
ツール Java/Scala、C++、IDE、CI、ソース管理など
最終アウトプット オンライン・本番アプリケーション
13© Cloudera, Inc. All rights reserved.
運⽤ツール: バージョン管理、スケジューラ、ワークフロー開発ツール: IDE/ノートブック、Python、R、
Scala
典型的なデータサイエンスワークフロー
取得
処理
ガバナンス
データを使った
実験
可視化と
分析
モデル訓練と
テスト
本番データ
パイプライン
バッチ
スコアリング
データ
サービング
オンライン
スコアリング
データエンジニアリング データサイエンス(探索) 本番環境 (運⽤)
14© Cloudera, Inc. All rights reserved.
エンタープライズでのオープンデータサイエンス
データサイエンティスト
探索、実験、イテレーション
インフラエンジニア
事業の加速とコンプライアンスの両⽴
15© Cloudera, Inc. All rights reserved.
それぞれの課題
データサイエンティスト
探索、実験、イテレーション
インフラエンジニア
事業の加速とコンプライアンスの両⽴
Hadoop上で好きなツールが使えない
基盤チームが標準提供するツールは使いたくない
結局⾃分のノートPC上に⼩さいデータをダウンロードし
ないといけない
データサイエンスチームの雑多な要望への
対応が⾟い
セキュリティを保つのが⼤変になる
コンプライアンスを維持しながら本番適⽤するのが⾟い
限定されたモデル
クラウド上の⾃由な環境のメンテナンス負荷
個別に⾼価でハイスペックな環境を購⼊しないといけない
出処不明のデータ
開発/本番環境での実⾏環境のバージョンの差異
⾼価でセキュアでない、サイロ化されたシステム
16© Cloudera, Inc. All rights reserved.
Clouderaのゴール
より多くの
データサイエンティストに
Hadoopの⼒を使ってほしい
Hadoopのデータと計算能⼒に直接
アクセスして、使い慣れたツール
をパワフルに活⽤する
データサイエンティスト
データエンジニア
簡単かつセキュアに
新しいユーザやユースケースを
追加してほしい
セキュアなセルフサービスの分析
ツールを提供し、普及していて⼿
頃な価格の基盤上でより素早く本
番投⼊する
エンタープライズアーキテクト
Hadoop管理者
17© Cloudera, Inc. All rights reserved.
Cloudera
Data Science Workbench
18© Cloudera, Inc. All rights reserved.
Cloudera Data Science Workbench 5つの価値
1つのプラットフォームで複数⾔語(Python, R, Scala)が使える
マルチテナント⽬的に利⽤可能な、リソース分離されたセッション
セキュアなクラスタとの連携が簡単にできる
コードや成果物を共有・再利⽤可能
データサイエンスのワークフローの⾃動化とジョブスケジューリング
19© Cloudera, Inc. All rights reserved.
Cloudera	Data	Science	Workbench(CDSW)によって
エンタープライズのためのセルフサービスデータサイエンス基盤
データサイエンティストは
⾃由を得ることが出来る
インフラエンジニアは
ガバナンスを確保できる
20© Cloudera, Inc. All rights reserved.
データサイエンティストは
• R/Python/Scalaをブラウザから環境構
築なしにすぐに使える
• 好みのライブラリやフレームワーク
をプロジェクトごとに独⽴した環境
にインストール可能
• SparkとImpalaを使いセキュアなク
ラスタのデータを直接触れる
• 知⾒をチームに再利⽤・共同開発可
能な形で共有できる
• データパイプラインの⾃動化と監視
を組み込みのジョブスケジューラで
可能
インフラエンジニアは
• データサイエンティスト⾃⾝が好き
な分析環境を作れる⾃由を与えられ
る
• 複雑な設定なしにKerberosと連携が
でき、セキュリティの確保も容易
• オンプレミスでもクラウドでもどこ
でもデータのある場所で使える
CDSWを使えば…
21© Cloudera, Inc. All rights reserved.
データサイエンスの問題はフルスタック
課題 ソリューション
無制限のデータのサポート Hadoop
アナリストのためのツールの提供 Impala / Hive / Hue
データサイエンティストとデータエンジニアのためのツールの提
供
Spark / Data Science Workbench
リアルタイム処理 Kafka / Spark Streaming
データガバナンスの提供 Cloudera Navigator + パートナー製品
フルスタックのセキュリティ Kerberos / Sentry / Record Service / Navigator Encrypt
クラウド上でのデプロイ Cloudera Director
インフラチームによるシステムの構築・管理 Cloudera Manager + Cloudera Director
22© Cloudera, Inc. All rights reserved.
アーキテクチャ概要
CDSWを稼働させる分散ゲートウェイノードが、Hadoop / Spark 2 に接続している
CDH
Gateway
CDH
Node
CDH
Node
CDH
Node
Cloudera Manager
CDSW
Worker Node
Spark, Impala,
Hive, HDFS, …
CDH
Gateway
CDSW
Master Node
Docker
アプリケーションと
エンジンのポッド
Kubernetes
Cloudera Managerエージェント
CDSWのアプリケーションコンポーネントとユーザワークロード
コンテナ・オーケストレーションサービス
コンテナ・ランタイム
CDHサービスのローカル管理
CDH
Gateway
CDSW
Worker Node
23© Cloudera, Inc. All rights reserved.
Dockerを使えば⾃由が得られるか?
• クラスタ上で好きなライブラリを使うには
• Java/Scala
• ライブラリを Fat JARで配布すれば、必要な依存関係を解決できる
• Python
• virtualenv/venvで仮想環境を作り、実⾏環境でライブラリを導⼊
• 全クラスタで? → デモで解決法をお⾒せします
24© Cloudera, Inc. All rights reserved.
Demo
InstallしていないMeCabをPySparkクラスタ上で実⾏する
25© Cloudera, Inc. All rights reserved.
PySparkで好きなPythonライブラリを使う
CDSW container
Python
w/ MeCab, TF, etc.
1. 必要なライブラリを
conda環境にまとめる
2. YARNがarchiveとして配布 3. 展開した環境を
PYSPARK_PYTHONで指定して実⾏
Master node
Worker node
https://blog.cloudera.co.jp/224ab84570da
https://blog.cloudera.co.jp/33097ac868fb
26© Cloudera, Inc. All rights reserved.
オープンなエコシステムの重要性
オープンエコシステム ブラックボックス
27© Cloudera, Inc. All rights reserved.
CDSWを試すには?
• Cloudera Directorを使ってクラウドで試すのがお⼿軽
• https://github.com/takabow/cdsw-demo-env
• AWS上でCDSWとCDHクラスタが起動するconfig file
• Cloudera Directorって?
• Cloud上へCDHクラスタを簡単にデプロイするためのツール
• CyberZさんのブログに詳しくまとまっています
• http://engineer-blog.cyber-z.co.jp/entry/2016/12/21/090000
28© Cloudera, Inc. All rights reserved.
Thank you!
ariga@cloudera.com

More Related Content

What's hot

Tips and Tricks for SAP Sybase IQ
Tips and Tricks for SAP  Sybase IQTips and Tricks for SAP  Sybase IQ
Tips and Tricks for SAP Sybase IQ
Don Brizendine
 

What's hot (20)

Apache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark OperatorApache Spark Streaming in K8s with ArgoCD & Spark Operator
Apache Spark Streaming in K8s with ArgoCD & Spark Operator
 
Best Practices for ETL with Apache NiFi on Kubernetes - Albert Lewandowski, G...
Best Practices for ETL with Apache NiFi on Kubernetes - Albert Lewandowski, G...Best Practices for ETL with Apache NiFi on Kubernetes - Albert Lewandowski, G...
Best Practices for ETL with Apache NiFi on Kubernetes - Albert Lewandowski, G...
 
みんな大好き!!ファイルサーバー DFS-R vs S2D
みんな大好き!!ファイルサーバー DFS-R vs S2Dみんな大好き!!ファイルサーバー DFS-R vs S2D
みんな大好き!!ファイルサーバー DFS-R vs S2D
 
昨今のストレージ選定のポイントとCephStorageの特徴
昨今のストレージ選定のポイントとCephStorageの特徴昨今のストレージ選定のポイントとCephStorageの特徴
昨今のストレージ選定のポイントとCephStorageの特徴
 
Cost Efficiency Strategies for Managed Apache Spark Service
Cost Efficiency Strategies for Managed Apache Spark ServiceCost Efficiency Strategies for Managed Apache Spark Service
Cost Efficiency Strategies for Managed Apache Spark Service
 
Hiveを高速化するLLAP
Hiveを高速化するLLAPHiveを高速化するLLAP
Hiveを高速化するLLAP
 
Apache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEAApache Iceberg Presentation for the St. Louis Big Data IDEA
Apache Iceberg Presentation for the St. Louis Big Data IDEA
 
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
 
Building an ML Platform with Ray and MLflow
Building an ML Platform with Ray and MLflowBuilding an ML Platform with Ray and MLflow
Building an ML Platform with Ray and MLflow
 
Citi Tech Talk Disaster Recovery Solutions Deep Dive
Citi Tech Talk  Disaster Recovery Solutions Deep DiveCiti Tech Talk  Disaster Recovery Solutions Deep Dive
Citi Tech Talk Disaster Recovery Solutions Deep Dive
 
分散ストレージソフトウェアCeph・アーキテクチャー概要
分散ストレージソフトウェアCeph・アーキテクチャー概要分散ストレージソフトウェアCeph・アーキテクチャー概要
分散ストレージソフトウェアCeph・アーキテクチャー概要
 
Tips and Tricks for SAP Sybase IQ
Tips and Tricks for SAP  Sybase IQTips and Tricks for SAP  Sybase IQ
Tips and Tricks for SAP Sybase IQ
 
Hadoop & Greenplum: Why Do Such a Thing?
Hadoop & Greenplum: Why Do Such a Thing?Hadoop & Greenplum: Why Do Such a Thing?
Hadoop & Greenplum: Why Do Such a Thing?
 
Hadoop Compatible File Systems 2019 (db tech showcase 2019 Tokyo講演資料、2019/09/25)
Hadoop Compatible File Systems 2019 (db tech showcase 2019 Tokyo講演資料、2019/09/25)Hadoop Compatible File Systems 2019 (db tech showcase 2019 Tokyo講演資料、2019/09/25)
Hadoop Compatible File Systems 2019 (db tech showcase 2019 Tokyo講演資料、2019/09/25)
 
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...
 
Apache Iceberg - A Table Format for Hige Analytic Datasets
Apache Iceberg - A Table Format for Hige Analytic DatasetsApache Iceberg - A Table Format for Hige Analytic Datasets
Apache Iceberg - A Table Format for Hige Analytic Datasets
 
An overview of snowflake
An overview of snowflakeAn overview of snowflake
An overview of snowflake
 
アイベックステクノロジー/馬場様 講演資料
アイベックステクノロジー/馬場様 講演資料アイベックステクノロジー/馬場様 講演資料
アイベックステクノロジー/馬場様 講演資料
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
 
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsApache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once Semantics
 

Viewers also liked

Spring Data in a Nutshell
Spring Data in a NutshellSpring Data in a Nutshell
Spring Data in a Nutshell
Tsuyoshi Miyake
 

Viewers also liked (13)

Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
 
Spring Cloud in a Nutshell
Spring Cloud in a NutshellSpring Cloud in a Nutshell
Spring Cloud in a Nutshell
 
Spring Data in a Nutshell
Spring Data in a NutshellSpring Data in a Nutshell
Spring Data in a Nutshell
 
Cloudera in the Cloud #CWT2017
Cloudera in the Cloud #CWT2017Cloudera in the Cloud #CWT2017
Cloudera in the Cloud #CWT2017
 
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
 
#cwt2016 Apache Kudu 構成とテーブル設計
#cwt2016 Apache Kudu 構成とテーブル設計#cwt2016 Apache Kudu 構成とテーブル設計
#cwt2016 Apache Kudu 構成とテーブル設計
 
Hue 4.0 / Hue Meetup Tokyo #huejp
Hue 4.0 / Hue Meetup Tokyo #huejpHue 4.0 / Hue Meetup Tokyo #huejp
Hue 4.0 / Hue Meetup Tokyo #huejp
 
Cloud Native Hadoop #cwt2016
Cloud Native Hadoop #cwt2016Cloud Native Hadoop #cwt2016
Cloud Native Hadoop #cwt2016
 
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
 
先行事例から学ぶ IoT / ビッグデータの始め方
先行事例から学ぶ IoT / ビッグデータの始め方先行事例から学ぶ IoT / ビッグデータの始め方
先行事例から学ぶ IoT / ビッグデータの始め方
 
How to go into production your machine learning models? #CWT2017
How to go into production your machine learning models? #CWT2017How to go into production your machine learning models? #CWT2017
How to go into production your machine learning models? #CWT2017
 
Apache Kudu - Updatable Analytical Storage #rakutentech
Apache Kudu - Updatable Analytical Storage #rakutentechApache Kudu - Updatable Analytical Storage #rakutentech
Apache Kudu - Updatable Analytical Storage #rakutentech
 
大規模データに対するデータサイエンスの進め方 #CWT2016
大規模データに対するデータサイエンスの進め方 #CWT2016大規模データに対するデータサイエンスの進め方 #CWT2016
大規模データに対するデータサイエンスの進め方 #CWT2016
 

Similar to Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda

Similar to Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda (20)

Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDSIbis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
Ibis: すごい pandas ⼤規模データ分析もらっくらく #summerDS
 
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
 
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
 
G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006
G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006
G-Tech2015 Hadoop/Sparkを中核としたビッグデータ基盤_20151006
 
Oracle Database 12c Release 1 PSR 12.1.0.2 のご紹介
Oracle Database 12c Release 1 PSR 12.1.0.2 のご紹介Oracle Database 12c Release 1 PSR 12.1.0.2 のご紹介
Oracle Database 12c Release 1 PSR 12.1.0.2 のご紹介
 
C5.2 (Cloudera Manager + CDH) アップデート #cwt2014
C5.2 (Cloudera Manager + CDH) アップデート #cwt2014C5.2 (Cloudera Manager + CDH) アップデート #cwt2014
C5.2 (Cloudera Manager + CDH) アップデート #cwt2014
 
OSSではじめるオープン・スタンダードのクラウド @201304
OSSではじめるオープン・スタンダードのクラウド @201304OSSではじめるオープン・スタンダードのクラウド @201304
OSSではじめるオープン・スタンダードのクラウド @201304
 
ITインフラsummit 2017発表資料
ITインフラsummit 2017発表資料ITインフラsummit 2017発表資料
ITインフラsummit 2017発表資料
 
Impala概要 道玄坂LT祭り 20150312 #dogenzakalt
Impala概要 道玄坂LT祭り 20150312 #dogenzakaltImpala概要 道玄坂LT祭り 20150312 #dogenzakalt
Impala概要 道玄坂LT祭り 20150312 #dogenzakalt
 
Azure <3 Openness
Azure <3 OpennessAzure <3 Openness
Azure <3 Openness
 
OSS光と闇
OSS光と闇OSS光と闇
OSS光と闇
 
Strata + Hadoop World 2014 レポート #cwt2014
Strata + Hadoop World 2014 レポート #cwt2014Strata + Hadoop World 2014 レポート #cwt2014
Strata + Hadoop World 2014 レポート #cwt2014
 
クラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakalt
クラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakaltクラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakalt
クラウド上でHadoopを構築できる Cloudera Director 2.0 の紹介 #dogenzakalt
 
Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介Oracle APEXユーザー会の紹介
Oracle APEXユーザー会の紹介
 
Azure DevOps - ALGYAN Oct 2022.pdf
Azure DevOps - ALGYAN Oct 2022.pdfAzure DevOps - ALGYAN Oct 2022.pdf
Azure DevOps - ALGYAN Oct 2022.pdf
 
Big Data も Oracle SQL で参照できるって知ってました?
Big Data も Oracle SQL で参照できるって知ってました?Big Data も Oracle SQL で参照できるって知ってました?
Big Data も Oracle SQL で参照できるって知ってました?
 
serverless openstack 101
serverless openstack 101serverless openstack 101
serverless openstack 101
 
祝★AWSスタンダードコンサルティングパートナーに認定されました
祝★AWSスタンダードコンサルティングパートナーに認定されました祝★AWSスタンダードコンサルティングパートナーに認定されました
祝★AWSスタンダードコンサルティングパートナーに認定されました
 
サーバーレス時代の システム設計ワークショップ
サーバーレス時代の システム設計ワークショップサーバーレス時代の システム設計ワークショップ
サーバーレス時代の システム設計ワークショップ
 
Azure DevOps で始めるスタートダッシュ
Azure DevOps で始めるスタートダッシュAzure DevOps で始めるスタートダッシュ
Azure DevOps で始めるスタートダッシュ
 

More from Cloudera Japan

More from Cloudera Japan (15)

HDFS Supportaiblity Improvements
HDFS Supportaiblity ImprovementsHDFS Supportaiblity Improvements
HDFS Supportaiblity Improvements
 
分散DB Apache Kuduのアーキテクチャ DBの性能と一貫性を両立させる仕組み 「HybridTime」とは
分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは
分散DB Apache Kuduのアーキテクチャ DBの性能と一貫性を両立させる仕組み 「HybridTime」とは
 
Apache Impalaパフォーマンスチューニング #dbts2018
Apache Impalaパフォーマンスチューニング #dbts2018Apache Impalaパフォーマンスチューニング #dbts2018
Apache Impalaパフォーマンスチューニング #dbts2018
 
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理
 
HBase Across the World #LINE_DM
HBase Across the World #LINE_DMHBase Across the World #LINE_DM
HBase Across the World #LINE_DM
 
Cloudera のサポートエンジニアリング #supennight
Cloudera のサポートエンジニアリング #supennightCloudera のサポートエンジニアリング #supennight
Cloudera のサポートエンジニアリング #supennight
 
Train, predict, serve: How to go into production your machine learning model
Train, predict, serve: How to go into production your machine learning modelTrain, predict, serve: How to go into production your machine learning model
Train, predict, serve: How to go into production your machine learning model
 
Apache Kuduを使った分析システムの裏側
Apache Kuduを使った分析システムの裏側Apache Kuduを使った分析システムの裏側
Apache Kuduを使った分析システムの裏側
 
#cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング
#cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング #cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング
#cwt2016 Cloudera Managerを用いた Hadoop のトラブルシューティング
 
MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015
MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015
MapReduceを置き換えるSpark 〜HadoopとSparkの統合〜 #cwt2015
 
PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015
PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015
PCIコンプライアンスに向けたビジネス指針〜MasterCardの事例〜 #cwt2015
 
「新製品 Kudu 及び RecordServiceの概要」 #cwt2015
「新製品 Kudu 及び RecordServiceの概要」 #cwt2015「新製品 Kudu 及び RecordServiceの概要」 #cwt2015
「新製品 Kudu 及び RecordServiceの概要」 #cwt2015
 
基調講演: 「データエコシステムへの挑戦」 #cwt2015
基調講演: 「データエコシステムへの挑戦」 #cwt2015基調講演: 「データエコシステムへの挑戦」 #cwt2015
基調講演: 「データエコシステムへの挑戦」 #cwt2015
 
基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015
基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015
基調講演:「ビッグデータのセキュリティとガバナンス要件」 #cwt2015
 
基調講演: 「パーペイシブ分析を目指して」#cwt2015
基調講演: 「パーペイシブ分析を目指して」#cwt2015基調講演: 「パーペイシブ分析を目指して」#cwt2015
基調講演: 「パーペイシブ分析を目指して」#cwt2015
 

Recently uploaded

Recently uploaded (8)

LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアルLoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
 
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdfネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
 
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
 
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
 
情報を表現するときのポイント
情報を表現するときのポイント情報を表現するときのポイント
情報を表現するときのポイント
 
Keywordmap overview material/CINC.co.ltd
Keywordmap overview material/CINC.co.ltdKeywordmap overview material/CINC.co.ltd
Keywordmap overview material/CINC.co.ltd
 
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイルLoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
 
MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
 

Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda

  • 1. 1© Cloudera, Inc. All rights reserved. Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う Michiaki Ariga, Field Data Scientist 2017/06/27 @Data Engineering and Data Analysis Workshop #1
  • 2. 2© Cloudera, Inc. All rights reserved. ⾃⼰紹介 • 有賀 康顕 (Twitter/GitHub @chezou) • Field Data Scientist @Cloudera • 過去の経歴 • 製造系メーカーでNLP/⾳声対話/機械学習の研究開発 • クックパッドでRailsアプリケーションの傍らレコメンドシステムの開発 • 技術書典2で機械学習の⼊⾨本を頒布 • Rubyコミュニティkawasaki.rbも主催 • rubyist.clubというPodcastもやってます
  • 3. 3© Cloudera, Inc. All rights reserved. We are hiring! • サポートメンバー、コンサルタント募集中
  • 4. 4© Cloudera, Inc. All rights reserved. オープンデータサイエンス
  • 5. 5© Cloudera, Inc. All rights reserved. https://medium.com/towards-data-science/data-engineer-vs-data-scientist-vs-business-analyst-b68d201364bc#.s6w0i8716 を元に作成 コンピュータ サイエンス ドメイン知識統計学 データエンジニア ビジネスアナリスト データサイエンティスト
  • 6. 6© Cloudera, Inc. All rights reserved. オープンデータサイエンスの台頭 統計計算とグラフィックのため の、プログラミング⾔語とソフ トウェア環境 最も普及している領域: アカデ ミアと統計コミュニティ 汎⽤の⾼次プログラミング⾔語 最も普及している領域:機械学 習とデータエンジニアリングコ ミュニティ 強い静的型付けシステムを持つ、 汎⽤の関数プログラミング⾔語 最も普及している領域: Spark を中⼼としたデータエンジニア リングコミュニティ 何千ものオープンソースの機械学習、統計、ビジュアライゼーションライブラリが存在
  • 7. 7© Cloudera, Inc. All rights reserved. オープンデータサイエンスを⽀えるオープンな論⽂ https://medium.com/@karpathy/a-peek-at-trends-in-machine- learning-ab8a1085a106 より引⽤ 機械学習関連の論⽂は 4年で4倍以上に
  • 8. 8© Cloudera, Inc. All rights reserved. エンタープライズにおける、 スケールするデータサイエンス
  • 9. 9© Cloudera, Inc. All rights reserved. Apache Spark ⾼速で柔軟な汎⽤データ処理フレームワーク データ エンジニアリング ストリーム処理 データサイエンス & 機械学習 統⼀されたAPIと⼤規模データのための処理エンジン
  • 10. 10© Cloudera, Inc. All rights reserved. Clouderaが提供するSpark がClouderaのSparkを ̶以下を圧倒̶ 半数以上 がHadoopの他のコンポーネントと 共にSparkを利⽤Clouderaを選択する最⼤の理由 = サポート、 トレーニング、そしてサービス 57%が⾃社の最も重要なユースケースに向けCloudera Sparkを使⽤。 これに対し他社は、Hortonworks(26%)、Apache ダウンロード(22%)、 Databricks (7%)という状況 回答者の48%が、最も⼀般的な利⽤形態としてSparkとHbaseとの併⽤を、 41%がSparkとKafkaの併⽤を表明
  • 11. 11© Cloudera, Inc. All rights reserved. Sparkのユースケース 3 out of 8 are employing Spark in data science research Sparkの上位ユースケース がデータサイエンス⽤途でSparkを活⽤ バッチ処理 (ETL) ストリーム処理 データサイエンス 機械学習 Sparkの上位ユースケースには、バッチ処理(55%)、ストリーム処理 (44%)、データサイエンス(33%)、機械学習(33%)が存在 8⼈中3⼈がSparkをデータサイエンス 調査の⽤途で活⽤
  • 12. 12© Cloudera, Inc. All rights reserved. チーム データサイエンティストとアナリスト ゴール データの理解、モデルの開発と改善、知⾒の共有 データ 新規のデータ、かつ頻繁に変更される。⼤抵の場 合サンプリングしたデータが⽤いられる 環境 ローカルマシンかサンドボックスクラスタ ツール R、Python、SAS/SPSS、SQL、ノートブック、 データラングリング・ディスカバリツール 最終アウトプット レポート、ダッシュボード、PDF、Excel、Word、 PowerPoint エンタープライズデータサイエンスにおける2つのステージ 探索 (新しい機会の捜索と定量化) 運⽤ (本番システムへのデプロイ) チーム データエンジニア、開発者、SRE ゴール アプリケーションのビルドとメンテナンス、改善 データ 既知のデータ、全データ 環境 本番クラスタ ツール Java/Scala、C++、IDE、CI、ソース管理など 最終アウトプット オンライン・本番アプリケーション
  • 13. 13© Cloudera, Inc. All rights reserved. 運⽤ツール: バージョン管理、スケジューラ、ワークフロー開発ツール: IDE/ノートブック、Python、R、 Scala 典型的なデータサイエンスワークフロー 取得 処理 ガバナンス データを使った 実験 可視化と 分析 モデル訓練と テスト 本番データ パイプライン バッチ スコアリング データ サービング オンライン スコアリング データエンジニアリング データサイエンス(探索) 本番環境 (運⽤)
  • 14. 14© Cloudera, Inc. All rights reserved. エンタープライズでのオープンデータサイエンス データサイエンティスト 探索、実験、イテレーション インフラエンジニア 事業の加速とコンプライアンスの両⽴
  • 15. 15© Cloudera, Inc. All rights reserved. それぞれの課題 データサイエンティスト 探索、実験、イテレーション インフラエンジニア 事業の加速とコンプライアンスの両⽴ Hadoop上で好きなツールが使えない 基盤チームが標準提供するツールは使いたくない 結局⾃分のノートPC上に⼩さいデータをダウンロードし ないといけない データサイエンスチームの雑多な要望への 対応が⾟い セキュリティを保つのが⼤変になる コンプライアンスを維持しながら本番適⽤するのが⾟い 限定されたモデル クラウド上の⾃由な環境のメンテナンス負荷 個別に⾼価でハイスペックな環境を購⼊しないといけない 出処不明のデータ 開発/本番環境での実⾏環境のバージョンの差異 ⾼価でセキュアでない、サイロ化されたシステム
  • 16. 16© Cloudera, Inc. All rights reserved. Clouderaのゴール より多くの データサイエンティストに Hadoopの⼒を使ってほしい Hadoopのデータと計算能⼒に直接 アクセスして、使い慣れたツール をパワフルに活⽤する データサイエンティスト データエンジニア 簡単かつセキュアに 新しいユーザやユースケースを 追加してほしい セキュアなセルフサービスの分析 ツールを提供し、普及していて⼿ 頃な価格の基盤上でより素早く本 番投⼊する エンタープライズアーキテクト Hadoop管理者
  • 17. 17© Cloudera, Inc. All rights reserved. Cloudera Data Science Workbench
  • 18. 18© Cloudera, Inc. All rights reserved. Cloudera Data Science Workbench 5つの価値 1つのプラットフォームで複数⾔語(Python, R, Scala)が使える マルチテナント⽬的に利⽤可能な、リソース分離されたセッション セキュアなクラスタとの連携が簡単にできる コードや成果物を共有・再利⽤可能 データサイエンスのワークフローの⾃動化とジョブスケジューリング
  • 19. 19© Cloudera, Inc. All rights reserved. Cloudera Data Science Workbench(CDSW)によって エンタープライズのためのセルフサービスデータサイエンス基盤 データサイエンティストは ⾃由を得ることが出来る インフラエンジニアは ガバナンスを確保できる
  • 20. 20© Cloudera, Inc. All rights reserved. データサイエンティストは • R/Python/Scalaをブラウザから環境構 築なしにすぐに使える • 好みのライブラリやフレームワーク をプロジェクトごとに独⽴した環境 にインストール可能 • SparkとImpalaを使いセキュアなク ラスタのデータを直接触れる • 知⾒をチームに再利⽤・共同開発可 能な形で共有できる • データパイプラインの⾃動化と監視 を組み込みのジョブスケジューラで 可能 インフラエンジニアは • データサイエンティスト⾃⾝が好き な分析環境を作れる⾃由を与えられ る • 複雑な設定なしにKerberosと連携が でき、セキュリティの確保も容易 • オンプレミスでもクラウドでもどこ でもデータのある場所で使える CDSWを使えば…
  • 21. 21© Cloudera, Inc. All rights reserved. データサイエンスの問題はフルスタック 課題 ソリューション 無制限のデータのサポート Hadoop アナリストのためのツールの提供 Impala / Hive / Hue データサイエンティストとデータエンジニアのためのツールの提 供 Spark / Data Science Workbench リアルタイム処理 Kafka / Spark Streaming データガバナンスの提供 Cloudera Navigator + パートナー製品 フルスタックのセキュリティ Kerberos / Sentry / Record Service / Navigator Encrypt クラウド上でのデプロイ Cloudera Director インフラチームによるシステムの構築・管理 Cloudera Manager + Cloudera Director
  • 22. 22© Cloudera, Inc. All rights reserved. アーキテクチャ概要 CDSWを稼働させる分散ゲートウェイノードが、Hadoop / Spark 2 に接続している CDH Gateway CDH Node CDH Node CDH Node Cloudera Manager CDSW Worker Node Spark, Impala, Hive, HDFS, … CDH Gateway CDSW Master Node Docker アプリケーションと エンジンのポッド Kubernetes Cloudera Managerエージェント CDSWのアプリケーションコンポーネントとユーザワークロード コンテナ・オーケストレーションサービス コンテナ・ランタイム CDHサービスのローカル管理 CDH Gateway CDSW Worker Node
  • 23. 23© Cloudera, Inc. All rights reserved. Dockerを使えば⾃由が得られるか? • クラスタ上で好きなライブラリを使うには • Java/Scala • ライブラリを Fat JARで配布すれば、必要な依存関係を解決できる • Python • virtualenv/venvで仮想環境を作り、実⾏環境でライブラリを導⼊ • 全クラスタで? → デモで解決法をお⾒せします
  • 24. 24© Cloudera, Inc. All rights reserved. Demo InstallしていないMeCabをPySparkクラスタ上で実⾏する
  • 25. 25© Cloudera, Inc. All rights reserved. PySparkで好きなPythonライブラリを使う CDSW container Python w/ MeCab, TF, etc. 1. 必要なライブラリを conda環境にまとめる 2. YARNがarchiveとして配布 3. 展開した環境を PYSPARK_PYTHONで指定して実⾏ Master node Worker node https://blog.cloudera.co.jp/224ab84570da https://blog.cloudera.co.jp/33097ac868fb
  • 26. 26© Cloudera, Inc. All rights reserved. オープンなエコシステムの重要性 オープンエコシステム ブラックボックス
  • 27. 27© Cloudera, Inc. All rights reserved. CDSWを試すには? • Cloudera Directorを使ってクラウドで試すのがお⼿軽 • https://github.com/takabow/cdsw-demo-env • AWS上でCDSWとCDHクラスタが起動するconfig file • Cloudera Directorって? • Cloud上へCDHクラスタを簡単にデプロイするためのツール • CyberZさんのブログに詳しくまとまっています • http://engineer-blog.cyber-z.co.jp/entry/2016/12/21/090000
  • 28. 28© Cloudera, Inc. All rights reserved. Thank you! ariga@cloudera.com