web-dev-qa-db-ja.com

AWS DynamoDBコスト効率

ビジネスアプリケーションをクラウドに移行する必要があるため、コストは私の最大の懸念事項の1つです。

DynamoDBは良いオプションのようですが、データの大部分はリレーショナルデータベースからNoSQLに移行できます。 AWS DynamoDBはコスト効率が高いと言われています。それは実際にはどういう意味ですか?

このアプリケーションは、1日に数回、約10万行を返すクエリを実行します。書き込まれた行の量は同じであると想定できます。現在、データベースはかなり低いハードウェアでホストされており、_t2.medium_インスタンスと比較できます。 PostgreSQLを使用したオンデマンド(これは最も費用対効果の高い方法ではありません)データベースインスタンスのコストは、月あたり約55ドルです。クエリの実行に約_10 sec_がかかるたび。

電卓 の内容を見てみましょう。 DynamoDBの請求はスループットに依存します。 _10 sec_は重要ではありません。1分待つことができるとします。クエリは100k行を返します。つまり、_1667 reads/sec_のピークスループット(アイテムが1 kb未満であると想定)、および同じ書き込みスループットが必要です。電卓は言う:Estimate of your Monthly Bill ($ 859.39)

RDSよりも15倍高価です(それでも6倍遅くなります)。

それを間違った方法で計算していますか?私の範囲外のものはありますか?あるいは、おそらく、DynamoDBはこの種のタスクには適していませんか?

DynamoDBは正しい選択ではないと思います。あなたが言ったように:

DynamoDBの請求はスループットに依存します。 10秒は重要ではありません。たとえば、1分間待つことができるとします。

DynamoDBは、高スループット、低遅延のために構築されています。したがって、このデータベースのコア機能は、1桁のミリ秒以内に回答を提供することです。すでにわかっているように、毎秒支払うことになります。つまり、(スケールアップとダウンの機能内で)ほぼ同じ量の読み取り/書き込みが必要ない場合、DynamoDBはクエリに料金を支払うのでコストがかかります。必要ありません。

このアプリケーションは、1日に数回、約10万行を返すクエリを実行します。

したがって、AWS RDSはあなたのケースに適しているようです。

5
Osterjour

ユースケースはDynamoDBを無料で使用して実装できます。

AWS無料利用枠の一部として、25GBのストレージ、25RCU、25WCUを一年中無料で利用できます。アプリを設計してデータスループットをこれらの制限内に保つだけで、請求額は$ 0.00になります。

スループットを調整し、バッチで作業します。 1秒あたり25回の1Kb書き込みを無料で取得できるので、アプリに1秒あたり25アイテムの書き込みを教える-コストはかかりません。

1
Lloyd