Amazon EMR Serverless
- 区分
- 専門
- 提供開始
- 2022 年
クラスター管理不要で Spark や Hive のジョブをサーバーレスに実行するサービス
何ができるか
Amazon EMR Serverless は、Apache Spark や Hive のジョブをクラスターの管理なしに実行できるサーバーレスサービスです。ジョブを投入するだけでリソースが自動的にプロビジョニングされ、実行時間とリソース使用量に対してのみ課金されます。クラスターのサイジングやスケーリングの設定が不要です。
どのような場面で使うか
定期的な ETL バッチ処理、S3 データレイク上のアドホッククエリ、データパイプラインの一部としての Spark ジョブ実行など、クラスター管理の手間を省きたいビッグデータ処理に利用されます。
身近な例え
タクシーに例えられます。EMR (クラスター版) が自家用車の購入 / 維持に相当するのに対し、EMR Serverless はタクシーを呼ぶだけで目的地まで連れて行ってくれます。車の管理は不要で、乗った分だけ料金を支払います。
EMR Serverless とは
Amazon EMR Serverless は、ビッグデータ処理をサーバーレスで実行するサービスです。EMR on EC2 ではクラスターのインスタンスタイプやノード数を決める必要がありますが、EMR Serverless ではジョブを投入するだけでリソースが自動的に割り当てられます。ジョブ完了後はリソースが解放され、アイドル時のコストが発生しません。
アプリケーションとジョブラン
EMR Serverless ではまずアプリケーションを作成し、Spark または Hive のランタイムを選択します。アプリケーションに対してジョブランを投入すると、必要な vCPU とメモリが自動的にプロビジョニングされます。事前初期化ワーカーを設定すると、ワーカーが事前にプールされ、ジョブの起動時間を数秒に短縮できます。
はじめかた
EMR コンソールで「サーバーレスアプリケーションの作成」を選択し、ランタイム (Spark / Hive) を指定します。アプリケーションが作成されたら、S3 上のスクリプトとデータを指定してジョブランを投入します。Glue Data Catalog と統合すれば、テーブルメタデータを共有してクエリを実行できます。
注意点
- ジョブの実行時間とリソース使用量に対する従量課金のため、短時間のバッチ処理ではコスト効率が高い
- 長時間稼働するインタラクティブなワークロードでは、EMR on EC2 の方がコスト効率が良い場合がある
利用できるリージョン
Amazon EMR Serverless を利用できるリージョンは 37 か所です (2026-10-09 時点)。
アジアパシフィック:香港、台北、東京、ソウル、大阪、ムンバイ、ハイデラバード、シンガポール、シドニー、ジャカルタ、メルボルン、マレーシア、ニュージーランド、タイ
北米:カナダ (中部)、カナダ西部 (カルガリー)、メキシコ (中部)、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (北カリフォルニア)、米国西部 (オレゴン)
南米:サンパウロ
欧州:フランクフルト、チューリッヒ、ストックホルム、ミラノ、スペイン、アイルランド、ロンドン、パリ
AWS 欧州ソブリンクラウド:ドイツ
中東:イスラエル (テルアビブ)、アラブ首長国連邦、バーレーン
アフリカ:ケープタウン
AWS GovCloud (米国):AWS GovCloud (米国東部)、AWS GovCloud (米国西部)
参考資料 (AWS 公式)
本ページの一次情報は AWS 公式サイトと公式ドキュメントです。最新の仕様と料金は次の公式ページで確認できます。
本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。