メタデータ収集に Open Data を使用するには、まずプロジェクトに Open Data パッケージをインストールする必要があります。このトピックでは、インストールと検証のプロセスについて説明します。
DataWorks は、直感的で効率的なメタデータ管理のための可視化をサポートする新しい Open Data 機能をリリースしました。詳細については、「Open Data の管理」をご参照ください。
推奨事項
DataWorks の Open Data 機能は、初期の招待制の段階から、安定した一般提供 (GA) リリースに移行しました。GA バージョンでは、メタデータの閲覧と管理を容易にするための可視化機能が提供されています。このドキュメントは廃止される予定です。GA バージョンの使用を推奨します。手順については、「Open Data の管理」をご参照ください。
制限事項
-
Open Data 機能は、DataWorks Enterprise Edition でのみ利用可能です。この招待制バージョンでは、コマンドラインからのみ Open Data パッケージをインストールできます。
-
Open Data は、MaxCompute コンピュートエンジンでのみサポートされています。
Open Data パッケージのインストール
-
権限付与の取得
Open Data パッケージをインストールする前に、権限付与を取得する必要があります。チケットを送信して、プロジェクト情報を DataWorks のテクニカルサポートに提供してください。DataWorks のテクニカルサポートがプロジェクトを承認した後、パッケージをインストールしてメタデータを収集できます。
説明チケットを送信する際は、Alibaba Cloud アカウント ID、ワークスペース名、ワークスペース ID、およびワークスペースが存在するリージョンを提供してください。
権限付与のため、プロジェクトが以下の要件を満たすことを推奨します:
-
プロジェクトに堅牢な権限管理システムがあり、メタデータの不正な共有によるデータ漏えいを防止できること。
-
プロジェクトが社内またはチーム内で共有可能であること。これにより、DataWorks のメタデータを異なるデータ開発チーム間で共有できます。
-
-
プロジェクトオーナーとして Open Data パッケージをインストール
この例では、DataStudio にパッケージをインストールする方法を示します。権限を付与されたプロジェクトの DataStudio ページにログインし、MaxCompute ノードでインストールコマンドを実行します。
説明-
権限を付与されたプロジェクトが、開発環境と本番環境が分離されている標準モードである場合、両方の環境に DataWorks Open Data パッケージをインストールする必要があります。
-
インストールコマンドでは、インストール先のリージョンに基づいて u_meta プロジェクト名と Open Data パッケージ名を置き換えてください。以下のコマンドは、中国 (杭州) リージョンに Open Data パッケージをインストールする方法を示しています。
-- 開発環境 (work_test_2_dev) に中国 (杭州) リージョン用の Open Data パッケージをインストールします。 INSTALL PACKAGE u_meta_hangzhou.systables; -- 本番環境 (work_test_2) に中国 (杭州) リージョン用の Open Data パッケージをインストールします。 USE work_test_2; INSTALL PACKAGE u_meta_hangzhou.systables;パラメーター:
-
u_meta_hangzhou:中国 (杭州) リージョンの Open Data パッケージ用の u_meta プロジェクトの名前です。
-
systables:Open Data パッケージの名前です。インストール後、そのテーブルとビューを使用して、パーティションやテーブルリネージのメタデータなど、さまざまな種類のメタデータを収集できます。
Alibaba Cloud は、複数のリージョン向けに Open Data パッケージを提供しています。u_meta プロジェクト名はリージョンによって異なります。各リージョンの u_meta プロジェクト名の一覧については、「付録 2:利用可能なプロジェクトの一覧」をご参照ください。Open Data を使用するリージョンに対応する正しい Open Data パッケージをインストールする必要があります。u_meta プロジェクト名を、ご利用のリージョンに対応するものに置き換えてください。
-
-
インストールの検証
インストール済みパッケージのリストで、[PackageName] と [SourceProject] が前のステップのものと一致するパッケージを見つけます。[Status] が [OK] であれば、Open Data パッケージは正常にインストールされています。
-- u_meta_hangzhou.systables がプロジェクトのインストール済みパッケージのリストに含まれているか確認します。 SHOW PACKAGES; -- 出力例 +-------------+-----------------+--------------------------+--------+ | PackageName | SourceProject | InstallTime | Status | +-------------+-----------------+--------------------------+--------+ | systables | u_meta_hangzhou | 2020-11-26T15:25:22+0800 | OK | +-------------+-----------------+--------------------------+--------+
Open Data のテーブルとビューの表示
Open Data を使用する際は、テーブルまたはビューの完全な名前を入力する必要があります。名前は Open Data パッケージのバージョンによって異なる場合があります。
次のコマンドを実行して、Open Data インストールに含まれるテーブルとビュー、およびそれらの名前と権限を一覧表示します。
DESCRIBE PACKAGE u_meta_hangzhou.systables;
次の例は、DataStudio でクエリコマンドを実行する方法と、その結果の出力を示しています。
Open Data のテーブルとビューの名前には、機能の反復に伴って変更されるバージョン情報が含まれています。使用するバージョン番号は、決定的なソースである `systables` パッケージ内のものに基づいている必要があります。たとえば、ビュー名 raw_v_tenant_user_v1_1 の v1_1 はバージョン番号です。
-- u_meta_hangzhou.systables パッケージに含まれるテーブルまたはビューを表示します。
DESCRIBE PACKAGE u_meta_hangzhou.systables;
-- 出力例
CreateTime: 2020-11-18T20:17:24+0800
PackageName: systables
SourceProject: u_meta_hangzhou
Object List
+------------+-----------------------------------+------------------+
| ObjectType | ObjectName | ObjectPrivileges |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_biz_table_wiki_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_column_usage_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_column_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_database_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_partition_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_detail_log_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_join_map_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_lineage_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_output_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_usage_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_table_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_meta_view_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_schedule_di_resgroup_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_schedule_node_relation_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_schedule_node_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_schedule_task_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_tenant_res_group_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_tenant_user_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_tenant_workspace_user_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | raw_v_tenant_workspace_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | rpt_v_meta_ind_table_core_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
| TABLE | rpt_v_meta_ind_table_extra_v1_1 | Describe,Select |
+------------+-----------------------------------+------------------+
スキーマとフィールドの説明の表示
次のコマンドを実行して、特定のテーブルまたはビューのスキーマとフィールドの説明を表示します。
DESCRIBE u_meta_hangzhou.rpt_v_meta_ind_table_core_v1_1;
ここで、rpt_v_meta_ind_table_core_v1_0 は表示したいテーブルまたはビューの名前です。テーブルまたはビューの実際の名前は、「Open Data のテーブルとビューの表示」から取得できます。
DataWorks は、詳細データ、メトリックデータ、ディメンションデータなど、複数のディメンションにわたるデータを提供します。ニーズに応じて、データを selectively 取得し、DataWorks プロジェクトに保存できます。このデータは、データガバナンスや O&M のための既存データとして使用でき、不要なストレージ使用量を回避できます。
次の例は、DataStudio を使用して rpt_v_meta_ind_table_core ビューを表示する方法と、そのコマンドと出力を示しています。
-- rpt_v_meta_ind_table_core ビューのフィールドの説明を表示します。
DESCRIBE u_meta_hangzhou.rpt_v_meta_ind_table_core_v1_1;
-- 出力例
+------------------------------------------------------------------------------------+
| Owner: ALIYUN$dataworks-datagovernance | Project: u_meta_hangzhou |
| TableComment: メタデータモジュール内のテーブルのコアメトリック |
+------------------------------------------------------------------------------------+
| CreateTime: 2020-12-07 20:02:53 |
| LastDDLTime: 2020-12-07 20:02:53 |
| LastModifiedTime: 2020-12-07 20:02:53 |
+------------------------------------------------------------------------------------+
| VirtualView : YES | ViewText: CREATE OR REPLACE VIEW rpt_v_meta_ind_table_core_v1_1 (@param_biz_date STRING)
RETURNS @ret_result TABLE (
tenant_id BIGINT COMMENT 'ディメンション:DataWorks テナント ID',
project_id BIGINT COMMENT 'ディメンション:DataWorks プロジェクト (ワークスペース) ID',
catalog_name STRING COMMENT 'ディメンション:カタログ。MaxCompute プロジェクトの場合、値は odps です。',
database_name STRING COMMENT 'ディメンション:データベースまたは MaxCompute プロジェクト名',
table_name STRING COMMENT 'ディメンション:テーブル名',
table_uuid STRING COMMENT 'ディメンション:一意のテーブル識別子',
owner_yun_acct STRING COMMENT 'ディメンション:テーブルオーナーの Alibaba Cloud アカウント',
dim_life_cycle BIGINT COMMENT 'ディメンション:ライフサイクル期間。0 はライフサイクルが設定されていないことを示し、その他の値は特定の期間を表します。',
is_partition_table BOOLEAN COMMENT 'ディメンション:テーブルがパーティション化されているかどうかを指定します。true はパーティションテーブルを示します。',
entity_type BIGINT COMMENT 'ディメンション:エンティティタイプ。0:テーブル、1:ビュー。',
categories STRING COMMENT 'ディメンション:カテゴリ情報',
last_access_time BIGINT COMMENT 'ディメンション:テーブルの最終アクセス時間 (10 桁の UNIX タイムスタンプ)。',
`size` BIGINT COMMENT 'テーブルサイズ。データの論理ストレージサイズを指します。ビューの場合、値は NULL です。',
column_count BIGINT COMMENT 'パーティション列を含む列数。',
partition_count BIGINT COMMENT 'パーティション数。非パーティション化テーブルの場合、この値は NULL です。',
detail_view_count BIGINT COMMENT 'UI でテーブル詳細が表示された回数。',
favorite_count BIGINT COMMENT 'テーブルがお気に入りに追加された回数。',
biz_date STRING COMMENT 'データの業務日付。'
) COMMENT 'メタデータモジュール内のテーブルのコアメトリック' AS
SELECT * FROM u_meta_hangzhou.rpt_v_meta_ind_table_core_proxy(@param_biz_date) |
+------------------------------------------------------------------------------------+
| Native Columns: |
+------------------------------------------------------------------------------------+
| Field | Type | Label | Comment |
+------------------------------------------------------------------------------------+
| tenant_id | bigint | | ディメンション:DataWorks テナント ID |
| project_id | bigint | | ディメンション:DataWorks プロジェクト (ワークスペース) ID |
| catalog_name | string | | ディメンション:カタログ。MaxCompute プロジェクトの場合、値は odps です。 |
| database_name | string | | ディメンション:データベースまたは MaxCompute プロジェクト名 |
| table_name | string | | ディメンション:テーブル名 |
| table_uuid | string | | ディメンション:一意のテーブル識別子 |
| owner_yun_acct | string | | ディメンション:テーブルオーナーの Alibaba Cloud アカウント |
| dim_life_cycle | bigint | | ディメンション:ライフサイクル期間。0 はライフサイクルが設定されていないことを示し、その他の値は特定の期間を表します。 |
| is_partition_table | boolean | | ディメンション:テーブルがパーティション化されているかどうかを指定します。true はパーティションテーブルを示します。 |
| entity_type | bigint | | ディメンション:エンティティタイプ。0:テーブル、1:ビュー。 |
| categories | string | | ディメンション:カテゴリ情報 |
| last_access_time | bigint | | ディメンション:テーブルの最終アクセス時間 (10 桁の UNIX タイムスタンプ)。 |
| size | bigint | | テーブルサイズ。データの論理ストレージサイズを指します。ビューの場合、値は NULL です。 |
| column_count | bigint | | パーティション列を含む列数。 |
| partition_count | bigint | | パーティション数。非パーティション化テーブルの場合、この値は NULL です。 |
| detail_view_count | bigint | | UI でテーブル詳細が表示された回数。 |
| favorite_count | bigint | | テーブルがお気に入りに追加された回数。 |
| biz_date | string | | データの業務日付。 |
+------------------------------------------------------------------------------------+
テーブルとビューのスキーマの詳細については、「付録 1:メタデータテーブルのリストと構造の詳細」をご参照ください。
Open Data パッケージのアンインストール
この例では、DataStudio で Open Data パッケージをアンインストールする方法を示します。
権限を付与されたプロジェクトが、開発環境と本番環境が分離されている標準モードである場合、両方の環境から DataWorks Open Data パッケージをアンインストールする必要があります。
-- 開発プロジェクト (work_test_2_dev) からアンインストールします。
UNINSTALL PACKAGE u_meta_hangzhou.systables;
-- 本番プロジェクト (work_test_2) からアンインストールします。
USE work_test_2;
UNINSTALL PACKAGE u_meta_hangzhou.systables;
次のステップ
Open Data パッケージをインストールした後、Open Data を使用してメタデータを収集し、データガバナンスや O&M をサポートできます。Open Data の使用方法の詳細については、「Open Data の使用」をご参照ください。