AWS Lake Formation の概要 - AWS Lake Formation

AWS Lake Formation の概要

AWS Lake Formation デベロッパーガイドへようこそ。

AWS Lake Formation は、分析と機械学習用のデータの一元管理、保護、グローバル共有に役立ちます。Lake Formation では、Amazon Simple Storage Service (Amazon S3) 上のデータレイクデータと AWS Glue Data Catalogの関連メタデータに対するきめ細かなアクセスコントロールを管理できます。

Lake Formation は、IAM 許可モデルを補強する独自の許可モデルを提供します。Lake Formation のアクセス許可モデルは、リレーショナルデータベース管理システム (RDMS) と同様のシンプルな付与または取り消しメカニズムを通じて、データレイクに保存されたデータに対するきめ細かなアクセスを可能にします。Lake Formation のアクセス許可を適用するには、Amazon Athena、Amazon QuickSight、Amazon Redshift Spectrum、Amazon EMR、AWS Glue など、AWS の複数の分析および機械学習サービスにわたって列、行、およびセルレベルのきめ細かなコントロールを使用します。

AWS Glue Data Catalogの Lake Formation ハイブリッドアクセスモードでは、Amazon S3 と AWS Glue のアクションに対する Lake Formation アクセス許可ポリシーと IAM アクセス許可ポリシーの両方を使用して、カタログ化されたデータを保護してアクセスできます。ハイブリッドアクセスモードを使用すると、データ管理者は一度に 1 つのデータレイクのユースケースに絞って、選択的かつ段階的に Lake Formation のアクセス許可をオンボーディングできます。

Lake Formation では、複数の AWS アカウント や AWS 組織にわたってデータを内外で共有したり、AWS Glue Data Catalog メタデータおよび基盤となるデータへのきめ細かなアクセスを提供する別のアカウントの IAM プリンシパルと直接データを共有したりできます。

Lake Formation の機能

Lake Formation は、データサイロを分解し、異なるタイプの構造化および非構造化データを一元化されたリポジトリに統合するために役立ちます。まず、Amazon S3、またはリレーショナルおよび NoSQL データベース内の既存のデータストアを特定し、データをデータレイクに移動させます。その後、分析のためにデータのクロール、カタログ化、および準備を行います。次に、ユーザーが選択した分析サービス経由でのデータへのセキュアなセルフサービスアクセスをユーザーに提供します。

データインジェストと管理

すでに AWS 内にあるデータベースからデータをインポートする

既存のデータベースの場所を指定し、アクセス認証情報を指定すると、Lake Formation がデータソースの内容を理解するためにデータとそのメタデータ (スキーマ) を読み取ります。その後、Lake Formation がデータを新しいデータレイクにインポートし、メタデータを中央カタログに記録します。Lake Formation を使用することで、Amazon RDS で実行されている、または Amazon EC2 でホストされている MySQL、PostgreSQL、SQL Server、MariaDB、および Oracle データベースからデータをインポートできます。データのロードは一括と増分の両方がサポートされています。

その他の外部ソースからデータをインポートする

Lake Formation は、Java Database Connectivity (JDBC) を使用した接続によるオンプレミスデータベースからのデータの移動に使用できます。コンソールでターゲットソースを特定し、アクセス認証情報を提供すると、Lake Formation がデータを読み取って、データレイクにロードします。上記以外のデータベースからデータをインポートするには、AWS Glue を使用してカスタム ETL ジョブを作成できます。

データをカタログ化してラベル付けする

AWS Glue クローラーを使用して、Amazon S3 内のデータを読み取り、データベースとテーブルのスキーマを抽出して、これらのデータを検索可能な AWS Glue Data Catalogに保存できます。次に、Lake Formation Lake Formation のタグベースのアクセス制御 (TBAC) を使用して、データベース、テーブル、列に対するアクセス許可を管理します。Data Catalog へのテーブルの追加に関する詳細については、「Data Catalog のテーブルとデータベースの作成」を参照してください。

セキュリティ管理

アクセスコントロールを定義して管理する

Lake Formation では、データレイク内のデータに対するアクセスコントロールを 1 か所で管理できます。データベース、テーブル、列、行、およびセルレベルでデータへのアクセスを制限するセキュリティポリシーを定義できます。これらのポリシーは、IAM ユーザーとロール、および外部のアイデンティプロバイダー経由でフェデレーションするユーザーとグループに適用されます。Amazon Redshift Spectrum、Athena、AWS Glue ETL、および Amazon EMR for Apache Spark 内にある Lake Formation によってセキュア化されたデータにアクセスするための細粒度のコントロールを使用できます。IAM ID を作成するときは常に、IAM ベストプラクティスに従うようにしてください。詳細については、「IAM ユーザーガイド」の「セキュリティベストプラクティス」を参照してください。

ハイブリッドアクセスモード

Lake Formation ハイブリッドアクセスモードでは、AWS Glue Data Catalog 内のデータベースとテーブルの Lake Formation 許可を柔軟かつ選択的に有効にできます。ハイブリッドアクセスモードを使用すると、他の既存のユーザーやワークロードのアクセス許可ポリシーを中断することなく、特定のユーザーのセットに Lake Formation 許可を設定できる増分パスが導入されました。詳細については、「ハイブリッドアクセスモード」を参照してください。

監査ロギングを実装する

Lake Formation は、アクセスを監視し、一元的に定義されたポリシーへのコンプライアンスを証明するために、CloudTrail を使用した包括的な監査ログを提供します。Lake Formation を介してデータレイク内のデータを読み取る分析および機械学習サービス全体のデータアクセス履歴を監査できます。この機能により、どのユーザーまたはロールが、どのサービスを使用して、どのデータにいつアクセスしようとしたのかを確認することができます。監査ログには、CloudTrail API とコンソールを使用して他の CloudTrail ログにアクセスするのと同じ方法でアクセスできます。CloudTrail ログの詳細については、「AWS CloudTrail を使用した AWS Lake Formation API コールのロギング」を参照してください。

行およびセルレベルのセキュリティ

Lake Formation は、列と行の組み合わせに対するアクセスの制限を可能にするデータフィルターを提供します。行およびセルレベルのセキュリティを使用して、個人を特定できる情報 (PII) などの機密データを保護します。行レベルのセキュリティに関する詳細については、「Lake Formation でのデータフィルタリングとセルレベルのセキュリティ」を参照してください。

タグベースのアクセスコントロール

Lake Formation のタグベースのアクセスコントロールを使用して、LF タグと呼ばれるカスタムラベルを作成することで、数百または数千にも及ぶデータへのアクセス許可を管理できます。LF タグを定義して、データベース、テーブル、または列にアタッチできるようになりました。次に、分析、機械学習 (ML)、および抽出、変換、ロード (ETL) サービス間で制御されたアクセスを共有して利用します。LF タグを使用すると、何千ものリソースのポリシー定義をいくつかの論理タグに置き換えることで、データガバナンスを簡単にスケールできます。Lake Formation は、このメタデータに対するテキストベースの検索機能を提供するため、ユーザーは分析する必要があるデータをすばやく見つけることができます。

クロスアカウントアクセス

Lake Formation の許可管理機能は、一元化されたアプローチを通じて複数の AWS アカウント全体での分散型データレイクのセキュア化と管理を簡素化して、データカタログおよび Amazon S3 ロケーションに対する細粒度のアクセスコントロールを提供します。詳細については、「Lake Formation でのクロスアカウントデータ共有」を参照してください。

データ共有

データ共有機能を使用すると、データやメタデータを Amazon S3 や AWS Glue Data Catalogに移行しなくても、Amazon Redshift などのさまざまなデータソースに保存されているデータセットに対するアクセス許可を設定できます。Lake Formation のデータを共有するには、次の方法を使用できます。

詳細については、「Lake Formation でのデータ共有」を参照してください。

  • Lake Formation と Amazon Redshift データ共有の統合 – Lake Formation を使用すると、Amazon Redshift データ共有のデータベース、テーブル、列、および行レベルのアクセス許可を一元管理し、データ共有内のオブジェクトへのユーザーアクセスを制限できます。

  • 外部メタストアへの AWS Glue Data Catalog の接続 - AWS Glue Data Catalog を外部メタストアに接続し、Lake Formation を使用して Amazon S3 のデータセットに対するアクセス許可を管理します。AWS Glue Data Catalog へのメタデータの移行は不要です。

    詳細については、「外部メタストアを使用するデータセットのアクセス許可の管理」を参照してください。

  • Lake Formation と AWS Data Exchange の統合 – Lake Formation は、AWS Data Exchange を通じてデータへのライセンスアクセスをサポートしています。Lake Formation データのライセンスに関心をお持ちの場合は、AWS Data Exchange ユーザーガイドの「AWS Data Exchange とは」を参照してください。

Lake Formation の使用の開始

以下のセクションから開始することが推奨されます。