Lake Formation の主要な機能を図と表でまとめる

2020.08.14

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

おはようございます、もきゅりんです。

最近は、データレイク関係に携わる機会があったため、ついでに Lake Formation を学びました。

Lake Formation とは通常数ヶ月単位で構築されるようなデータレイク環境を数日で構築してしまおう、という凄まじいサービスです。

当稿はその Lake Formation の主要な機能を図で整理するのが目的です。

20191001 AWS Black Belt Online Seminar AWS Lake Formation で記載されているように、 LakeFormation の主要な機能は2つです。

すなわち、ブループリント と アクセスパーミッション です。

この2つに焦点を当てて整理していきます。

ブループリント

ブループリントとは、データレイクにデータを簡単に取り込める「データ管理テンプレート」です。これを実行すると、汎用的なデータレイク環境がすぐに構築できてしまうイメージです。

現在(2020/08/14)は以下2つのブループリントがあります。

  • データベース用 ブループリント

  • ログファイル用 ブループリント

データベースには一括バルクロードと増分アップロードが可能です。

LakeFormation_Blueprint

下図がブループリントのイメージです。

LakeFormation_Workflow

ブループリントで必要なパラメータを入力してワークフローを作成できます。このワークフローは Glue ワークフロー です。Lake Formation と Glue の両方でワークフローの表示と管理ができます。

なお、AWS Glue で直接ワークフローを作成することもできますが、Lake Formation のブループリントからワークフローを作成する方がはるかに簡単に自動化できます。

アクセスパーミッション

Lake Formation ではデータレイクの適切なセキュリティ管理を設計するために、IAMを拡張した独自のアクセス許可モデルを利用しています。Lake Formation上のリソースおよび格納されるデータに対して、よりきめ細かいアクセス制御を可能としています。

Lake Formation では下記表のように、4つのセキュリティパーミッション が存在し、それぞれアクセス対象が異なります。

注意する権限として、暗黙的なアクセス許可があります。 基本的には、各リソースを作成した当事者に対して、そのリソース以下(例えばデータベースを作成したらデータベースに属するすべてのテーブル)の権限が付与されます。

セキュリティパーミッション 内容
データロケーションのアクセス許可 データが保存される S3 パスのアクセスする権限
データカタログのアクセス許可 データカタログにデータベースとテーブルを作成、編集、および削除する権限
データアクセス許可 テーブル単位および列単位に対する データアクセス権限
暗黙的なアクセス許可 各リソース作成者が持つ権限 および データレイク管理者が持つ権限

Lake Formation のアクセス対象となるリソースの包含関係は以下のイメージです。

LakeFormation_accessControl

ブラックベルトに記載されているユーザーのペルソナとアクセス権限の表が下記です。

各ペルソナが必要な権限を付与されています。

LakeFormation_persona

上記表のペルソナとリソースの包含関係イメージをマップさせたのが下記表です。

ペルソナ リソース例
IAM管理者(AWS管理者) AWS Cloud
データレイク管理者 Lake Formation
データエンジニア Database
ワークフローロール Workflow
データ分析者 Table( or Cloumn)

誰がどのリソースへのアクセス権限を要するか、イメージつきましたでしょうか。

表で上に位置するペルソナが下に位置するペルソナに順にリソースの権限を与えていくような権限移譲になるかと思います。

具体的なインラインポリシーの内容については、ドキュメントおよびブラックベルトに記載されています。

きめ細かいがゆえに人数が増えてくると、管理が大変になってきそうですね。 Group にインラインポリシーを割り当てて、ユーザをGroupに属させる、などが現実的でしょうか。

LakeFormation の CloudTrail チュートリアルについては下記ブログも参考になりますので是非どうぞ。

安全なデータレイクの構築が容易になる AWS Lake Formation がついにリリースされました

AWS Lake Formationのチュートリアルをやってみた!

最後に

まだ進化の途中と思われる LakeFormation の主要な機能をまとめてみました。

今後さらにブループリントが充実してくることが予想されますので、データレイク環境はどんどん身近なものになっていくのでしょう。

以上です。

どなたかのお役に立てば幸いです。

参考: