[ベータ版]{class="badge informative"} [Ultimate]{class="badge positive"}

Azure Databricks

AVAILABILITY
  • Real-Time CDP Ultimateを購入したユーザーは、ソースカタログで Azure Databricks ソースを利用できます。

  • Azure Databricks ソースはベータ版です。ベータラベル付きソースの使用について詳しくは、ソースの概要の 利用条件を参照してください。

Azure Databricks は、データ分析、機械学習、AI 用に設計されたクラウドベースのプラットフォームです。 Databricks を使用して Azure と統合し、データソリューションを大規模に構築、デプロイ、管理するための総合的な環境を提供できます。

Databricks ソースを使用してアカウントを接続し、Databricks データをAdobe Experience Platformに取り込みます。

前提条件

Databricks アカウントをExperience Platformに正常に接続するには、前提条件の手順を完了してください。

コンテナ資格情報の取得

Experience Platform Azure Blob Storage の資格情報を取得し、Databricks アカウントが後でアクセスできるようにします。

資格情報を取得するには、/credentials API の Connectors エンドポイントに対してGET リクエストを実行します。

API 形式

GET /data/foundation/connectors/landingzone/credentials?type=dlz_databricks_source

リクエスト

次のリクエストは、Experience Platform Azure Blob Storage の資格情報を取得します。

リクエストの例を表示
code language-shell
curl -X GET \
  'https://platform.adobe.io/data/foundation/connectors/landingzone/credentials?type=dlz_databricks_source' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \

応答

正常な応答では、後で containerName の設定で使用するための資格情報(SASTokenstorageAccountName、Apache Spark) Databricks 提供されます。

応答の例を表示
code language-json
{
    "containerName": "dlz-databricks-container",
    "SASToken": "sv=2020-10-02&si=dlz-b1f4060b-6bbd-4043-9bd9-a5f5be72de30&sr=c&sp=racwdlm&sig=zVQfmuElZJzOKkUk8z5lChrJ3YQUE2h6EShDZOsVeMc%3D",
    "storageAccountName": "sndbxdtlndga8m7ajbvgc64k",
    "SASUri": "https://sndbxdtlndga8m7ajbvgc64k.blob.core.windows.net/dlz-databricks-container?sv=2020-10-02&si=dlz-b1f4060b-6bbd-4043-9bd9-a5f5be72de30&sr=c&sp=racwdlm&sig=zVQfmuElZJzOKkUk8z5lChrJ3YQUE2h6EShDZOsVeMc%3D",
    "expiryDate": "2025-07-05"
}
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
プロパティ 説明
containerName Azure Blob Storage コンテナの名前。 この値は、後で Apache Spark の Databricks 設定を完了する際に使用します。
SASToken Azure Blob Storage ーザーの共有アクセス署名トークン。 この文字列には、リクエストの認証に必要なすべての情報が含まれます。
storageAccountName ストレージアカウントの名前。
SASUri Azure Blob Storage ーザーの共有アクセス署名 URI。 この文字列は、認証対象の Azure Blob Storage への URI とそれに対応する SAS トークンの組み合わせです。
expiryDate SAS トークンの有効期限が切れる日付。 Azure Blob Storage へのデータのアップロードにアプリケーションで引き続き使用するには、有効期限の前にトークンを更新する必要があります。 指定された有効期限の前にトークンを手動で更新しない場合、GET資格情報の呼び出しが実行されると、自動的に更新され、新しいトークンが提供されます。

資格情報を更新します

NOTE
資格情報を更新すると、既存の資格情報は取り消されます。 したがって、ストレージ資格情報を更新する Spark びに、設定を適宜更新する必要があります。 そうしないと、データフローが失敗します。

資格情報を更新するには、POST リクエストを実行し、クエリパラメーターとして action=refresh を含めます。

API 形式

POST /data/foundation/connectors/landingzone/credentials?type=dlz_databricks_source&action=refresh

リクエスト

次のリクエストは、Azure Blob Storage の資格情報を更新します。

リクエストの例を表示
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/connectors/landingzone/credentials?type=dlz_databricks_source&action=refresh' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \

応答

応答が成功すると、新しい資格情報が返されます。

応答の例を表示
code language-json
{
    "containerName": "dlz-databricks-container",
    "SASToken": "sv=2020-10-02&si=dlz-6e17e5d6-de18-4efc-88c7-45f37d242617&sr=c&sp=racwdlm&sig=wvA4K3fcEmqAA%2FPvcMhB%2FA8y8RLwVJ7zhdWbxvT1uFM%3D",
    "storageAccountName": "sndbxdtlndga8m7ajbvgc64k",
    "SASUri": "https://sndbxdtlndga8m7ajbvgc64k.blob.core.windows.net/dlz-databricks-container?sv=2020-10-02&si=dlz-6e17e5d6-de18-4efc-88c7-45f37d242617&sr=c&sp=racwdlm&sig=wvA4K3fcEmqAA%2FPvcMhB%2FA8y8RLwVJ7zhdWbxvT1uFM%3D",
    "expiryDate": "2025-07-20"
}

Azure Blob Storage へのアクセスの設定

IMPORTANT
  • クラスターが終了している場合、サービスはフローの実行中にクラスターを自動的に再起動します。 ただし、接続やデータフローを作成する際には、クラスターがアクティブであることを確認する必要があります。 さらに、データのプレビューや調査などのアクションを実行している場合は、停止したクラスターの自動再起動を促すことができないため、クラスターがアクティブになっている必要があります。

  • Azure コンテナには adobe-managed-staging という名前のフォルダーが含まれています。 データをシームレスに取り込むために、このフォルダーを変更 しないでください

次に、Databricks クラスターがExperience Platform Azure Blob Storage アカウントにアクセスできることを確認する必要があります。 その際に、テーブルのデータを書き込むための暫定的な場所として Azure Blob Storage を使用 delta lake きます。

アクセスを提供するには、Databricks 設定の一部として Apache Spark クラスターに SAS トークンを設定する必要があります。

Databricks インターフェイスで Advanced options を選択し、Spark config 入力ボックスに次の内容を入力します。

fs.azure.sas.{CONTAINER_NAME}.{STORAGE-ACCOUNT}.blob.core.windows.net {SAS-TOKEN}
プロパティ
説明
コンテナ名
コンテナの名前。 この値を取得するには、Azure Blob Storage 資格情報を取得します。
ストレージアカウント
ストレージアカウントの名前。 この値を取得するには、Azure Blob Storage 資格情報を取得します。
SAS トークン
Azure Blob Storage ーザーの共有アクセス署名トークン。 この値を取得するには、Azure Blob Storage 資格情報を取得します。

Azure の Databricks UI。

指定しない場合、フロー実行でのコピーアクティビティは失敗し、次のエラーが返されます。

Unable to access container '{CONTAINER_NAME}' in account '{STORAGE_ACCOUNT}.blob.core.windows.net' using anonymous credentials. No credentials found in the configuration. Public access is not permitted on this storage account.

Databricks をExperience Platformに接続

これで、前提条件の手順が完了したので、次に進み、Databricks アカウントをExperience Platformに接続できます。

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089