🪐

Colab Enterprise を解説

2023/10/31に公開

はじめに

こんにちは、クラウドエース データ ML ディビジョン所属の坂田です。

データ ML ディビジョンでは、Google Cloud が提供しているデータ領域のプロダクトについて、新規リリースをキャッチアップするための調査報告会を毎週実施しています。
新規リリースの中でも、特に重要と考えるリリースを記事としてまとめ、本ページのように公開しています。

今回は、Google Cloud の Vertex AI に新登場したプロダクト「Colab Enterprise」について解説します。

Colab Enterprise は、Google Cloud で Jupyter Notebook を簡単かつセキュアに扱うことができるデータ分析環境です。
この記事では、Colab Enterprise の概要やメリット、使い方について解説します。

Colab Enterprise とは

概要

Google は従来から「Colaboratory(Colab)」という、ブラウザ上で Jupyter Notebook(以下、Notebook)をサーバーレスで実行できるサービスを展開していました。
Colaboratory は以下のような特徴があります。

  • サーバーレスのため、実行環境(インフラ)の管理が不要
  • Python や主なデータ分析用パッケージがあらかじめインストールされている
  • GPU や TPU を使用して機械学習ができる

Colaboratory は手軽に Notebook を利用できるというメリットがありますが、手軽さゆえに、高いセキュリティやコンプライアンスが要求される企業利用では Colaboratory への手の出しづらさがありました。
そこで Colaboratory の企業利用向けに登場したのが、Colab Enterprise です。

alt
Colab Enterprise コンソール画面

Colab Enterprise では、Colaboratory の手軽さに加えて、セキュリティやネットワーク管理の機能が強化されています。
Colab Enterprise の主な特徴について詳しく見ていきます。

特徴 1. IAMによるアクセス制御

Colab Enterprise では、Google Cloud でおなじみの IAM(Identity and Access Management)を使用したアクセス制御が可能です

Colaboratory は Google Drive の共有機能を使用してアクセス制御を行うため、ファイルやフォルダ単位のアクセス制御が基本となります。
一方で、Colab Enterprise では IAM を使用してアクセス制御を行うため、一元的に細かくアクセス制御を行うことができます。

特徴 2. データを保存するリージョンを選べる

Colab Enterprise では、データの保存先のリージョン(地域)を選択できます
Google Cloud のすべてのリージョンから選択できるわけではないですが、東京(asia-northeast1)やアメリカ・アイオワ(us-central1)など、主要なリージョンが対応しています。

Colaboratory では、データは Google Drive に保存されるため、データを保存する地域は選べませんでした。
個人情報が含まれるデータなど、法律の観点から特定の地域にデータを保存する必要がある場合でも、Colab Enterprise を利用できます。

特徴 3. CPU・GPU・メモリサイズを選べる

Colab Enterprise で Notebook を実行する際、使用するコンピューティングリソースのスペックを柔軟に選択できます
以下の項目について選択できます。

  • CPU のコア数
  • GPU のサイズ
  • メモリサイズ
  • ディスクの種類(4 種類の永続ディスク一覧
  • ディスク容量

CPU・GPU・メモリは、Google Cloud の Compute Engine のマシンタイプから選択する形で設定します。

Colaboratory では、無償版はリソースを自由に選択できません。
また、有償版ではリソースを選択できるものの、Colab Enterprise の方が柔軟な選択が可能です。

なお、Colaboratory では TPU は利用可能ですが、2023 年 11 月現在、Colab Enterprise では利用できません。

特徴 4. ネットワークの管理

Colab Enterprise では、Google Cloud の VPC ネットワークによるネットワーク管理が可能です
Colaboratory ではネットワークの管理機能はありません。
なお、VPC Service Controls には非対応とのことです。

料金

Colab Enterprise は、使用したコンピューティング リソースの分だけ課金が発生する、従量課金制です。
以下は、東京リージョンの料金の一例です。

  • CPU(マシンタイプ:N1):$0.0487416(vCPU / 時間)
  • メモリ(マシンタイプ:N1):$0.0065028(GB / 時間)
  • ディスク(標準永続ディスク):$0.0624(GB / 月)

詳しくは公式ドキュメントを参照してください。
https://cloud.google.com/colab/pricing

Colaboratory・Vertex AI Workbench との違い

Google Cloud の Vertex AI には、Notebook の実行環境として「Vertex AI Workbench」というプロダクトもあります。
Vertex AI Workbench は、Compute Engine インスタンスに Notebook 実行環境が構築され、環境を細かく制御できる点が特徴です。

Notebook の実行環境として使用できる、Colab Enterprise、Colaboratory、Vertex AI Workbench について、それぞれの違いをまとめます。

比較表

項目 Colab Enterprise Colaboratory Vertex AI Workbench
コンピューティングリソース 選択可能 ・無償版:選べない
・有償版:選択可能
選択可能
環境の管理 不要 不要 OS・パッケージなどを細かく制御できる
アクセス制御 IAM Google Drive の共有機能 IAM
ネットワーク 設定可能 設定できない 設定可能(VPC Service Controls 対応)
データの保存先 リージョンを選択 Google Drive(リージョンは選べない) リージョンを選択
料金 リソースの使用量に応じた従量課金 無償版、有償版(サブスクリプション「Pro」「Pro+」、従量課金「Pay As You Go」) リソースの使用量に応じた従量課金
位置付け Google Cloud のプロダクト Google のプロダクト Google Cloud のプロダクト

使い分け

Colab Enterprise、Colaboratory、Vertex AI Workbench のどれを使えばよいかは、「環境の設定の柔軟性」「セキュリティ」の 2 つを基準に考えるとよいと思います。

まず、「Notebook 環境を柔軟に設定したい」という場合は、Vertex AI Workbench がおすすめです。
「環境の管理は不要だが、Google Cloud 環境でセキュアに Notebook を使いたい」という場合は Colab Enterprise を選択します。
また、「環境の管理は不要で、セキュリティなどは考えず、とにかく手軽に Notebook を使いたい」という場合は Colaboratory がおすすめです。

alt
ディシジョンツリー

使い方

手順

Colab Enterprise で Notebook を実行するまでの手順を簡単に解説します。
以下の手順は、すべて Google Cloud のコンソール画面から Colab Enterprise にアクセスして実施します。
Colab Enterprise のコンソール画面はこちら。
https://console.cloud.google.com/vertex-ai/colab/notebooks?hl=ja

1. ランタイム テンプレートを作成する

Notebook の実行環境となるコンピューティング リソースは「ランタイム」と呼ばれます。
そのランタイムを作成するために、まずは「ランタイム テンプレート」を作成します。

ランタイム テンプレートで以下の項目を設定します。

  • マシンタイプ(CPU・GPU・メモリのスペック)
  • ディスクの種類・サイズ
  • リージョン
  • シャットダウンまでの非アクティブ時間(非アクティブな状態が何時間続いたらシャットダウンするか)
  • ネットワーク

2. ランタイムを作成する

ランタイム テンプレートを使ってランタイムを作成します。
1 つのテンプレートから複数のランタイムを作成できます。

3. Notebook を作成する

実行したい Notebook を作成します。
コンソール画面から、Notebook の新規作成、編集が可能です。
また、ローカルから Notebook(ipynb ファイル)をアップロードすることもできます(ファイルサイズは 10MB 未満である必要あり)。

4. Notebook にランタイムを接続し、実行する

実行したい Notebook にランタイムを接続し、Notebook を実行します。
Notebook の基本的な操作方法は Colabratory と同様です。
1 つのランタイムを複数の Notebook で共有することも可能ですが、ライブラリの依存関係や実行速度に悪影響が出るおそれがあるため、Notebook ごとにランタイムを作成することが推奨されています。

alt
ランタイムの接続

便利な機能

アイドル シャットダウン

コンソール画面にアクセスしなかった、Notebook が実行されなかったなど、ランタイムの非アクティブな時間が続いた場合、ランタイムを自動的にシャットダウンさせることができます。
Colab Enterprise の料金はランタイムの起動時間に応じて発生するため、余分な課金を抑えることができます。
アイドル シャットダウンはランタイム テンプレート作成時に設定できます。

なお、自動的にシャットダウンされたとしても、ディスクは確保されたままのため、シャットダウン後もディスクの課金は発生することに注意です。

Notebook の変更履歴を確認

Notebook の変更履歴を確認できます。
ただし、変更履歴の確認はあくまで簡易的なものであり、Git のような厳密なバージョン管理はできません。

alt
変更履歴の確認方法 1

alt
変更履歴の確認方法 2

Duet AI によるコード補完

Colab Enterprise には Google Cloud の生成 AI アシスタント「Duet AI」が統合されており、生成 AI によるコード補完機能を使用できます。
以下のように、プログラムのコードやコメントを書くと、灰色の文字で予測コードが表示され、Tab キーを押すと実際に補完されます。

alt
Duet AI によるコード補完

BigQuery との統合(今後登場)

Colab Enterprise の Notebook を BigQuery のコンソール画面から操作できるようになる機能「BigQuery Studio」の登場が発表されています。
BigQuery のデータを Colab Enterprise で分析する場合、BigQuery と Colab Enterprise 間でコンソールを行き来しなくてもよくなり、作業の効率化を期待できます。

2023 年 11 月現在、BigQuery Studio の利用には申請が必要です。
詳細は Google Cloud 公式ブログを参照してください。

https://cloud.google.com/blog/ja/products/data-analytics/announcing-bigquery-studio

まとめ

Google Cloud で手軽にデータ分析を行うことができる Colab Enterprise について解説しました。

Colab Enterprise は 2023 年 9 月に発表され、10 月に GA(一般利用可能)となったばかりのため、正直、機能として物足りない部分もあります(特に TPU が使えないところ)。また、突然 Notebook の変更が保存できなくなるなど、動作が不安定なときも稀にあります。

ただ、Google Cloud において、手軽に利用できる Notebook 環境が登場したのは、非常に大きなニュースだと思います。
Colaboratory の企業利用向けに登場したプロダクトとして、Colab Enterprise の今後の機能向上に期待です。

関連記事

・BigQuery Studio の解説記事
https://zenn.dev/cloud_ace/articles/c2b901796c97f0

・Colab Enterprise にプリインストールされている BigQuery DataFrames の解説記事
https://zenn.dev/cloud_ace/articles/45afb6278eae35

Discussion