Microsoft Purview で Azure Databricks に接続して管理する
この記事では、Azure Databricks を登録する方法と、Microsoft Purview で Azure Databricks を認証して操作する方法について説明します。 Microsoft Purview の詳細については、 入門記事を参照してください。
サポートされている機能
メタデータ抽出 | フル スキャン | 増分スキャン | スコープスキャン | 分類 | ラベル付け | アクセス ポリシー | 系統 | データ共有 | ライブ ビュー |
---|---|---|---|---|---|---|---|---|---|
○ | はい | いいえ | はい | いいえ | いいえ | いいえ | はい | いいえ | いいえ |
注:
このコネクタは、Azure Databricks ワークスペーススコープの Hive メタストアからメタデータを取得します。 Azure Databricks Unity Catalog でメタデータをスキャンするには、「Azure Databricks Unity Catalog コネクタ」を参照してください。
Azure Databricks Hive メタストアをスキャンする場合、Microsoft Purview では次の処理がサポートされます。
以下を含む技術的なメタデータの抽出:
- Azure Databricks ワークスペース
- Hive サーバー
- Databases
- 列、外部キー、一意の制約、ストレージの説明を含むテーブル
- 列とストレージの説明を含むビュー
外部テーブルとAzure Data Lake Storage Gen2/Azure Blob 資産 (外部の場所) の間のリレーションシップをフェッチします。
ビュー定義に基づいてテーブルとビューの間の静的系列をフェッチする。
スキャンを設定するときに、Hive メタストア全体をスキャンするか、スキャンのスコープをスキーマのサブセットに設定するかを選択できます。
前に Azure Databricks をスキャンするために使用する場合に備えて、汎用 Hive メタストア コネクタ を使用してスキャンする場合と比較します。
- 直接 HMS アクセスなしで Azure Databricks ワークスペースのスキャンを直接設定できます。 認証には Databricks 個人用アクセス トークンを使用し、クラスターに接続してスキャンを実行します。
- Databricks ワークスペース情報がキャプチャされます。
- テーブルとストレージ資産の間のリレーションシップがキャプチャされます。
既知の制限
オブジェクトがデータ ソースから削除された場合、現在、後続のスキャンでは、Microsoft Purview の対応する資産は自動的に削除されません。
前提条件
アクティブなサブスクリプションを持つ Azure アカウントが必要です。 無料でアカウントを作成します。
アクティブな Microsoft Purview アカウントが必要です。
シークレットにアクセスするためのアクセス許可を Microsoft Purview に付与するには、Azure Key Vaultが必要です。
ソースを登録し、Microsoft Purview ガバナンス ポータルで管理するには、データ ソース管理者とデータ 閲覧者のアクセス許可が必要です。 アクセス許可の詳細については、「 Microsoft Purview でのアクセス制御」を参照してください。
最新の セルフホステッド統合ランタイムを設定します。 詳細については、「 セルフホステッド統合ランタイムの作成と構成」を参照してください。 サポートされている最小限のセルフホステッド Integration Runtime バージョンは 5.20.8227.2 です。
セルフホステッド統合ランタイムがインストールされているマシンに JDK 11 がインストールされていることを確認します。 JDK を新しくインストールして有効にした後、マシンを再起動します。
セルフホステッド統合ランタイムが実行されているコンピューターに、Visual C++ 再頒布可能パッケージ (バージョン Visual Studio 2012 Update 4 以降) がインストールされていることを確認します。 この更新プログラムがインストールされていない場合は、 今すぐダウンロードしてください。
Azure Databricks ワークスペースで、次の手順を実行します。
個人用アクセス トークンを生成し、それをシークレットとして Azure Key Vaultに格納します。
クラスターを作成します。 クラスター ID をメモします。Azure Databricks ワークスペース -> Compute -> クラスター -> タグ -> タグの自動追加 ->
ClusterId
で確認できます。Azure Databricks クラスターに接続するために、ユーザーに次の アクセス許可 があることを確認します。
- 実行中のクラスターに 接続するためのアクセス許可にアタッチできます。
- 接続時に状態が終了した場合にクラスターの起動を自動的にトリガーするアクセス許可を再起動できます。
登録
このセクションでは、 Microsoft Purview ガバナンス ポータルを使用して、Microsoft Purview に Azure Databricks ワークスペースを登録する方法について説明します。
Microsoft Purview アカウントに移動します。
左側のウィンドウで [ データ マップ ] を選択します。
[登録] を選択します。
[ ソースの登録] で、[Azure Databricks>Continue] を選択します。
[ ソースの登録 (Azure Databricks)] 画面で 、次の操作を行います。
[ 名前] に、Microsoft Purview がデータ ソースとして一覧表示する名前を入力します。
Azure サブスクリプションと Databricks ワークスペース名の場合は、ドロップダウンからスキャンするサブスクリプションとワークスペースを選択します。 Databricks ワークスペース URL が自動的に設定されます。
一覧からコレクションを選択します。
[完了] を選択します。
スキャン
Azure Databricks をスキャンして資産を自動的に識別するには、次の手順を使用します。 一般的なスキャンの詳細については、「 Microsoft Purview でのスキャンとインジェスト」を参照してください。
管理センターで、統合ランタイムを選択します。 セルフホステッド統合ランタイムが設定されていることを確認します。 設定されていない場合は、「 セルフホステッド統合ランタイムの作成と管理」の手順を使用します。
[ソース] に移動します。
登録済みの Azure Databricks を選択します。
[ + 新しいスキャン] を選択します。
次のユーザー詳細を入力します。
[名前]: スキャンの名前を入力します。
抽出方法:Hive メタストアまたはUnity カタログからメタデータを抽出することを示します。 [ Hive メタストア] を選択します。
統合ランタイム経由で接続する: 構成済みのセルフホステッド統合ランタイムを選択します。
資格情報: データ ソースに接続する資格情報を選択します。 次のことを確認してください。
- 資格情報の作成時 に [アクセス トークン認証 ] を選択します。
- [ 前提条件] で作成した個人用アクセス トークンのシークレット名を適切なボックスに指定します。
詳細については、「 Microsoft Purview でのソース認証の資格情報」を参照してください。
クラスター ID: Microsoft Purview がスキャンに接続して電源を供給するクラスター ID を指定します。 Azure Databricks ワークスペース -> Compute -> クラスター -> タグ -> タグの自動追加 ->
ClusterId
で確認できます。マウント ポイント: 外部ストレージを Databricks に手動でマウントする場合は、マウント ポイントと Azure Storage ソースの場所の文字列を指定します。
/mnt/<path>=abfss://<container>@<adls_gen2_storage_account>.dfs.core.windows.net/;/mnt/<path>=wasbs://<container>@<blob_storage_account>.blob.core.windows.net
形式を使用します。 これは、Microsoft Purview のテーブルと対応するストレージ資産間のリレーションシップをキャプチャするために使用されます。 この設定は省略可能です。指定されていない場合、そのような関係は取得されません。ノートブックで次の Python コマンドを実行すると、Databricks ワークスペース内のマウント ポイントの一覧を取得できます。
dbutils.fs.mounts()
次のようなすべてのマウント ポイントが出力されます。
[MountInfo(mountPoint='/databricks-datasets', source='databricks-datasets', encryptionType=''), MountInfo(mountPoint='/mnt/ADLS2', source='abfss://samplelocation1@azurestorage1.dfs.core.windows.net/', encryptionType=''), MountInfo(mountPoint='/databricks/mlflow-tracking', source='databricks/mlflow-tracking', encryptionType=''), MountInfo(mountPoint='/mnt/Blob', source='wasbs://samplelocation2@azurestorage2.blob.core.windows.net', encryptionType=''), MountInfo(mountPoint='/databricks-results', source='databricks-results', encryptionType=''), MountInfo(mountPoint='/databricks/mlflow-registry', source='databricks/mlflow-registry', encryptionType=''), MountInfo(mountPoint='/', source='DatabricksRoot', encryptionType='')]
この例では、マウント ポイントとして次を指定します。
/mnt/ADLS2=abfss://samplelocation1@azurestorage1.dfs.core.windows.net/;/mnt/Blob=wasbs://samplelocation2@azurestorage2.blob.core.windows.net
スキーマ: インポートするスキーマのサブセットを、セミコロンで区切られたスキーマの一覧として表します。 たとえば、「
schema1;schema2
」のように入力します。 そのリストが空の場合、すべてのユーザー スキーマがインポートされます。 既定では、すべてのシステム スキーマとオブジェクトは無視されます。許容されるスキーマ名パターンは、静的名またはワイルドカード % を含めることができます。 例:
A%;%B;%C%;D
- A または から始める
- B または で終わる
- C または を含む
- 等しい D
NOT 文字と特殊文字の使用は許可されません。
注:
このスキーマ フィルターは、セルフホステッド Integration Runtime バージョン 5.32.8597.1 以降でサポートされています。
使用可能な最大メモリ: スキャン プロセスで使用するために、お客様のコンピューターで使用可能な最大メモリ (ギガバイト単位)。 この値は、スキャンする Azure Databricks のサイズによって異なります。
注:
経験則として、1000 テーブルごとに 1 GB のメモリを指定してください。
[続行] を選択します。
[ スキャン トリガー] で、スケジュールを設定するか、スキャンを 1 回実行するかを選択します。
スキャンを確認し、[ 保存して実行] を選択します。
スキャンが正常に完了したら、 Azure Databricks 資産を参照して検索する方法を参照してください。
スキャンとスキャンの実行を表示する
既存のスキャンを表示するには:
- Microsoft Purview ポータルに移動します。 左側のウィンドウで、[ データ マップ] を選択します。
- データ ソースを選択します。 [最近のスキャン] で、そのデータ ソースの既存の スキャンの一覧を表示したり、[ スキャン ] タブですべてのスキャンを表示したりできます。
- 表示する結果を含むスキャンを選択します。 このウィンドウには、以前のすべてのスキャン実行と、各スキャン実行の状態とメトリックが表示されます。
- 実行 ID を選択して、スキャン実行の詳細をチェックします。
スキャンを管理する
スキャンを編集、取り消し、または削除するには:
Microsoft Purview ポータルに移動します。 左側のウィンドウで、[ データ マップ] を選択します。
データ ソースを選択します。 [最近のスキャン] で、そのデータ ソースの既存の スキャンの一覧を表示したり、[ スキャン ] タブですべてのスキャンを表示したりできます。
管理するスキャンを選択します。 次のことを実行できます。
- [スキャンの編集] を選択して スキャンを編集します。
- [スキャンの実行の取り消し] を選択して、進行中 のスキャンを取り消します。
- [スキャンの削除] を選択して スキャンを削除します。
注:
- スキャンを削除しても、以前のスキャンから作成されたカタログ資産は削除されません。
資産の参照と検索
Azure Databricks をスキャンした後、統合カタログ参照するか、統合カタログを検索して資産の詳細を表示できます。
Databricks ワークスペース資産から、関連付けられている Hive メタストアとテーブル/ビューを見つけることができます。逆の処理も適用されます。
系統
サポートされている Azure Databricks シナリオのサポート されている機能 に関するセクションを参照してください。 系列全般の詳細については、「データ系列と系列ユーザー ガイド」を参照してください。
Hive テーブル/ビューアセット -> 系列タブに移動すると、該当する場合に資産の関係を確認できます。 テーブルと外部ストレージ資産の関係については、Hive テーブル資産とストレージ資産が相互に影響を与えるので、双方向に直接接続されていることがわかります。 create table ステートメントでマウント ポイントを使用する場合は、そのようなリレーションシップを抽出するために 、スキャン設定 でマウント ポイント情報を指定する必要があります。
次の手順
ソースを登録したので、次のガイドを使用して、Microsoft Purview とデータの詳細を確認します。