Amazon Managed Service for Apache Flink

はじめに

Apache Flink を使用してストリーミングデータをリアルタイムで変換および分析

Amazon Managed Service for Apache Flink では、データストリームを処理するためのオープンソースのフレームワークおよびエンジンである Apache Flink を使用して、ストリーミングデータをリアルタイムに変換および分析できます。Amazon Managed Service for Apache Flink は、Apache Flink ワークロードの構築と管理を簡素化し、アプリケーションを他の AWS のサービスとより簡単に統合できるようにします。

Amazon Managed Service for Apache Flink では、期間と KPU の数について 1 秒単位で課金されます。1 つの KPU は、1 vCPU のコンピューティングと 4 GB のメモリで構成されています。

Amazon Managed Service for Apache Flink ストリーミングアプリケーションの料金

Apache Flink アプリケーションの場合、オーケストレーションに使用された KPU がアプリケーションあたり 1 単位追加される方式で課金されます。また、アプリケーションは、ストレージや永続的バックアップに対しても課金されます。稼働アプリケーションストレージは Amazon Managed Service for Apache Flink のステートフル処理機能のために使用され、GB 単位で毎月課金されます。永続的バックアップは任意です。これはアプリケーションバックアップにポイントインタイムリカバリを与え、GB 単位で毎月課金されます。

ストリーミングモードでは、Amazon Managed Service for Apache Flink では、メモリやコンピューティングの要求が変動すると、ストリーミング処理アプリケーションによって必要とされる KPU の数を自動的に拡大縮小されます。必要な数の KPU でアプリケーションを プロビジョニングすることを選択できます。

Amazon Managed Service for Apache Flink Studio の料金

インタラクティブモードでは、1 つの Studio アプリケーションにつき、2 つの追加 KPU が課金されます。1 つの KPU は、Apache Flink のアプリケーションオーケストレーションに、もう1 つの KPU は、サーバーレスのインタラクティブな開発環境に使用されています。また、ステートフルな処理機能に使用されるアプリケーションストレージの稼働にも課金されます。稼働アプリケーションストレージは、GB 単位で毎月課金されます。

Studio ノートブックにおける開発では、永続的アプリケーションバックアップを作成するオプションはありません。ただし、Studio ノートブックのアプリケーションを、インタラクティブモードからストリーミングモードにデプロイする場合、永続的アプリケーションバックアップを作成することができます。

一般的な KPU 使用ガイダンス

アプリケーションに必要な KPU 数の正確な見積もりを得るには、本番負荷でアプリケーションをテストすることをお勧めします。KPU の使用は、データボリュームと速度、コードの複雑さ、統合などに基づいて大幅に異なる可能性があります。これは、Amazon Managed Service for Apache Flink で Apache Flink ランタイムを使用する場合に特に当てはまります。たとえば、内部テストを通じて、状態のない単純なアプリケーションでは KPU あたり数百 MB/1 秒のスループットが見られ、集約的な機械学習 (ML) アルゴリズムを使用する複雑なアプリケーションでは KPU あたり 1 MB 未満のスループットが見られました。これらの警告を念頭に置いた場合、アプリケーションをテストする前に提供する一般的なガイダンスは、KPU ごとに 1 MB/秒です。

AWS リージョン別の料金

料金の例

すべて開く

Amazon Managed Service for Apache Flink Studio を使用して、Amazon Kinesis Data Streams でキャプチャされたストリーミングデータを継続的にフィルタリングし、興味のあるレコードのみを保持するものとします。レコードをリアルタイムで表示して視覚化する機能や、SQL や Python で簡単にクエリやプログラムを書き込む機能が求められています。永続的状態のバックアップは望んでいません。入力ストリームのスループットに基づいて、Studio ノートブックに 4 KPU をプロビジョニングします。Amazon Managed Service for Apache Flink の月額料金は、次のように計算されます。

月額料金

米国東部 (バージニア北部)リージョンでの料金は、ストリーミング処理アプリケーションに使用された KPU 時間あたり 0.11 USD となります。このシンプルなアプリケーションでは、4 KPU を使用して着信データストリームを処理します。Studio ノートブックのアプリケーション (例: インタラクティブモード) は、1 つのアプリケーションにつき 追加で 2 KPU の料金がかかります。

KPU の料金 = 30 日間 * 24 時間 * ([4 KPU + Studio ノートブックのための追加の 2 KPU] * 0.11 USD/時間) = 475.20 USD

Apache Flink アプリケーションは、KPU ごとに 50 GB の実行中のアプリケーションストレージを使用し、Studio ノートブックアプリケーションのために追加で 50 GB の実行中のストレージを使用します。US-East-1 では、0.10 USD/GB/月が課金されます。

1 か月あたりの実行中のアプリケーションストレージの料金 = 30 日間 * 24 時間 * (4 KPU + Studio ノートブックのための追加の 1 KPU) * (50 GB * 0.10 USD/GB/月) = 25.00 USD

合計料金 = 475.20 USD + 25.00 USD = 500.20 USD

Amazon Managed Service for Apache Flink Studio を使用して、Amazon Managed Streaming for Apache Kafka (Amazon MSK) クラスター内のトピックで取得したストリーミングデータにスライディングウィンドウを構築しています。クエリの開発とテストには、月の最初の日の 10 時 30 分に開始する、4 KPU の Studio ノートブックを使用します。開発後、17 時に、アプリケーションを 2 KPU のストリーミングアプリケーションとしてデプロイします。ストリーミングアプリケーションがデプロイされてから 1 時間後の 18 時に、Studio ノートブックを停止します。ストリーミングアプリケーションは、永続的アプリケーション状態を使用することができ、永続的状態のバックアップを毎日作成します。

米国東部 (バージニア北部)リージョンでの料金は、ストリーミング処理アプリケーションに使用された KPU 時間あたり 0.11 USD となります。

月額料金

Amazon Managed Service for Apache Flink Studio を使用したクエリの開発とテスト:
Studio アプリケーションは、該当の月に 450 分間実行されます (最初の日の 10 時 30 分~18 時)。

KPU の料金 = 450 分間 * (4 KPU + Studio ノートブックのための追加の 2 KPU) * 0.11 USD/時間) = 4.95 USD

Apache Flink アプリケーションは、KPU ごとに 50 GB の実行中のアプリケーションストレージを使用し、Studio ノートブックアプリケーションのために追加で 50 GB の実行中のストレージを使用します。US-East-1 では、0.10 USD/GB/月が課金されます。

実行中のアプリケーションストレージの料金 = 450 分間 * (4 KPU + Studio ノートブックのための追加の 1 KPU) * (50 GB * 0.10 USD/GB-月) = 0.26 USD

ストリーミングアプリケーションとしてデプロイし、継続的に実行し、アプリケーションのバックアップをとります。
ストリーミングアプリケーションは、該当の月内に 703 時間実行されます (初日の 17 時から)

KPU の料金 = 703 時間 * (2 KPU + ストリーミングアプリケーションのための追加の 1 KPU) * 0.11 USD/時間) = 231.99 USD

Apache Flink アプリケーションは、KPU あたり 50 GB の稼働アプリケーションストレージを使用し、米国東部-1 では GB あたり 0.121 USD/月で課金されます。

実行中のアプリケーションのストレージ料金 = 703 時間 * 2 KPU * (50 GB * 0.10 USD/GB-月) = 9.76 USD

永続的アプリケーションストレージ料金 = 703 時間 * (1 MB/バックアップ * 1 GB/1,000 MB) * 0.023 USD/GB-月 = 0.01 USD (セント単位で四捨五入されます)

合計料金 = 4.95 USD + 0.26 USD + 231.99 USD + 9.76 USD + 0.01 USD = 246.97 USD