[アップデート] Amazon Athena for Apache Spark が発表されました #reInvent

2022.12.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

データアナリティクス事業本部の笠原です。

2日目のキーノートにて「Amazon Athena for Apache Spark」が発表されました。

概要

AthenaのコンソールやAPIで簡素化されたノートブックを使って、インタラクティブなApache PySparkアプリケーションを構築できるようになります。 Athenaでは、Sparkアプリケーションを1秒以内で開始し、最適化されたSparkランタイムでより速く実行出来るようになります。 また、インフラストラクチャの管理とSparkの設定はAthenaが行うため、管理コストも減らせて開発に集中できるようになります。

やってみた

早速試してみました。

Athenaにノートブックの項目が増えています。 最初にワークグループを設定します。

ワークグループを新規作成します。

分析エンジンはSparkを選択します。 また今回はサンプルノートブックをオンにします。

追加設定はデフォルトをオンにして、ワークグループを作成します。

ワークグループが作成できました。

ノートブックエクスプローラを開いて、ワークグループを先ほど作成したSparkのワークグループを選択すると、サンプルノートブック名が表示されます。 サンプルノートブックをクリックして開きましょう。

ノートブックを開くと、Sparkエンジンが起動します。 しばらく待つと、ノートブックの内容が表示されます。

ノートブックが開いたら、Run Allをクリックして、全てのセルを実行してみましょう。

SparkのDataframeが使えます。

SparkのSQLも実行できます。

ノートブック上で、グラフ描画もできます。

利用可能リージョン

以下の5つのリージョンで利用可能です。東京リージョンでも利用できます。

  • US East (Ohio)
  • US East (N. Virginia)
  • US West (Oregon)
  • Asia Pacific (Tokyo)
  • Europe (Ireland)

料金

東京リージョンでは以下の料金になります。

内容 課金 備考
Apache Spark コード実行 $0.50 per DPU-hour billed per minute ドライバノードとワーカーノードが課金対象
ノートブックノードは追加料金なし

Spark実行にかかるDPU単位での課金になります。 1つのDPUで4つのvCPUと16GBのメモリが提供されます。 課金は1秒単位で行われ、1秒未満は切り上げられます。

Sparkアプリケーション用にノートブックノードとSparkドライバノードが起動します。 ノートブックノードは、ノートブックUIのサーバーとして機能するものです。 Sparkドライバノードは、Sparkアプリケーションを調整して、全てのSparkワーカーノードと通信するものです。 Sparkワーカーノードは、Sparkアプリケーションタスクの実行を担当します。

セッション開始後に、ノートブックでセル実行するか、start-calculation-execution APIを使用してSparkアプリケーションを実行することができるようになります。 Sparkアプリケーション実行すると、任意の数のSparkワーカーノードをプロビジョニングし、実行終了すると瞬時にワーカーノードが解放されます。 アプリケーションセッション期間中の、ドライバノードとワーカーノードの料金が課金されます。 ノートブックノードは課金対象外です。

最後に

SparkをAthenaで簡単に操作できるようになりました。 非常に簡単に試すことができたので、Athenaの活用の幅が一気に広がりそうです。