メインコンテンツへスキップ

Databricks を接続する

このページでは、DoiT コンソールから Databricks アカウントを接続・管理する方法について説明します。接続後は、DoiT コンソール内で Databricks の利用状況データとコストデータを使用できます。詳しくは、Databricks データの操作をご覧ください。

学習パスを選択

以下のコンテンツを読むか、視覚的な手順を確認できる ▶️ インタラクティブデモ をご覧ください。

開始前の準備

Databricks を DoiT と連携するには、次の条件を満たしている必要があります。

  • Databricks の Account Admin および metastore admin であること。

  • Databricks の warehouse が Unity catalog 用に有効化されていること。

  • Databricks SQL をワークロードとして使用していない場合でも、この連携には SQL warehouse が少なくとも 1 つ必要です。DoiT は、この SQL warehouse をコンピュートエンドポイントとして使用し、システムテーブルを1日に複数回クエリします。

    • すでに warehouse(自動作成される Serverless Starter Warehouse を含む)がある場合は、それを使用できます。

    • まだない場合は、ワークロードの分離性とコストの予測可能性を高めるために、小さな専用の Classic SQL warehouse を作成してください。次の設定を推奨します。

      • Type: Classic
      • Cluster size: 2X-small
      • Auto stop: 5 minutes

必要な権限

Databricks アカウントを DoiT に接続するには、DoiT アカウントに Billing Profiles Admin 権限が必要です。

Databricks アカウントを接続する

1 つ以上の Databricks アカウントを接続できます。接続したい各アカウントについて、接続手順を繰り返してください。

Databricks アカウントの接続を支援するために、DoiT コンソールにはステップバイステップのウィザードが用意されています。ウィザードは次のいずれかの方法で起動できます。

  • ホーム ページに移動し、クラウドを接続 セクションまでスクロールしてから、Databricks アカウントを接続 を選択します。

  • Integrations catalog に移動します。Databricks のインテグレーションカードを探し、最初のアカウントを追加する場合は Connect + を選択します。すでにアカウントがある場合は Manage を選択し、続けて 新しいアカウントを接続 を選択します。

  • Databricks Intelligence ダッシュボードに移動し、Databricks を接続 を選択します。

ウィザードは次の 3 ステップで構成されています。

Databricks onboarding wizard

アカウントを設定する

Databricks と連携する際には、Databricks アカウントの詳細を入力する必要があります。

  1. Databricks Workspace UI に Account Admin としてサインインします。

  2. Account Settings に移動し、Databricks アカウント名をコピーします。

  3. DoiT コンソールに移動し、Account name に Databricks のアカウント名を入力します。

  4. Next を選択して、認証情報を設定します。

    Add your Databricks account

認証情報を設定する

DoiT が Databricks にプログラムからアクセスできるようにするには、Databricks アカウントごとに 1 つの Databricks service principal を作成し、secret を生成する必要があります。認証情報の設定は 4 つのパートで構成されます。

service principal を作成する

DoiT が Databricks 環境にアクセスできるようにするには、専用の Databricks service principal を作成し、secret を生成してください。

  1. Databricks Workspace UI にサインインします。

  2. User Management を選択します。

  3. Service principals タブを選択し、Add service principal を選択します。

  4. service principal の名前を入力し、Add を選択します。service principal が作成されます。

  5. Credentials & secrets タブを選択し、Generate secret を選択します。Generate OAuth secret ペインが表示されます。

  6. Lifetime (days)730 を入力し、Generate を選択します。

    注意

    DoiT と Databricks 間の接続をできるだけ長期間連続して維持できるように、service principal の secret の有効期間は 730 日に設定することを推奨します。ただし、自社のセキュリティポリシーに合わせた期間に設定しても構いません。Databricks アカウントが一度接続されると、DoiT ウィザードから Databricks service principal の secret を更新できます。

  7. secret と Client ID の両方をコピーします。

    注意

    secret は 1 度しか表示されません。ブラウザウィンドウを閉じる前に、必ず secret をコピーしてください。

  8. Done を選択して Generate OAuth secret ペインを閉じます。

service principal に warehouse へのアクセス権を付与する

作成した service principal に、DoiT と連携したい Databricks warehouse へのアクセス権を付与する必要があります。

  1. Databricks Workspace UIWorkspaces を選択します。

  2. DoiT に接続したい workspace を探し、その行の一番右側にあるケバブメニュー () から Update を選択します。

    注意

    workspace では billing と compute の schema が有効化されている必要があります。

  3. Permissions タブを選択し、Add permissions を選択します。Add permissions ペインが表示されます。

  4. User, group, or service principal で、先ほど作成した service principal を検索して選択します。

  5. PermissionUser が選択されていることを確認し、Save を選択します。

  6. Configuration タブを選択し、Open workspace を選択します。

  7. SQL editor を選択します。

  8. 次の内容をコピーし、New query タブに貼り付けます。

    GRANT USE CATALOG ON CATALOG system TO `<client_id>`;

    GRANT USE SCHEMA ON SCHEMA system.access TO `<client_id>`;
    GRANT SELECT ON TABLE system.access.workspaces_latest TO `<client_id>`;

    GRANT USE SCHEMA ON SCHEMA system.billing TO `<client_id>`;
    GRANT SELECT ON TABLE system.billing.usage TO `<client_id>`;
    GRANT SELECT ON TABLE system.billing.list_prices TO `<client_id>`;

    GRANT USE SCHEMA ON SCHEMA system.compute TO `<client_id>`;
    GRANT SELECT ON TABLE system.compute.clusters TO `<client_id>`;
    GRANT SELECT ON TABLE system.compute.node_timeline TO `<client_id>`;
    GRANT SELECT ON TABLE system.compute.warehouses TO `<client_id>`;

    client_id を、先ほど作成した service principal の ID に置き換えてください。

  9. ステートメントを実行します。

  10. DoiT と連携したい各 warehouse について、これらの手順を繰り返してください。

service principal の Databricks SQL access を有効化する

作成した service principal に対して、Databricks SQL access エンタイトルメントを有効化する必要があります。

  1. Databricks Workspace UI で、Databricks workspace 上部バーの自分のユーザー名を選択し、Settings を選択します。

  2. Identity and access タブを選択します。

  3. Service principals から Manage を選択します。

  4. 対象の service principal を選択して詳細ページを開きます。

  5. Configurations タブを選択し、Databricks SQL access エンタイトルメントを選択します。

  6. Update を選択します。DoiT コンソールに戻り、service principal の client ID と secret を DoiT ウィザードに追加します。

service principal の secret を入力する

Databricks service principal を作成して secret を生成したら、それを DoiT ウィザードに追加する必要があります。

  1. DoiT コンソールに移動し、先ほど作成した service principal の client ID と secret を貼り付けます。

  2. Next を選択して、warehouse を追加します。

    Add your Databricks service principal credentials

warehouse を追加する

Databricks warehouse は、Databricks workspace に保存されているデータに対して SQL クエリを実行できる SQL warehouse です。Databricks を連携するには、Databricks アカウントに属する warehouse を少なくとも 1 つ追加する必要があります。

複数の workspace から warehouse を接続することもできますが、これは workspace が複数の AWS リージョンに分散している場合にのみ必要です。その場合、各リージョンに 1 つずつ warehouse を接続すると、より包括的なクラスタ利用状況レポートを提供できます。Databricks の請求データはアカウントレベルであり、すべての workspace を対象とするため、workspace の数に関係なく、請求データ全体をカバーするには 1 つの warehouse だけで十分です。

Databricks アカウントが接続されると、Integrations catalogDatabricks インテグレーションカードから新しい warehouse を追加できます。

  1. Connect warehouse を選択します。

  2. warehouse を追加したいアカウント名を選択します。

  3. warehouse ID を入力します。

    warehouse ID を確認するには、Databricks Workspace UI にサインインし、SQL warehouses に移動して、対象の warehouse 名を選択し、詳細ページを開きます。

  4. warehouse が所属する Databricks workspace の server hostname を入力します。

    server hostname を確認するには、Databricks Workspace UI にサインインし、SQL warehouses に移動して、対象の warehouse 名を選択し、詳細ページを開きます。Connection details タブを選択し、Server hostname から server hostname をコピーします。

    Add your Databricks warehouses

  5. Test connection を選択します。テストが成功したら、Add を選択します。

  6. 追加したい各 warehouse について、これらの手順を繰り返してください。

  7. すべての warehouse を追加したら、Finish を選択します。

注意

初回接続時には、DoiT は追加された各 warehouse について、過去6か月分の履歴の請求データと利用状況データを取り込みます。

Databricks アカウントとの接続が完了すると、Databricks の請求データと利用状況データのインポートが開始されます。この処理には数時間かかる場合があります。各 warehouse のデータが Cloud Analytics およびその他の DoiT 機能で利用可能になると、メールでお知らせします。

Databricks の管理

このページでは、DoiT コンソールでの Databricks アカウントの管理方法について説明します。これには、ウェアハウスの追加や、DoiT プラットフォームから Databricks アカウントを削除する方法が含まれます。

新しい Databricks ウェアハウスを接続する

DoiT と連携された Databricks アカウントに対して、新しい Databricks ウェアハウスを接続できます。

  1. DoiT コンソール にサインインし、上部ナビゲーションのメガメニューから データ取り込みとインテグレーションIntegrations を選択してください。

  2. Databricks インテグレーションカードで 管理 を選択してください。

  3. ウェアハウスを接続 を選択してください。

  4. アカウント名 で、新しいウェアハウスを接続したい Databricks アカウントを選択してください。

  5. ウェアハウス ID に、ウェアハウス ID を入力してください。

    ウェアハウス ID を確認するには、Databricks Workspace UI にサインインし、SQL warehouses に移動し、対象ウェアハウス名を選択して詳細ページを開いてください。

  6. サーバーホスト名 に、そのウェアハウスが属する Databricks ワークスペースのサーバーホスト名を入力してください。

    サーバーホスト名を確認するには、Databricks Workspace UI にサインインし、SQL warehouses に移動し、対象ウェアハウス名を選択して詳細ページを開いてください。Connection details タブを選択し、Server hostname からサーバーホスト名をコピーしてください。

  7. 接続テスト を選択してください。テストが成功したら、追加 を選択してください。

  8. すべてのウェアハウスの追加が完了したら、完了 を選択してください。Databricks ウェアハウスとの接続に成功すると、Databricks の請求および利用状況データの取り込みを開始します。この処理には数時間かかる場合があります。ウェアハウスのデータが Cloud Analytics やその他の DoiT 機能で利用可能になった時点で、メール通知が届きます。

Databricks アカウントの削除

Databricks ウェアハウスを削除することで、DoiT コンソールから Databricks のコストおよび利用状況データを削除できます。

  1. DoiT コンソール にサインインし、上部ナビゲーションのメガメニューから データ取り込みとインテグレーションIntegrations を選択してください。

  2. Databricks インテグレーションカードで 管理 を選択してください。

  3. データを削除したい Databricks アカウントを選択してください。

  4. Databricks アカウントの一番右端にあるケバブメニュー()を選択し、ウェアハウスを削除 を選択してください。

    Delete your Databricks account

  5. 削除 を選択して、DoiT から Databricks アカウントを削除してください。

▶️ インタラクティブデモ

インタラクティブデモを使って、ハンズオンで操作手順を体験してください。

デモが正しく表示されない場合は、ブラウザウィンドウを拡大するか、新しいタブでデモを開いてお試しください。