Data Catalog リソースへの LF タグの割り当て - AWS Lake Formation

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Data Catalog リソースへの LF タグの割り当て

LF タグを Data Catalog リソース (データベース、テーブル、および列) に割り当てて、それらのリソースへのアクセスを制御できます。リソースにアクセスできるのは、一致する LF タグが付与されたプリンシパル (および名前付きリソース方式でアクセス権が付与されたプリンシパル) のみです。

テーブルがデータベースから LF タグを継承する場合、または列がテーブルからLF タグを継承する場合は、LF タグのキーに新しい値を割り当てることで、継承された値を上書きできます。

リソースに割り当てることができる LF タグの最大数は 50 個です。

リソースに割り当てられたタグの管理に関する要件

LF タグを Data Catalog リソースに割り当てるには、以下の要件を満たす必要があります。

  • LF タグに対する Lake Formation の ASSOCIATE 許可がある。

  • IAM lakeformation:AddLFTagsToResource の許可がある。

  • Glue データベースに glue:GetDatabase permission を設定します。

  • リソース所有者 (作成者) である、リソースに対する GRANT オプション付きの Super Lake Formation 許可を持っている、または GRANT オプション付きの以下の許可を持っている。

    • 同じ AWS アカウントのデータベースの場合: DESCRIBECREATE_TABLEALTER、および DROP

    • 外部アカウント内のデータベースの場合: DESCRIBECREATE_TABLE、および ALTER

    • テーブル (および列) の場合: DESCRIBEALTERDROPINSERTSELECT、および DELETE

さらに、LF タグとそれが割り当てられているリソースは、同じ AWS アカウントに存在する必要があります。

データカタログリソースから LF タグを削除するには、これらの要件を満たすとともに、lakeformation:RemoveLFTagsFromResource IAM アクセス許可も持っている必要があります。

LF タグをテーブル列に割り当てる

LF タグをテーブル列に割り当てるには (コンソール)
  1. Lake Formation コンソール (‭‬https://console.aws.amazon.com/lakeformation/‬)を開きます。

    上記の要件を満たすユーザーとしてサインインします。

  2. ナビゲーションペインで [Table] (テーブル) を選択します。

  3. テーブル名を選択します (テーブル名の横にあるオプションボタンではありません)。

  4. テーブルの詳細ページの [Schema] (スキーマ) セクションで、[Edit schema] (スキーマを編集) を選択します。

  5. [Edit Schema] (スキーマの編集) ページで、1 つ、または複数の列を選択してから、[Edit tags] (タグを編集) を選択します。

    注記

    列を追加または削除して、新しいバージョンを保存する予定の場合は、最初にそれらを実行してください。その後、LF タグを編集します。

    [LF タグの編集] ダイアログボックスが表示され、テーブルから継承された LF タグが表示されます。

    この画像は、[Edit LF-Tags] (LF タグの編集) ダイアログウィンドウのスクリーンショットです。ウィンドウの上部には、2 つの継承されたキーが表示されています。最初の継承されたキーには、「level」(レベル) のキーと「director (inherited)」(ディレクター (継承)) の値があります。2 番目の継承されたキーには、「module」(レベル) のキーと「Orders (inherited)」(注文 (継承)) の値があります。これらのフィールドの下に「Assign new LF-Tag」(新しい LF タグを割り当てる) ボタンがあります。その下の右側には、[Cancel] (キャンセル) ボタンと [Save] (保存) ボタンがあります。
  6. (オプション) [Inherited keys] (継承されたキー) フィールドの横にある[Values](値) リストで、継承された値を上書きする値を選択します。

  7. (オプション) [Assign new LF-Tag] (新しい LF タグを割り当てる) を選択します。その後、[Assigned keys] (割り当てられたキー) でキーを選択し、[Values] (値) でキーの値を選択します。

    この画像は、[Edit LF-Tags] (LF タグの編集) ダイアログウィンドウのスクリーンショットです。ウィンドウの上部には、2 つの継承されたキーが表示されています。最初の継承されたキーには、「level」(レベル) のキーと「director (inherited)」(ディレクター (継承)) の値があります。2 番目の継承されたキーには、「module」(レベル) のキーと「Orders (inherited)」(注文 (継承)) の値があります。このセクションの下には、「Assigned keys」(割り当てられたキー) フィールド、「Values」(値) フィールド、および「Remove」(削除) ボタンのフィールドとコントロールが水平に配置されています。[Assigned keys] (割り当てられたキー) フィールドには、「environment」(環境)というテキストが表示されています。[Values] (値) フィールドはドロップダウンリストで、「Production」(生産) (強調表示) と 「Customers」(顧客) の値が表示されています。[Assigned keys] (割り当てられたキー) フィールドの下に [Assign new LF-Tag] (新しい LF タグを割り当てる) ボタンが表示されています。ウィンドウの右下には、[Cancel] (キャンセル) ボタンと [Save] (保存) ボタンがあります。
  8. (オプション) [新しい LF タグを割り当てる] を再度選択して、別の LF タグを追加します。

  9. [Save] (保存) を選択します。

LF タグをデータカタログリソースに割り当てる

Console
LF タグをデータカタログデータベースまたはテーブルに割り当てるには
  1. Lake Formation コンソール (‭‬https://console.aws.amazon.com/lakeformation/‬)を開きます。

    前述の要件を満たすユーザーとしてサインインします。

  2. ナビゲーションペインの [Data catalog] で、以下のいずれかを実行します。

    • LF タグをデータベースに割り当てるには、[データベース] を選択します。

    • LF タグをテーブルに割り当てるには、[テーブル] を選択します。

  3. データベースまたはテーブルを選択し、[Actions] (アクション) メニューで [Edit tags] (タグを編集) を選択します。

    [Edit LF-Tags: resource-name] (LF タグの編集: リソース名) ダイアログボックスが表示されます。

    テーブルが格納先のデータベースから LF タグを継承した場合、継承された LF タグがウィンドウに表示されます。それ以外の場合は、「There are no inherited LF-Tags associated with the resource.」(このリソースに、継承された LF タグは関連付けられていません。) というテキストが表示されます。

    この画像は、「Edit LF-Tags: inventory] (LF タグの編集: inventory) ダイアログウィンドウのスクリーンショットです。上部には、「Inherited keys」(継承されたキー) (グレー表示) と「Values」(値) のフィールドがあります。[Inherited keys] (継承されたキー) フィールドには「level」(レベル) の値があり、[Values] (値) フィールドの値は「director (inherited)」(ディレクター (継承)) の値があります。このセクションの下には、「Assigned keys」(割り当てられたキー) フィールド、「Values」(値) フィールド、および「Remove」(削除) ボタンのフィールドとコントロールが水平に配置されています。[Assigned keys] (割り当てられたキー) フィールドには、「module」(モジュール)というテキストが表示されています。[Values] (値) フィールドはドロップダウンリストで、「Orders」(注文)、「Sales」(売上)、および「Customers」(顧客) (強調表示) の値が表示されています。[Assigned keys] (割り当てられたキー) フィールドの下に [Assign new LF-Tag] (新しい LF タグを割り当てる) ボタンがあります。ウィンドウの右下には、[Cancel] (キャンセル) ボタンと [Save] (保存) ボタンがあります。
  4. (オプション) テーブルに継承された LF タグがある場合、[継承されたキー] フィールドの横の [値] リストで、継承された値をオーバーライドする値を選択することができます。

  5. 新しい LF タグを割り当てるには、以下の手順を実行します。

    1. [Assign new LF-Tag] (新しい LF タグを割り当てる) を選択します。

    2. [割り当てられたキー] フィールドで LF タグのキーを選択し、[値] フィールドで値を選択します。

    3. (オプション) [新しい LF タグを割り当てる] を再度選択して、追加の LF タグを割り当てます。

  6. [Save] (保存) を選択します。

AWS CLI
LF タグをデータカタログリソースに割り当てるには
  • add-lf-tags-to-resource コマンドを実行します。

    次の例は、LF タグ module=orders をデータベース erp 内のテーブル orders に割り当てます。これは、--lf-tags 引数にショートカット構文を使用しています。--lf-tagsCatalogID プロパティはオプションです。指定されない場合は、リソース (この場合はテーブル) のカタログ ID が使用されます。

    aws lakeformation add-lf-tags-to-resource --resource '{ "Table": {"DatabaseName":"erp", "Name":"orders"}}' --lf-tags CatalogId=111122223333,TagKey=module,TagValues=orders

    以下は、コマンドが成功した場合の出力です。

    {
        "Failures": []
    }
    

    次の例は、2 つの LF タグを sales テーブルに割り当てて、--lf-tags 引数に JSON 構文を使用します。

    aws lakeformation add-lf-tags-to-resource --resource '{ "Table": {"DatabaseName":"erp", "Name":"sales"}}' --lf-tags '[{"TagKey": "module","TagValues": ["sales"]},{"TagKey": "environment","TagValues": ["development"]}]'

    次の例は、LF タグ level=director をテーブル sales の total 列に割り当てます。

    aws lakeformation add-lf-tags-to-resource --resource '{ "TableWithColumns": {"DatabaseName":"erp", "Name":"sales", "ColumnNames":["total"]}}' --lf-tags TagKey=level,TagValues=director

リソースの LF タグ の更新

データカタログリソースの LF タグを更新するには (AWS CLI)
  • 前の手順で説明したように、add-lf-tags-to-resource コマンドを使用します。

    既存の LF タグと同じキーを持つが、値は異なるという LF タグを追加すると、既存の値が更新されます。

リソースからの LF タグの削除

データカタログリソースの LF タグを削除するには (AWS CLI)
  • remove-lf-tags-from-resource コマンドを実行します。

    親データベースから継承された値をオーバーライドする LF タグの値がテーブルにある場合、テーブルからその LF タグを削除すると、継承された値が復元されます。この動作は、テーブルから継承されたキーの値を上書きする列にも該当します。

    以下の例は、sales のテーブルの total の列から LF タグ level=director を削除します。--lf-tagsCatalogID プロパティはオプションです。指定されない場合は、リソース (この場合はテーブル) のカタログ ID が使用されます。

    aws lakeformation remove-lf-tags-from-resource --resource ' { "TableWithColumns": { "DatabaseName": "erp", "Name": "sales", "ColumnNames":[ "total"]}}' --lf-tags CatalogId=111122223333,TagKey=level,TagValues=director