AWS Glue での Apache Spark の生成 AI トラブルシューティング - AWS Glue

AWS Glue での Apache Spark の生成 AI トラブルシューティング

Apache Spark プレビューの生成 AI トラブルシューティングは、AWS Glue 4.0、および米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (オレゴン)、米国西部 (北カリフォルニア)、欧州 (アイルランド)、欧州 (ストックホルム)、アジアパシフィック (東京)、アジアパシフィック (ムンバイ)、アジアパシフィック (シドニー) の各 AWS リージョンで実行されているジョブで利用できます。プレビュー機能は変更される可能性があります。

AWS Glue の Apache Spark ジョブ用の生成 AI トラブルシューティングは、データエンジニアやサイエンティストが Spark アプリケーションの問題を簡単に診断および修正するのに役立つ新機能です。この機能は、機械学習と生成 AI テクノロジーを活用して Spark ジョブの問題を分析し、詳細な根本原因分析と、それらの問題を解決するための実用的な推奨事項を提供します。

Apache Spark の生成 AI トラブルシューティングの仕組み

失敗した Spark ジョブの場合、生成 AI のトラブルシューティングはジョブのメタデータと、ジョブのエラー署名に関連する正確なメトリクスとログを分析して根本原因分析を生成し、ジョブの障害に対処するのに役立つ特定のソリューションとベストプラクティスを推奨します。

ジョブ用の Apache Spark の生成 AI トラブルシューティングの設定

注記

プレビュー中、この機能は AWS Glue 4.0 ジョブが実行時間の最初の 30 分以内に失敗した場合のトラブルシューティングに役立ちます。

IAM 許可の設定

AWS Glue のジョブに対して Spark トラブルシューティングで使用される APIs にアクセス許可を付与するには、適切な IAM アクセス許可が必要です。次のカスタム AWS ポリシーを IAM アイデンティティ (ユーザー、ロール、グループなど) にアタッチすることで、許可を取得できます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:StartCompletion", "glue:GetCompletion" ], "Resource": [ "arn:aws:glue:*:*:completion/*" ] } ] }
注記

プレビュー中、Spark トラブルシューティングでは、AWS SDKを介してプログラムで使用できる API はありません。AWS Glue Studio コンソールを通じてこのエクスペリエンスを実現するための IAM ポリシーでは、StartCompletionGetCompletion の 2 つの API が使用されます。

権限の割り当て

アクセスを提供するには、ユーザー、グループ、またはロールにアクセス許可を追加します。

  • IAM Identity Center のユーザーおよびグループでは: 許可セットを作成します。「IAM Identity Center のユーザーガイド」の「許可セットの作成」の手順に従ってください。

  • アイデンティティプロバイダーを介して IAM で管理されているユーザーでは: ID フェデレーションのロールを作成します。詳細については、「IAM ユーザーガイド」の「サードパーティー ID プロバイダー (フェデレーション) 用のロールの作成」を参照してください。

  • IAM ユーザーでは: 引き受けることができるロールを作成します。手順については、「IAM ユーザーガイド」の「IAM ユーザー用ロールの作成」を参照してください。

失敗したジョブ実行からのトラブルシューティング分析の実行

AWS Glue コンソールの複数のパスからトラブルシューティング機能にアクセスできます。開始方法はこちら:

オプション 1: ジョブリストページから

  1. AWS Glue コンソール (https://console.aws.amazon.com/glue/) を開きます。

  2. ナビゲーションペインで、[ETL ジョブ] を選択します。

  3. 失敗したジョブをジョブリストで見つけます。

  4. ジョブの詳細セクションで[実行] タブを選択します。

  5. 分析する失敗したジョブ実行をクリックします。

  6. [AI によるトラブルシューティング] を選択して分析を開始します。

  7. トラブルシューティング分析が完了したら、画面の下部にある [トラブルシューティング分析] タブで根本原因分析と推奨事項を表示できます。

GIF には、失敗した実行のエンドツーエンドの実装と、AI 機能の実行によるトラブルシューティングが表示されます。

オプション 2: [ジョブ実行モニタリング] ページの使用

  1. [ジョブ実行のモニタリング] ページに移動します。

  2. 失敗したジョブ実行を見つけます。

  3. ドロップダウンメニューで [アクション] を選択します。

  4. [AI によるトラブルシューティング] を選択します。

GIF には、失敗した実行のエンドツーエンドの実装と、AI 機能の実行によるトラブルシューティングが表示されます。

オプション 3: [ジョブ実行の詳細] ページから

  1. 失敗したジョブ実行の詳細ページに移動するには、[実行] タブから失敗した実行の [詳細を表示] をクリックするか、[ジョブ実行のモニタリング] ページからジョブ実行を選択します。

  2. ジョブ実行の詳細ページで、[トラブルシューティング分析] タブを見つけます。

サポートされているトラブルシューティングカテゴリ (プレビュー)

このサービスは、データエンジニアとデベロッパーが Spark アプリケーションで頻繁に遭遇する問題の 3 つの主要なカテゴリに焦点を当てています。

  • リソースのセットアップとアクセスエラー: AWS Glue で Spark アプリケーションを実行する場合、リソースのセットアップとアクセスエラーは、診断するのが最も一般的でありながら難しい問題の 1 つです。これらのエラーは、Spark アプリケーションが、AWS リソースとやり取りしようとしても、アクセス許可の問題、リソースの欠落、または設定の問題が発生した場合によく発生します。

  • Spark ドライバーとエグゼキュターのメモリの問題: Apache Spark ジョブのメモリ関連のエラーは、診断と解決が複雑なものである場合があります。これらのエラーは、多くの場合、データ処理要件がドライバーノードまたはエグゼキューターノードで使用可能なメモリリソースを超えたときに発生します。

  • Spark ディスク容量の問題: AWS Glue Spark ジョブのストレージ関連のエラーは、シャッフル操作、データスピル、または大規模なデータ変換の処理中に発生することがよくあります。これらのエラーは、ジョブがしばらく実行されるまで表示されない可能性があり、貴重なコンピューティング時間とリソースを浪費する可能性があります。

注記

本番環境に提案された変更を実装する前に、提案された変更を徹底的に確認してください。このサービスは、パターンとベストプラクティスに基づいてレコメンデーションを提供しますが、特定のユースケースでは追加の考慮事項が必要になる場合があります。