Glue を選ぶ理由

AWS Glue を使用すると、クローラー (データの検出) と抽出、変換、ロード (ETL) ジョブ (データの処理とロード) に対して時間あたりの料金が秒単位で課金されます。AWS Glue データカタログの場合、メタデータの保存とアクセスに対して簡略化された月額料金のみがかかります。最初の 100 万個のオブジェクトの保存と最初の 100 万回のアクセスは無料です。ETL コードをインタラクティブに開発するために開発エンドポイントをプロビジョニングする場合は、時間あたりの料金がかかり、秒単位で課金されます。AWS Glue DataBrew の場合、インタラクティブセッションはセッションごとに請求され、DataBrew ジョブは 1 分ごとに請求されます。AWS Glue Schema レジストリは追加料金なしでご利用いただけます。

注: 料金は AWS リージョンによって異なります。

  • ETL ジョブおよびインタラクティブセッション
  • 料金の例

    ETL ジョブ: AWS Glue Apache Spark ジョブが 15 分実行され、6 DPU を使用したとします。1 DPU 時間あたりの料金は 0.44 USD です。ジョブは 1/4 時間実行され、6 DPU を使用したため、AWS は 6 DPU × 1/4 時間 × 0.44 USD、または 0.66 USD の料金が発生します。

    AWS Glue Studio Job Notebooks とインタラクティブセッション: AWS Glue Studio のノートブックを使って、インタラクティブに ETL コードを開発するとします。インタラクティブセッションは、デフォルトで 5 DPU です。セッションを 24 分 (5 分の 2 時間) 実行すると、DPU 時間あたり 0.44 USD で 5 DPU × 2/5 時間、つまり 0.88 USD が請求されます。

    ML Transforms: AWS Glue ジョブの実行と同様、データの FindMatches を含む ML 変換の実行コストは、データのサイズ、データの内容、および使用するノードの数とタイプによって異なります。次の例では、FindMatches を使用して、複数のデータソースからのポイントオブプレゼンス情報を統合しました。データセットサイズが ~11,000,000 行 (1.6 GB)、ラベルデータのサイズ (真の一致または真の不一致の例) が ~8,000 行 (641 KB) で、タイプ G.2x の 16 インスタンスで実行されている場合、8.23 USD のコストで 34 分間のラベルセット生成ランタイム、2.66 USD のコストで 11 分間のメトリクス推定ランタイム、および 7.75 USD のコストで 32 分間の FindingMatches ジョブ実行ランタイムが発生します。

  • データカタログ
  • 料金の例

    AWS Glue データカタログの無料利用枠: ある月にデータカタログに 100 万個のテーブルを保存し、これらのテーブルにアクセスするために 100 万回のリクエストを実行する場合を考えてみましょう。この使用は AWS Glue データカタログの無料利用枠の対象となるため、支払いは 0 USD です。最初の 100 万個のオブジェクトの保存と毎月 100 万回のリクエストを無料で行うことができます。

    AWS Glue データカタログ: 次に、ストレージ使用量は月あたり 100 万テーブルのままですが、リクエストが倍増して月に 200 万回になった場合を考えてみましょう。例えば、クローラーを使用して新しいテーブルを検索し、30 分間実行して 2 個の DPU を消費するとします。

    最初の 100 万個のテーブルの保存が無料であるため、ストレージコストは 0 USD のままです。最初の 100 万回のリクエストも無料です。無料利用枠を超える 100 万回のリクエストに対して 1 USD が課金されます。クローラーは DPU 時間あたり 0.44 USD 課金されるため、DPU 時間あたり 0.44 USD で 2 DPU * 1/2 時間分または 0.44 USD を支払うことになります。

    Glue テーブルで統計を生成し、統計の実行に 10 分かかり、1 DPU を消費した場合、1 DPU x 1/6 時間 x 0.44 USD/DPU 時間、つまり 0.07 USD が請求されます。

    Apache Iceberg テーブルを圧縮し、その圧縮が 30 分間実行され、2 DPU を消費した場合、2 DPU x 1/2 時間 x 0.44 USD/DPU 時間、つまり 0.44 USD が請求されます。

  • クローラー
  • DataBrew インタラクティブセッション
  • 料金の例

    AWS Glue DataBrew: 30 分のインタラクティブセッションごとに請求される料金は 1.00 USD です。午前 9 時にセッションを開始してすぐにコンソールを離れ、午前 9 時 20 分から午前 9 時 30 分に戻る場合は、1 セッション利用で合計 1.00 USD になります。

    午前 9 時にセッションを開始し、午前 9 時 50 分まで DataBrew コンソールを操作し、DataBrew プロジェクトスペースを出て、午前 10 時 15 分 に最後の操作をするために戻る場合、これは 3 セッションを使用することになり、1 セッションあたり 1 USD、合計 3 USD が請求されます。

  • DataBrew ジョブ
  • 料金の例

    AWS Glue DataBrew: DataBrew ジョブが 10 分間実行され、5 つの DataBrew ノードを消費する場合、料金は 0.40 USD です。ジョブは 6 分の 1 時間実行して 5 個のノードを消費したため、ノード時間あたり 0.48 USD × 5 ノード × 1/6 時間、合計 0.40 USD が請求されます。

  • データ品質
  • AWS Glue Data Quality は、高いデータ品質を実現することで、データに対する信頼性を高めます。データレイクやパイプラインのデータ品質を自動的に測定、モニタリング、管理し、欠損や陳腐化したデータ、不良データの特定を容易にします。

    データカタログや AWS Glue Studio、AWS Glue API からデータ品質機能にアクセスすることができます。

    データカタログにカタログ化されたデータセットのデータ品質を管理するための料金:

    データカタログからデータセットを選択し、レコメンデーションを生成できます。このアクションは、データ処理ユニット (DPU) をプロビジョニングするためのレコメンデーションタスクを作成します。レコメンデーションを受けたら、ルールを修正したり、新たに追加してスケジュールを組むことができます。これらのタスクはデータ品質タスクと呼ばれ、これに対して DPU をプロビジョニングします。最低 2 つの DPU が必要で、最低請求期間は 1 分です。

    AWS Glue ETL で処理されるデータセットのデータ品質を管理するための料金:

    また、データ品質チェックを ETL ジョブに追加することで、不良データがデータレイクに入るのを防ぐことができます。これらのデータ品質ルールは ETL ジョブ内に存在するため、実行時間の増加や DPU の消費量の増加を招きます。また、SLA の影響を受けないワークロードにはフレキシブル実行を使用できます。

    AWS Glue ETL で異常を検出するための料金:

    異常検出:
    異常検出にかかる時間には、ETL ジョブ DPU に加えて、統計ごとに 1 DPU が発生します。1 つの統計情報の異常を検出するには、平均で 10~20 秒かかります。2 つのルール (ルール 1: データ量は 1000 レコード以上、ルール 2: カラム数は 10 以上) と 1 つのアナライザー (アナライザー 1: カラムの完全性を監視) を設定したとします。この設定では、行数、列数、列の完成率という 3 つの統計情報が生成されます。異常の検出にかかる時間 (最低 1 秒) に対して、追加で 3 つの DPU が課金されます。詳細については、例 4 を参照してください。

    再トレーニング:
    異常検出アルゴリズムが後続の異常を正確に予測できるように、異常なジョブ実行や統計情報を除外したい場合があります。そのために、AWS Glue では統計を除外または含めることができます。再トレーニングにかかる時間に対して、モデルの再トレーニングに 1 DPU がかかります。 再トレーニングには、統計ごとに平均で 10 秒から 20 分かかります。詳細については、例 5 を参照してください。

    統計ストレージ:
    収集された統計情報を保存しても料金はかかりません。アカウントあたりの統計情報数は 10 万件に制限されており、2 年間保存されます。

    追加料金:
    AWS Glue は、Amazon Simple Storage Service (Amazon S3) から直接データを処理します。AWS Glue でデータを読み込む際、追加のストレージ料金は発生しません。ストレージ、リクエスト、データ転送に対して Amazon S3 の標準料金が発生します。お客様の設定に基づき、一時ファイル、データ品質結果、シャッフルファイルは、お客様が選択した S3 バケットに保存され、S3 の標準料金で課金もされます。


    データカタログを使用する場合は、標準のデータカタログのレートで課金されます。詳細は、[データカタログの保存と要求] タブを選択してください。

    料金の例

    例 1 - データカタログにあるテーブルのレコメンデーションを取得する

    例えば、5 つの DPU を持つ推薦タスクが 10 分で完了する場合を考えてみましょう。5 DPU × 1/6 時間 × 0.44 USD、つまり 0.37 USD を支払うことになります。

    例 2 - データカタログのテーブルのデータ品質を評価する

    レコメンデーションを確認した後、必要に応じて編集し、DPU をプロビジョニングしてデータ品質タスクをスケジュールすることができます。例えば、5 つの DPU を持つデータ品質評価タスクが 20 分で完了する場合を考えてみましょう。
    5 DPU × 1/3 時間 × 0.44 USD で 0.73 USD を支払うことになります。

    例 3 - AWS Glue ETL ジョブのデータ品質を評価する

    また、これらのデータ品質チェックを AWS Glue の ETL ジョブに追加することで、不良データがデータレイクに入るのを防ぐことができます。AWS Glue Studio 上で Data Quality Transform を追加するか、AWS Glue Studio のノートブックでオーサリングするコード内で AWS Glue API を使用することで実現できます。パイプライン内でデータ品質ルールが設定されているところで実行される AWS Glue ジョブが、6 DPU で 20 分 (1/3時間) 実行される場合を考えてみましょう。6 DPU × 1/3 時間 × 0.44 USD、つまり 0.88 USD が課金されます。また、Flex を利用すると、6 DPU × 1/3 時間 × 0.29 USD で 0.58 USD の課金が発生します。

    例 4 – 異常検出による AWS Glue ETL ジョブのデータ品質を評価する

    Amazon Redshift にロードする前に、Amazon S3 からデータを読み取り、データを変換し、データ品質チェックを実行する AWS Glue ジョブを考えてみましょう。このパイプラインに 10 個のルールと 10 個のアナライザーがあり、20 個の統計情報が収集されたとします。また、抽出、変換プロセス、読み込み、統計情報の収集、データ品質評価には 20 分かかると仮定します。異常検出を有効にしていない場合、お客様には 6 DPU x 1/3 時間 (20 分) * 0.44 USD = 0.88 USD (A) が課金されます。異常検出を有効にすると、統計情報ごとに 1 DPU が追加され、異常検出には平均で 15 秒かかります。この例では、お客様には 20 件の統計情報 * 1 DPU * 15/3600 (0.0041 時間/統計情報) * 0.44 USD (1 時間あたり DPU ごとのコスト) = 0.037 USD (B) となります。ジョブの総費用は、0.88 USD (A) + 0.037 USD (B) = 0.917 USD になります。

    例 5 – 再トレーニング

    Glue ジョブで異常が検出されたとします。異常検出アルゴリズムが将来の異常を正確に予測できるように、モデルから異常を除外することにしました。そのためには、この異常統計を除外してモデルを再トレーニングできます。モデルの再トレーニングにかかる時間には、統計情報ごとに 1 DPU がかかります。この処理には、平均で 15 秒かかります。この例では、1 つのデータポイントを除外すると仮定すると、1 つの統計情報 * 1 DPU * 15/3600 (0.0041 時間/統計情報) * 0.44 USD = 0.00185 USD が発生します。

注: 料金はリージョンによって異なります。

AWS Glue の可用性の詳細については、グローバルリージョン表 をご覧ください。