Amazon Athena での Apache Spark の使用
Amazon Athena では、リソースの計画、設定、管理を必要とせずに、Apache Spark を使用してインタラクティブに簡単にデータ分析と探索を実行できます。Athena で Apache Spark アプリケーションを実行するということは、処理用 Spark コードを送信し、追加の設定をしなくても結果を直接受け取ることを意味します。Amazon Athena コンソールのシンプルなノートブックエクスペリエンスを使用すると、Python または Athena ノートブック API を使用して Apache Spark アプリケーションを開発できます。Amazon Athena の Apache Spark はサーバーレスであり、オンデマンドで自動的にスケーリングされるため、データ量や処理要件の変化に合わせて瞬時に処理できます。
Amazon Athena には次の特徴があります。
-
コンソールの使用 - Amazon Athena コンソールから Spark アプリケーションを送信します。
-
スクリプティング - Python で Apache Spark アプリケーションを迅速かつインタラクティブにビルドおよびデバッグできます。
-
動的スケーリング - Amazon Athena は、ジョブの実行に必要なコンピューティングリソースとメモリリソースを自動的に決定し、それに応じてそれらのリソースを指定された最大値まで継続的にスケーリングします。この動的スケーリングは、速度に影響を与えずにコストを削減します。
-
ノートブックエクスペリエンス - Athena ノートブックエディタを使用すると、使い慣れたインターフェイスを使用して計算を作成、編集、実行できます。Athena ノートブックは Jupyter Notebook と互換性があり、計算として順番に実行されるセルのリストが含まれています。セルの内容には、コード、テキスト、マークダウン、数学、プロット、リッチメディアなどを含めることができます。
追加情報については、AWS Big Data Blog の「Run Spark SQL on Amazon Athena Spark
考慮事項と制約事項
-
現在、Amazon Athena for Apache Spark は以下の AWS リージョン でご利用いただけます。
-
アジアパシフィック(ムンバイ)
-
アジアパシフィック (シンガポール)
-
アジアパシフィック (シドニー)
-
アジアパシフィック (東京)
-
欧州 (フランクフルト)
-
欧州 (アイルランド)
-
米国東部 (バージニア北部)
-
米国東部 (オハイオ)
-
米国西部(オレゴン)
-
-
AWS Lake Formation はサポートされていません。
-
パーティション射影を使用するテーブルはサポートされていません。
-
Apache Spark 対応のワークグループでは Athena ノートブックエディターを使用できますが、Athena クエリエディターを使用することはできません。Athena SQL ワークグループのみが、Athena クエリエディターを使用できます。
-
クロスエンジンビューのクエリはサポートされていません。Athena SQL で作成されたビューでは、Athena for Spark がクエリを実行することはできません。2 つのエンジンのビューは実装方法が異なるため、エンジン間の使用に互換性がありません。
-
MLlib (Apache Spark 機械学習ライブラリ) および
pyspark.ml
パッケージはサポートされていません。サポートされている Python ライブラリのリストについては、「プリインストールされている Python ライブラリのリスト」を参照してください。 -
現在、Athena for Spark セッションで
pip install
はサポートされていません。 -
1 つのノートブックで許可されるアクティブなセッションは 1 つのみです。
-
複数のユーザーがコンソールを使用してワークグループ内の既存のセッションを開く場合、同じノートブックにアクセスします。混同を避けるため、自分で作成したセッションのみを開いてください。
-
Amazon Athena で使用する Apache Spark アプリケーションのホスティングドメイン (例:
analytics-gateway.us-east-1.amazonaws.com
) は、インターネットの「パブリックサフィックスリスト (PSL)」に登録されています。ドメインに機密性の高いクッキーを設定する必要がある場合、ドメインをクロスサイトリクエストフォージェリ (CSRF) 攻撃から保護できるように、 __Host-
プレフィックスを付けたクッキーを使用することをお勧めします。詳細については、Mozilla.org のデベロッパー向けドキュメントの「クッキーの設定」ページを参照してください。 -
Athena での Spark ノートブック、セッション、ワークグループのトラブルシューティングについては、「Athena for Spark のトラブルシューティング」を参照してください。