考慮事項と制限事項 - Amazon EMR

考慮事項と制限事項

EMR Serverless で Lake Formation を使用する場合は、次の考慮事項と制限事項を考慮してください。

注記

EMR Serverless で Spark ジョブの Lake Formation を有効にすると、ジョブはシステムドライバーとユーザードライバーを起動します。起動時に事前初期化された容量を指定した場合、ドライバーは事前初期化された容量からプロビジョニングし、システムドライバーの数は指定したユーザードライバーの数と等しくなります。オンデマンドキャパシティを選択すると、EMR Serverless はユーザードライバーに加えてシステムドライバーを起動します。Lake Formation ジョブで EMR Serverless に関連するコストを見積もるには、AWS Pricing Calculator を使用します。

Lake Formation を使用した Amazon EMR Serverless は、AWS GovCloud (米国東部) と AWS GovCloud (米国西部) を除く、サポートされているすべての EMR Serverless リージョンで使用できます。

  • Amazon EMR Serverless は、Apache Hive テーブルおよび Apache Iceberg テーブルに対してのみ Lake Formation を介したきめ細かなアクセスコントロールをサポートします。Apache Hive 形式には、Parquet、ORC、および xSV が含まれます。

  • Lake Formation 対応アプリケーションは、カスタマイズされた EMR Serverless イメージの使用をサポートしていません。

  • Lake Formation ジョブの DynamicResourceAllocation をオフにすることはできません。

  • Lake Formation は Spark ジョブでのみ使用できます。

  • Lake Formation を使用した EMR Serverless は、ジョブ全体で 1 つの Spark セッションのみをサポートします。

  • Lake Formation を使用した EMR Serverless は、リソースリンクを介して共有されるクロスアカウントテーブルクエリのみをサポートします。

  • 次のサポートはありません。

    • 耐障害性のある分散データセット (RDD)

    • Spark ストリーミング

    • Lake Formation に付与されたアクセス許可による書き込み

    • ネストされた列のアクセスコントロール

  • EMR Serverless は、以下を含むシステムドライバーの完全な分離を損なう可能性のある機能をブロックします。

    • UDT、HiveUDF およびカスタムクラスを含むユーザー定義関数

    • カスタムデータソース

    • Spark 拡張機能、コネクタ、メタストア用の追加の jar の提供

    • ANALYZE TABLE コマンド

  • アクセスコントロールを適用するために、EXPLAIN PLAN および DESCRIBE TABLE などの DDL オペレーションは、限定された情報を公開しません。

  • EMR Serverless は、Lake Formation 対応アプリケーションのシステムドライバー Spark ログへのアクセスを制限します。システムドライバーはより多くのアクセス権を使用して実行されるため、システムドライバーが生成するイベントとログには機密情報が含まれる可能性があります。許可されていないユーザーまたはコードがこの機密データにアクセスできないように、EMR Serverless はシステムドライバーログへのアクセスを無効にしました。トラブルシューティングについては、AWS のサポートにお問い合わせください。

  • テーブルの場所を Lake Formation に登録した場合、データアクセスパスは、EMR Serverless ジョブのランタイムロールの IAM アクセス許可に関係なく、Lake Formation に保存された認証情報を経由します。テーブルの場所に登録されたロールを誤って設定すると、テーブルの場所に対して S3 IAM アクセス許可を持つロールを使用して送信されたジョブは失敗します。

  • Lake Formation テーブルへの書き込みでは、Lake Formation に付与されたアクセス許可ではなく、IAM アクセス許可が使用されます。ジョブランタイムロールに必要な S3 アクセス許可がある場合は、それを使用して書き込みオペレーションを実行できます。

Apache Iceberg を使用する場合の考慮事項と制限事項を次に示します。

  • Apache Iceberg はセッションカタログでのみ使用でき、任意の名前のカタログでは使用できません。

  • Lake Formation に登録されている Iceberg テーブルは、メタデータテーブル historymetadata_log_entriessnapshotsfilesmanifests、および refs のみをサポートします。Amazon EMR は partitionspathsummaries などの機密データを持つ可能性のある列を非表示にします。この制限は、Lake Formation に登録されていない Iceberg テーブルには適用されません。

  • Lake Formation に登録していないテーブルは、すべての Iceberg ストアドプロシージャをサポートしています。register_table プロシージャと migrate プロシージャは、どのテーブルでもサポートされていません。

  • V1 の代わりに Iceberg DataFrameWriterV2 を使用することをお勧めします。