Azure Table Storage (ATS) はサービスとしてのストレージであることを考慮する必要があります。ストレージと関連する CRUD 操作を管理するためにサーバーをセットアップする必要はありません。ATS は大規模なマルチテナント システムであるため、これは Azure によって処理されます。アカウントを要求し、エンドポイント (およびプライマリ キーとセカンダリ キー) を受け取るだけで、1 GB あたり約 7 セント (および 100K トランザクションごとに 1 ペニー。これはかなり重要ではありません) を支払うだけです。
MongoDB を使用すると、AWS または Azure (またはオンプレミスまたはその他の場所) にあるかどうかにかかわらず、ストレージをプロビジョニングするだけでなく、独自のサーバーをステージングする必要があります。すぐに使える今日のクラウド プロバイダーには、ネイティブの MongoDB as a Service オファリングがありません。現在、コスト基準は ATS よりもはるかに高く、バックアップ/スナップショット、MongoDB のメンテナンスなどを担当しています。最小限の MongoDB 展開でさえ、少なくとも 2 つの仮想マシン インスタンスの費用がかかります (運用環境のスタンドアロン サーバーはお勧めできません)。定期的なダウンタイムのため)。最小の Azure インスタンスは $0.02/時間または月額約 $14 x 2 で、最小フットプリントは約 $30/月です (これは 1GB RAM 未満のローエンドの仮想マシンです。高性能の MongoDB は提供されませんが、トラフィックの少ないポイント オブ プレゼンス Web サイトまたはブログに最適です)。
さて、MongoLab について言及されました。彼らはMongoDB-as-a-Service を持っており、マルチテナント ホスティング ソリューションを構築しており、そのサービスは Azure を含む複数のクラウドで利用できます。彼らが請求する価格は、仮想マシンのインスタンス、ストレージ、帯域幅、サーバーのメンテナンス、バックアップ戦略、サポート、高可用性、監視などへの投資を考慮しています。
ストレージ コストが唯一の決定要因であることに固執するつもりはありません。たとえば、複数のインデックス付きフィールドを必要とする複雑なクエリを実行する必要がある場合は、ATS を使用して、それらのインデックスを提供する追加のテーブルを作成する必要があります (または、パーティション スキャンまたはテーブル スキャンを実行してコンテンツを見つけることになります)。必要)。MongoDB には、非常に強力な検索および集計エンジンがあります。アプリでこれが必要な場合は、MongoDB を使用して「今日」アプリを実行するのではなく、開発者の時間のエンジニアリングと追加のテーブル ストレージの複雑さの維持により多くのお金を費やす可能性があります。一方、パーティション + 行キーが検索ケースの大部分をカバーするテーブル ストレージに非常にうまく収まるデータがあり、アトミックな更新にエンティティ グループ トランザクションを利用できる場合は、
これが役立つことを願っています...