LoginSignup
1
0

More than 1 year has passed since last update.

Databricksユーザーを招待して利用開始するまでの手順

Last updated at Posted at 2022-06-02

Databricksのワークスペース管理者がDatabricksユーザーを招待し、Databricksユーザーが利用を開始するまで(ノートブック上でコマンドを実行するまで)の手順をまとめています。

注意

  • こちらの内容はDatabricks on AWSに関するものとなっています。Azure Databricksの場合は一部手順が異なります。Azure Databricksの手順は追って準備します。
  • こちらで説明している手順はシングルサインオンが有効化されているケースでは当てはまりません。
  • GUIは日本語を想定しています。GUIを日本語に変更する手順に関してはこちらを参照してください。

Databricksクイックスタートガイドのコンテンツです。

Screen Shot 2022-06-03 at 9.15.53.png

ワークスペース管理者の作業

招待したユーザーがすぐに作業を開始できるように、ワークスペース管理者が準備を行います。

機能の有効化・無効化

サイドメニューから設定 > 管理コンソールにアクセスし、Workspace settingsタブを開きます。

DBFSブラウザを有効にするなどワークスペースの機能のオンオフを行います。
Screen Shot 2022-06-02 at 17.08.12.png

お勧め設定

  • REST APIを呼び出す際に使用するパーソナルアクセストークンを利用させない。
    • Access Controlの下にあるPersonal Access Tokensオフにします。
  • ワークスペースのサイドメニューからDBFS(Databricks File System)をブラウジングできるようにしたい。
    • AdvancedDBFS File Browserオンにします。
  • ノートブックのコマンドの実行結果のダウンロードを許可しない。
    • AdvancedDownload button for notebook resultsオフにします。
  • GUIを用いたローカルからのファイルのアップロードを許可しない。
    • AdvancedUpload data using the UIオフにします。
  • ノートブックのエクスポートを許可しない。
    • AdvancedNotebook Exportingオフにします。

クラスターの作成

デフォルトの設定では、Databricksユーザーは計算処理を行うDatabricksクラスターを作成することができません。

ここでは、ワークスペースにアクセスできる全ユーザーが利用できる(起動・ノートブックのアタッチ)クラスターを準備します。

  1. サイドメニューからクラスターにアクセスし、クラスターの作成ボタンをクリックします。

  2. 以下の設定でクラスターを作成します。

    • クラスター名: 共用クラスター
    • クラスターモード: ハイコンカレンシー(同時接続性の高いクラスターです)
    • Databricksランタイムのバージョン: Runtime 10.5 ML
    • オートスケールの有効化: オン
    • 非アクティブ状態が120分継続した後に終了(アイドル状態が120分続いたら自動でクラスターが停止します)
    • ワーカータイプ: i3.2xlarge
      • ワーカーの最小数: 2
      • ワーカーの最大数: 8

Screen Shot 2022-06-02 at 17.17.48.png

クラスターのアクセス権の設定

  1. 画面右上のその他をクリックし権限を選択します。
    Screen Shot 2022-06-02 at 17.18.18.png

  2. アクセス権を設定します。
    Screen Shot 2022-06-02 at 17.19.28.png

  3. NAMEからグループの下にあるすべてのユーザーを選択します。
    Screen Shot 2022-06-02 at 17.20.05.png

  4. PERMISSIONから再起動が可能を選択します。
    Screen Shot 2022-06-02 at 17.22.55.png

  5. +追加をクリックします。
    Screen Shot 2022-06-02 at 17.24.03.png

  6. Saveをクリックします。

注意

  • 同時に利用するユーザー数など性能要件に応じてクラスターのスペックを変更してください。
  • セキュリティポリシーに応じてクラスターのアクセス権を変更してください。アクセス権とユーザーができることの関係は以下の通りとなります。詳細は原文を参照ください。
できること アクセス権なし アタッチ可 再起動が可能 管理可能
ノートブックをクラスターにアタッチ x x x
Spark UIの参照 x x x
クラスターメトリクスの参照 x x x
ドライバーログの参照 x x x
クラスターの停止 x x
クラスターの起動 x x
クラスターの再起動 x x
クラスターの編集 x
ライブラリをクラスターにアタッチ x
クラスターのリサイズ x
アクセス権の変更 x

お勧め設定

複数のユーザーで1台のクラスターを共有する

メリット: 管理するクラスターの台数を限定できるので管理が楽です。
デメリット:

  • 1台のクラスターを複数人で使用するので、リソースの取り合いが起こる可能性があります。
  • GPUクラスターを使用したいなど、特定のユースケースに柔軟に対応することができません。

設定内容: 上述の設定を参考にしてください。

複数のユーザーで1台のクラスターを共有する(管理者がクラスターの起動・停止を行う)

上の設定よりもユーザーの自由度は減り、クラスターの起動・停止はできなくなります。

メリット: ユーザーは稼働中のクラスターにノートブックをアタッチするだけでいいので操作が楽です。
デメリット: 管理者がクラスターの手動起動・停止を行う必要があります。

設定内容:

上のアクセス権の設定で付与する権限をアタッチ可に変更します。

各ユーザーが許可された裁量でクラスターを管理する

メリット: ユーザーが一定の自由度の下でクラスターを作成、利用することができます。
デメリット:

  • クラスターが乱立することになり多くのクラスターを管理しなくてはなりません。
  • クラスターポリシーを活用しないと野放図にクラスターが作成されることになります。
  • コストのコントロールが効きづらくなります。

設定方法

管理者がクラスターポリシーを作成し、ユーザーにクラスターポリシーのアクセス権限を与えます。

  1. ワークスペース管理者は、サイドメニューのクラスターにアクセスし、クラスターポリシータブをクリックします。

  2. クラスターポリシーを作成ボタンをクリックします。
    Screen Shot 2022-06-02 at 20.22.56.png

  3. クラスターポリシーの名前とポリシーのルール(JSON)を指定します。ここでは、名前を一般的なクラスターポリシーとし、定義タブに貼り付けるポリシーのルールは以下のようにします。

    このルールでは以下のルールを規定しています。

    • ハイコンカレンシークラスター
    • プールの使用不可
    • Databricksランタイムは10.x系のみ
    • 指定できるインスタンスタイプは`i3.xlarge,i3.2xlarge,i3.4xlarge"のみ
    • ワーカーノードの最小数は1
    • ワーカーノードの最大数は10
    • ディスクのオートスケールを有効化
    • 自動停止するアイドル時間は30分
    • カスタムタグとしてteamproductを指定
    JSON
    {
      "spark_conf.spark.databricks.cluster.profile": {
        "type": "fixed",
        "value": "serverless",
        "hidden": true
      },
      "instance_pool_id": {
        "type": "forbidden",
        "hidden": true
      },
      "spark_version": {
        "type": "regex",
        "pattern": "10\\.[0-9]+\\.x-scala.*"
      },
      "node_type_id": {
        "type": "allowlist",
        "values": [
          "i3.xlarge",
          "i3.2xlarge",
          "i3.4xlarge"
        ],
        "defaultValue": "i3.xlarge"
      },
      "driver_node_type_id": {
        "type": "fixed",
        "value": "i3.xlarge",
        "hidden": true
      },
      "autoscale.min_workers": {
        "type": "fixed",
        "value": 1,
        "hidden": true
      },
      "autoscale.max_workers": {
        "type": "range",
        "maxValue": 10,
        "defaultValue": 2
      },
      "enable_elastic_disk": {
        "type": "fixed",
        "value": true,
        "hidden": true
      },
      "autotermination_minutes": {
        "type": "fixed",
        "value": 30,
        "hidden": true
      },
      "custom_tags.team": {
        "type": "fixed",
        "value": "product"
      }
    }
    

    Screen Shot 2022-06-02 at 20.38.35.png

  4. 権限タブをクリックします。

  5. NAMEにはすべてのユーザーPERMISSIONには使用可能を選択し、+追加をクリックします。
    Screen Shot 2022-06-02 at 20.39.52.png

これでクラスターポリシーが作成されました。

ユーザーは権限が与えられているクラスターポリシーを指定してクラスターを作成します。

注意
ユーザーは使用可能権限が与えられているクラスターポリシーを使用してしかクラスターを作成することはできません。

  1. サイドメニューからクラスターを選択し、クラスターの作成をクリックします。
  2. 使用できるクラスターポリシーが複数ある場合には、クラスターポリシーから使用するポリシーを選択できますが、1つしかない場合にはクラスターポリシーは固定されます。
    Screen Shot 2022-06-02 at 20.43.56.png
  3. 変更が許可されている設定を必要に応じて変更して、クラスターを作成ボタンをクリックします。
  4. これでクラスターが作成されます。

クラスターポリシーの詳細に関しては、Databricksクラスターポリシーの管理をご覧ください。

ユーザーの招待

  1. サイドメニューの設定 > 管理コンソールを選択します。
  2. Usersタブが選択されていることを確認します。
  3. + ユーザーを追加ボタンをクリックします。
    Screen Shot 2022-05-26 at 17.51.04.png
  4. Emailに招待したいユーザーのメールアドレスを入力し、Send inviteをクリックします。
    Screen Shot 2022-05-26 at 17.51.33.png
  5. 招待メールが送信された旨のメッセージが表示されるのでOKをクリックします。他のユーザーを招待するにはステップ4からの操作を繰り返します。
    Screen Shot 2022-05-26 at 17.52.39.png

ユーザーの作業

招待メールの受信およびワークスペースへのログイン

注意
上の操作から5分以内に確認メールが届かない場合には、迷惑メールに分類されていないか確認してください。

  1. Databricksからの確認メール(メールタイトル: 管理者の名前 has invited you to collaborate using Databricks)を開きます。招待者の名前とメールアドレスを確認の上、メールに記載されているURLをクリックします。
    Screen Shot 2022-05-26 at 17.59.07.JPG
  2. Databricksワークスペースに遷移します。ここで、First and last nameに自分の名前、PasswordConfirm passwordにパスワードを入力し、Sign Upボタンをクリックします。

注意
パスワードは最低8文字を指定してください。

これで、Databricksワークスペースにログインできました!
Screen Shot 2022-05-26 at 18.00.04.JPG

注意
このタイミングでワークスペースをブックマークしておくことをお勧めします。URLはワークスペース固有なので、他のワークスペースと混同しないように、ブックマークにわかりやすい名前をつけておくことをお勧めします。

画面操作に慣れる

  1. まずは言語を日本語に切り替えましょう。こちらの手順に従って、画面の言語を日本語に切り替えてください。
  2. ワークスペースの画面は以下のような構成となっています。画面左側のサイドメニューから主要機能にアクセスします。
    Screen Shot 2022-06-02 at 17.42.46.png
  3. サイドメニューにマウスカーソルを移動するとメニューが展開します。なお、この挙動は一番下のメニューオプションから変更することができます。
    Screen Shot 2022-06-02 at 17.44.08.png
  4. 以下のメニュー項目となっていますので、それぞれにアクセスしてみてください。
    1. Data Science & Engineering こちらはペルソナスイッチャーと呼ばれるものです。作業内容がデータサイエンス&データエンジニアリングであればD、機械学習(Machine Learning)に関するものであればM、SQL分析であればSを選択することで、メニューや画面がそのペルソナに適したものに変更されます。
      Screen Shot 2022-06-02 at 17.45.34.png

    2. 作成 ノートブック、テーブル、クラスターなどをクイックに作成することができます。

    3. ワークスペース ワークスペース上のフォルダー、ノートブックを一覧、アクセスすることができます。ワークスペースにはユーザーごとのホームフォルダが作成され、このフォルダの中にノートブックやフォルダを作成することになります。
      Screen Shot 2022-06-02 at 18.03.42.png

    4. リポジトリ Git連携機能であるDatabricks Reposにアクセスします。

    5. 最近利用したアイテム 最近アクセスしたノートブックが一覧表示されます。

    6. 検索 ワークスペースを検索できます。

    7. データ ワークスペースのデータベースにアクセスします。

    8. クラスター Databricksクラスターの一覧画面に移動します。

    9. ワークフロー ノートブックの処理を定期実行することができます。

ノートブックを作成する

Databricksではノートブックにコードを記述し、ノートブックを稼働中のクラスターにアタッチしたあとでコードを実行します。なので、まず初めにノートブックを作成します。

  1. 上のサイドメニューから作成 > ノートブックを選択します。
  2. 作成するノートブックの名前を指定し、デフォルト言語はPython、クラスターは上のステップで管理者が作成したクラスターを選択します。これでノートブックの作成とともにノートブックがクラスターにアタッチされます。
  3. 作成をクリックします。
    Screen Shot 2022-06-02 at 17.48.57.png
  4. ノートブックが表示されます。左上でクラスターが選択されていることを確認してください。
    Screen Shot 2022-06-02 at 17.49.15.png

Pythonコードを実行する

  1. 最初から表示されているセルにPythonコードを入力します。

    Python
    print("test")
    

    Screen Shot 2022-06-02 at 17.49.24.png

  2. セルのコマンドを実行します。セル右上に表示されている▶︎をクリックし、セルを実行をクリックします。
    Screen Shot 2022-06-02 at 17.49.30.png

  3. Pythonが実行されました!
    Screen Shot 2022-06-02 at 17.49.46.png

注意
アイドル状態が120分継続すると自動でクラスターは停止する設定になっていますが、クラスターを使用しない場合には手動でクラスターを停止してください。

Databricks 無料トライアル

Databricks 無料トライアル

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0