CREATE_TAGS_FROM_COLLIBRA¶
説明
ストアドプロシージャ CREATE_TAGS_FROM_COLLIBRA は、ビューと列に対する属性とタグの割り当てに関する定義情報を抽出するために Collibra インスタンスに接続します。
このプロシージャを使用して、Collibra のデータを読み込むことができます。また、Virtual DataPort で属性とタグを作成して割り当てることもできます。
注釈
この機能は、 エンタープライズプラス サブスクリプションバンドルでのみ使用可能です。所有するバンドルを見つけるには、Design Studio または Administration Tool の [About] ダイアログを開きます。この詳細については、「 Denodo Platform - サブスクリプションバンドル 」のセクションを参照してください。
構文
CREATE_TAGS_FROM_COLLIBRA (
input_scope : text
, input_action : text
, input_database : text
, input_include_tags : boolean
, input_tag_names : array
, input_include_attributes : boolean
, input_attribute_names : array
, input_search_since_last_execution_time : boolean
, input_search_since : timestamp
, input_unassign_tags_mode : text
, input_unused_collibra_tags_mode : text
, input_attribute_name_as_prefix : boolean
)
input_scope: Virtual DataPort がメタデータを検索する Collibra スコープの名前。このスコープでアクセスできるコミュニティとドメインにアクセスします (必須)。input_action: プロシージャが実行する必要がある動作を示します。以下の 2 つの値を指定できます。READ: プロシージャは Collibra にアクセスして取得した情報を返します (デフォルト)。CREATE: プロシージャは Collibra にアクセスして取得した情報を返し、さらにその情報を Virtual DataPort に保存します。
input_database: タグ操作情報がインポートされる Virtual DataPort データベースの名前。このパラメータを使用するのは、Collibra から取得したデータベースを上書きする場合のみにする必要があります。input_include_tags: Collibra タグを取得するかどうかを示します(デフォルト値:false)。input_tag_names: 取得する Collibra タグの名前。定義されていない場合、アクセス可能なエレメントで見つかったタグが取得されます。input_include_attributes: Collibra 属性を取得するかどうかを示します(デフォルト値:false)。input_attribute_names: 取得する Collibra 属性の名前。Security Classification、Personally Identifiable Informationなど。input_include_attributes=trueの場合は必須です。input_search_since_last_execution_time: Virtual DataPort が、前回の実行以降またはinput_search_sinceで示される時点以降の増分検索を実行する必要があるかどうかを示します。input_include_tags=trueの場合、このオプションは無視されます。input_search_since: Collibra メタデータの検索を実行する必要がある時点。input_search_since_last_execution_time=trueであり、このパラメータに値が指定されていない場合、検索には前回このプロシージャが実行された時点が使用されます (推奨される方法)。input_unassign_tags_mode: Virtual DataPort が、Collibra メタデータで見つかったデータベースのビューと列に割り当てられている既存のタグに対して実行する動作を示します。以下の 2 つの値を指定できます。ALL: ビューまたは列から、既存のすべてのタグの割り当てが解除されます。これは、タグ割り当てが Collibra でのみ実行されている場合に使用するオプションです。ONLY_COLLIBRA: ビューまたは列から、外部システムからインポートされた既存のタグ (このプロシージャを使用してインポートされたタグなど) の割り当てが解除されます。このオプションは、タグを手動でビューまたは列に定義するのに役立ちますが、Collibra から情報をインポートすることも可能です。(デフォルト)。
input_unused_collibra_tags_mode: Virtual DataPort が、Collibra からインポートしたタグのうち、ビューまたは列でもはや使用されていないタグに対して実行する動作を示します。以下に示す値を指定できます。RETAIN: タグは Virtual DataPort から削除されません。(デフォルト)。DROP_UNASSIGNED: ビューまたは列でもはや使用されていないタグは Virtual DataPort から削除されます。他のエレメント (グローバルセキュリティポリシー など) で使用されているタグは存続する可能性があります。その場合、このオプションではタグは削除されません。DROP_UNASSIGNED_CASCADE: ビューまたは列でもはや使用されていないタグは Virtual DataPort から削除され、他のエレメント (グローバルセキュリティポリシー など) が削除されたタグを使用していた場合はそれらのエレメントも削除されます。
input_attribute_name_as_prefix: Collibra 属性に基づいて Virtual DataPort で作成されたタグにプレフィックスとして属性名を付加するかどうかを示します。Virtual DataPort で作成されたタグの由来を特定する場合に役立ちます。たとえば、Collibra で、ある列の
Security Classification属性の値がConfidentialであるとします。このプロシージャが Virtual DataPort で作成するタグの名前は、このパラメータがtrueの場合はSecurity Classification > Confidential、falseの場合はConfidentialになります (デフォルト値はtrue)。
出力スキーマには以下のフィールドがあります。
execution_time: プロシージャが Collibra インスタンスにアクセスした日時。input_search_sinceパラメータと一緒に使用して、増分検索で使用できます。element_type: 現在のタプルで返されるエレメントのタイプ。database、tag、viewなど。database_name: 現在のエレメントがdatabaseの場合はそのデータベースの名前、それ以外の場合は現在のエレメントを含むデータベースの名前。view_name: 現在のエレメントがビューまたは列の場合はビューの名前。column_name: 現在のエレメントが列の場合は列の名前。tag: 現在のエレメントがタグの場合はタグの名前。tag_description: 現在のエレメントがタグの場合はタグの説明。assignment_status: 現在のタプルがタグ割り当てを表す場合に、タグが正しく割り当てられているかどうかを示します。
必要な権限
このプロシージャを呼び出すことができるのは管理者のみです。
構成
現在は、Collibra へのアクセスを構成するためのダイアログは存在しません。構成するには、プロパティを使用する必要があります。
使用可能な構成プロパティを以下に示します。
com.denodo.vdb.contrib.ext.datagov.collibra.connection.url: 接続 URL。com.denodo.vdb.contrib.ext.datagov.collibra.connection.user: 認証するユーザー名。com.denodo.vdb.contrib.ext.datagov.collibra.connection.password.secret: 認証するユーザーのパスワード。暗号化されていない値または暗号化されている値を受け取ります。後者の場合、値に接頭辞encrypted:を付加する必要があります。以下に例を示します。
-- Clear SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.password.secret' = 'my_secret_password'; -- Encrypted SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.password.secret' = 'encrypted:<encrypted_value>';
パスワードを暗号化するには、
ENCRYPT_PASSWORDステートメントを実行します。以下に例を示します。ENCRYPT_PASSWORD 'my_secret_password';
com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyEnabled: プロキシを使用して Collibra にアクセスします。指定できる値はON、OFF、AUTOMATIC、またはDEFAULT(HTTP プロキシのデフォルト構成 を使用) です。com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyHost: プロキシとして使用するホストの名前。com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyPort: プロキシとして使用するホストに接続するためのポート番号。com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyUser: プロキシに接続するためのユーザー名。com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyPassword.secret: プロキシに接続するためのパスワード。値はユーザーパスワードと同じ形式に従います。値は、暗号化されていないか、または暗号化されて接頭辞encrypted:が付加されています。com.denodo.vdb.contrib.ext.datagov.collibra.connection.proxyPacUri:AUTOMATICステータスが設定されている場合に使用する PAC URI。com.denodo.vdb.contrib.ext.datagov.collibra.connection.attributes: アクセスする Collibra 属性名のリスト。プロシージャを呼び出す際にそれらの属性を指定したくない場合に使用します。値は、有効な JSON 文字列リストである必要があります。この値はinput_attribute_namesパラメータが指定されていない場合に のみ 使用されます。以下に例を示します。
SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.attributes'='["Security Classification", "Personally Identifiable Information"]';
例
まず、Collibra へのアクセスを構成する必要があります。たとえば、資格情報が以下のとおりだとします。
URL: https://acme.collibra.comUser: cl-userPassword: cl-password
構成プロパティを設定する必要があります。パスワード値を保護するために暗号化します。
ENCRYPT_PASSWORD 'cl-password';
返された暗号値をコピーします。たとえば、それが``uq2Ldx0oXTIscUU/KmiVtZfFaGs`` だとします。
以下のコマンドを実行します。
SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.url'='https://acme.collibra.com';
SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.user'='cl-user';
SET 'com.denodo.vdb.contrib.ext.datagov.collibra.connection.password.secret'='encrypted:uq2Ldx0oXTIscUU/KmiVtZfFaGs';
以下の例では、Virtual DataPort データベースを Collibra インスタンスに読み込み済みであると仮定しています。これは、たとえば、 Denodo to Collibra Integration を使用して実行できます。
以下の例では、 customers と employees の 2 つのビューを含むメタデータを Collibra にアップロードし、それぞれに以下のタグと属性を追加しています。
customersビュー:タグ
customers_dataとsensitiveを追加列:
phone: タグsensitive_valueを追加し、Security Classificationの値としてRestrictedを設定first_name:Personally Identifiable Informationとしてマークlast_name:Personally Identifiable Informationとしてマーク
employeesビュー:タグ
sensitiveとemployees_dataを追加列:
first_name:Personally Identifiable Informationとしてマークlast_name:Personally Identifiable Informationとしてマークpassword: タグpasswordを追加picture:Personally Identifiable Informationとしてマーク、Security Classificationの値としてHighly Confidentialを設定salary:Security Classificationの値としてRestrictedを設定
また、Virtual DataPort メタデータは、スコープ Denodo to Collibra Integration でアクセスできる Collibra ドメインにアップロード済みであるとします。
例 1
たとえば、このプロシージャを使用して、タグと属性についてどんな情報が Collibra に存在するかを確認します。また、属性の Security Classification と Personally Identifiable Information に設定されているタグと値に関心があります。
以下を実行して、データを取得します。
SELECT element_type, database_name, view_name, column_name, tag, tag_description, assignment_status
FROM CREATE_TAGS_FROM_COLLIBRA()
WHERE input_scope = 'Denodo to Collibra Integration'
AND input_attribute_names = {row('Security Classification'),
row('Personally Identifiable Information')}
AND input_include_tags = true
AND input_include_attributes = true
AND input_action = 'READ'
AND input_attribute_name_as_prefix = true;
以下の図は、前のクエリの実行結果のスナップショットです。
CREATE_TAGS_FROM_COLLIBRA プロシージャの実行結果の例¶
結果の説明
element_type 列に応じて、以下のことを意味します。
database: Collibra インスタンスに存在するデータベース。
CREATE実行時に変更の影響を受けます。tag: Collibra でタグの説明を取得した場合、このタプルにその値が含まれています。
view: ビューへの割り当て。列
tagにタグ名が含まれています。タグ名が見つからない場合は、Collibra ではこのビューにタグまたは属性が存在しないことを意味します。この状況は、増分検索を実行する場合に発生する可能性があります。column: 列への割り当て。列
tagにタグ名が含まれています。
例 2
この例では、Collibra のタグと属性を Virtual DataPort メタデータに対して適用します。それには、前出のクエリの input_action を CREATE に変更して実行する必要があります。
SELECT element_type, database_name, view_name, column_name, tag, tag_description, assignment_status
FROM CREATE_TAGS_FROM_COLLIBRA()
WHERE input_scope = 'Denodo to Collibra Integration'
AND input_attribute_names = {row('Security Classification'),
row('Personally Identifiable Information')}
AND input_include_tags = true
AND input_include_attributes = true
AND input_action = 'CREATE'
AND input_attribute_name_as_prefix = true;
ここで Design Studio または Administration Tool で Refresh を実行すると、Virtual DataPort で作成され、割り当てられたタグを確認できます。
プロシージャ CREATE_TAGS_FROM_COLLIBRA を使用してインポートされたタグ¶
さらに、ビューの 1 つが以下のようになります。
employees ビューとインポートされたタグ¶
例 3
この例では、Collibra 属性に関する情報のみ取得し、Collibra タグは取得しません。パラメータ input_include_tags には値 false を使用する必要があります。
SELECT element_type, database_name, view_name, column_name, tag, tag_description, assignment_status
FROM CREATE_TAGS_FROM_COLLIBRA()
WHERE input_scope = 'Denodo to Collibra Integration'
AND input_attribute_names = {row('Security Classification'),
row('Personally Identifiable Information')}
AND input_include_tags = false
AND input_include_attributes = true
AND input_action = 'CREATE'
AND input_attribute_name_as_prefix = true
クライアントツールに対して Refresh を実行すると、ビューが開いて、Collibra 属性のみが割り当てられていることを確認できます。たとえば、 employees ビューにタグ employees_data 、 sensitive 、および password は存在していません。
employees ビューとインポートされたタグ¶
Collibra のタグにはアクセスしていないので、 input_search_since_last_execution_time パラメータを試すことができます。このパラメータに true を指定して実行した場合、結果は返されません。これは、前回のインポートプロセス以降、Collibra が変更されていないからです。
Collibra で、ビュー employees の列 first_name から Personally Identifiable Information を削除します。このプロシージャを増分実行した場合、ビュー employees に対するこのタグ操作情報 のみ が取得されます。なぜなら、前回のインポート以降の一意な変更はそれだけだからです。
SELECT element_type, database_name, view_name, column_name, tag, tag_description, assignment_status
FROM CREATE_TAGS_FROM_COLLIBRA()
WHERE input_scope = 'Denodo to Collibra Integration'
AND input_attribute_names = {row('Security Classification'),
row('Personally Identifiable Information')}
AND input_include_tags = false
AND input_include_attributes = true
AND input_action = 'CREATE'
AND input_attribute_name_as_prefix = true
AND input_search_since_last_execution_time = true;
以下の図は、前のクエリの実行結果のスナップショットです。
CREATE_TAGS_FROM_COLLIBRA プロシージャの増分実行結果の例¶
first_name にはもはやタグがなく、他のビューは変更されていません。
