Datalabで分析環境を用意する [GCP]


はじめに

会社の組織力向上活動の一環として「チーム活動」名目で、ある程度自由に予算を使っていろんな活動ができるようになったので、チームメンバー全員でGCP Professional Data Engineerの資格を取得しようということに。。。

サービスの概要なんかを勉強していったのはいいものの、

「DataFlow。。。なんや、それ。。。」

「BigtableとDatastoreってなにが違うねん!!!」

「Datalab便利やのになんでひっそりサービス提供されてんねん!!」

「AWS程ではないけど、サービス多すぎ!!ええことやけど。。。」

と、実際にサービスの種類が多すぎて使ってみないとよくわからないという結論に至ったので、勉強記も兼ねてGCPの各サービスを実際に使ってその結果をQiitaに投稿していく


Datalab

GCPのホーム画面にもナビゲーションメニューにも表示されず、ひっそりとデータサイエンティストの仕事を支援してくれているサービス

それがDatalab

Colaboratoryも同じように瞬時にJupyterを立ち上げて分析環境を構築できるため、重宝しているがセッションが切れると作業してた内容が吹っ飛ぶためデータの取り扱いに気をつけないといけない

でもDatalabは、自身のGCP環境上に環境を立ち上げているのでその心配は無用


  • DeepLearningをお試しで実行したい場合にはColaboratory


  • 毎回GCSにデータを移すのが面倒なアドホック分析はDatalab


あまりお金をかけずに簡単な分析するなら上の選択肢が現実的かも。。


サービス概要

公式の内容をまとめると


  • データの探索、分析、可視化と機械学習のための使いやすいインタラクティブなツールというかJupyter

  • Datalabは実際にはComputeEngineが裏側で起動している

  • Google BigQuery、Cloud Machine Learning Engineなどのデータ分析が可能

  • Datalab自体は無料。裏側で起動しているGCEや利用したBigQueryの料金が課金対象

  • githubで公開されてる

[github]

https://github.com/googledatalab/datalab


起動する

Datalabはcloudshell上で実行できる

試しにdatalab-sandboxの名前でDatalabを起動する

超簡単!!

datalab create datalab-sandbox

Datalabが作成されるとPortを8081に変更してwebでプレビューボタンを押すと、こんな感じの画面が出てくる

スクリーンショット 2019-04-06 10.32.10.png

コレでcloudshellで起動している間は、Datalabを利用できる

デフォルトのVMマシンはn1-standard-1だが、create時にVMマシンのタイプは指定できる


使ってみる

使ってみると言っても、まぁただのJupyterなんでね。別に、コレと言って目新しいことはないわけで。。。

ただ、Datalabで色々分析したい場合にいいなと思ったのは、元々scikit-learntensorflowは既にインストール済みなのでそこは良さげ(colaboratoryでもデフォルトで入っているけど)

また、マジックコマンドに%%bigqueryとかあって他のGCPのサービスと連携取りやすいのもいいところかも

デフォルトで入っていないライブラリに関してもColaboratoryと同じようにセルに!pip install XXXと打ち込めばインストール出来る

ちなみに画面はこんな感じ

スクリーンショット 2019-04-06 10.42.07.png


ungitを使ってソースをforkしてくる

Datalabのメニューバーのところにgitアイコンがあるが、コレをクリックするとDatalabに外からソースを色々forkしてくることができる

スクリーンショット 2019-04-06 13.10.56.png


Datalabを削除する

ちなみに料金は起動している間から削除するまで発生するので、料金がチャージされないようにするためには

datalab delete --delete-disk datalab-sandbox

上記のようにすれば、ディスクもVMも削除できる

他のDatalab関連のコマンドを知りたい場合は以下を参照

https://cloud.google.com/datalab/docs/reference/command-line/commands


参考リンク

[GCP] Datalab の起動方法

公式リファレンス

まぁ、コレくらい調べればええやろ

どうせ試験にDatalabが詳しく出題されることもないだろうし。。。

おしまい