[Dataiku] インストール版からクラウド版に移行できるかやってみた①

[Dataiku] インストール版からクラウド版に移行できるかやってみた① | Tableau-id Press -タブロイド-
dataiku_logo

こんにちは、ひめのです。

弊社ではインストール版のDataikuで様々な分析、
サービス開発を行っているのですが、
ケイパビリティの確認としてDataiku様にもご協力いただきながら
クラウド版とどっちが適しているか?の検証を行っていました。

検証した内容はRのRobynパッケージを用いた分析ワークフローです。

長くなりそうなのでシリーズということにして記事を分けようと思います。

 

クラウド版環境:v12.4

 

Code envの差異

インストール版と同様にCode envをPython用とR用で作成します。
RobynはRのパッケージですが、reticulateパッケージを使用して仮想環境を構築し、
その中でPythonパッケージのNevergradなどを使用しています。

インストール版で問題なく動いていたので、同様のパッケージを追加してみます。
インストール版の環境はこんな感じです↓

これをそのままコピペ………しても動きませんでした!!

いろいろ試行錯誤してたどり着いたのが、それぞれにバージョン情報を入れる、という方法。

クラウド版の環境で上手く行った例がこちらです!↓

 

devtoolsは同じコードを実行していたらクラウド版でのみ足りない、と表示が出たので追記しました。
環境作成の際にエラーがたくさん出て、頑張って解読してたどり着きました…!

 

 

RとPythonの両方を使う方法が違う

インストール版ではR環境とPython環境を両方用意して、以下のコードをで
RのノートブックからPythonを呼び出します。

# Python環境を使用するための設定
use_python(‘/data/dataiku/dss_data/code-envs/python/robyn_py38/bin/python’)

 

クラウド版はコンテナ処理をしているそうで、RのノートブックからPythonパッケージを
呼び出すには以下のコードが必要です。
Dataikuのサポートの方にご協力いただきました。

# Load the devtools package
library(devtools)
# Load reticulate library
library(reticulate)
# 2. Create virtual environment using /usr/bin/python3.6
virtualenv_create(“r-reticulate”, python = “/usr/bin/python3.6”)
# 3. Use the environment created
use_virtualenv(“r-reticulate”, required = TRUE)
# 4. Point Python path to the python file in the virtual environment
Sys.setenv(RETICULATE_PYTHON = “~/.virtualenvs/r-reticulate/bin/python”)

 

クラウド版のコードはローカルでRスタジオに記載していたコードとほぼ同じになりました。
Rのノートブックで仮想環境を作成しているので、PythonのCode envを別途作成する必要はありません。

仮想環境の作成に関して、python3.6以外にも試したのですが、
私が実行した当時は3.6以外では上手く行きませんでした。

ウェアハウスのスペックにもよると思いますが、ライブラリの追加や仮想環境作成に
インストール版と比較して結構時間がかかった印象です。

 

 

次回はマネージドフォルダの差異についてご紹介したいと思います。