Amazon SimpleDBとは何かについては基本的な理解がありますが、Amazon DynamoDBの説明によると、 NoSQL キー値ストアサービスとほぼ同じようです。
誰かがそれらの間の主な違いを簡単に説明し、どちらを選択するかを教えてもらえますか.
Amazon SimpleDBとは何かについては基本的な理解がありますが、Amazon DynamoDBの説明によると、 NoSQL キー値ストアサービスとほぼ同じようです。
誰かがそれらの間の主な違いを簡単に説明し、どちらを選択するかを教えてもらえますか.
これは、それぞれの FAQ Q: Amazon DynamoDB と Amazon SimpleDB の違いは何ですか? どちらを使用する必要がありますか? (ハッシュリンクは機能しなくなりましたが、ページ内の検索を使用してページ内の質問を見つけます) 段落の最後に最もコンパクトな要約を付けて、ある程度既に:
SimpleDB にはスケーリングの制限がありますが、クエリの柔軟性を必要とする小規模なワークロードに適している場合があります。Amazon SimpleDB はすべてのアイテム属性を自動的にインデックス化するため、パフォーマンスとスケールを犠牲にしてクエリの柔軟性をサポートします。
つまり、パフォーマンス/スケーラビリティとシンプル/柔軟性の間のトレードオフです。つまり、単純なシナリオでは、SimpleDB を使い始めて、DynamoDB 用にアプリケーションを構築する複雑さを回避する方が簡単かもしれません (別の観点については以下を参照してください)。
リンクされた FAQ エントリは、Werner Vogel のAmazon DynamoDB – インターネット スケール アプリケーション用に設計された高速でスケーラブルな NoSQL データベース サービスも参照しています。あなたの質問に対処するさらに多くの洞察が含まれています。
開発者(Amazon のエンジニアでさえ)は、「自分の足で」投票し、Dynamo ではなく Amazon S3 や Amazon SimpleDB などのクラウドベースの AWS ソリューションを採用したため、きめの細かい制御よりもシンプルさを強く好むことが明らかになりました。【追加鉱山】
明らかに、DynamoDB はこれに対処するために導入されたため、既存の NoSQL 製品を「単に」修正するのではなく、SimpleDB の後継として認定される可能性があります。
理想的なソリューションは、元の Dynamo 設計の最良の部分 (段階的なスケーラビリティ、予測可能な高性能) と SimpleDB の最良の部分 (クラウド サービスの管理の容易さ、一貫性、およびテーブルベースのデータ モデル) を組み合わせたものであると結論付けました。純粋なキー値ストアよりもリッチです)。
Werner の概要は、DynamoDB があらゆるサイズのアプリケーションに適していることを示唆しています。
Amazon DynamoDB は、最小から最大のインターネット規模のアプリケーションまで、あらゆる規模のワークロードに対して予測可能な高パフォーマンスを維持し、高いコスト効率を実現するように設計されています。
以前の違いの 1 つは (@Mason Zhang が上記の記事で述べているように) インデックス作成にありました。DynamoDB では、テーブルの作成時にインデックスの作成を制限していました。ただし、現在 (2014 年初頭以降)、Global Secondary Index (GSI) の概念があります。GSI はいつでもテーブルに作成できます。最大 5 つまでサポートされます。そのため、インデックス作成は、多くのユース ケースでブロックの問題ではなくなりました。
また、SimpleDB にはサイズとパフォーマンスの制限があることも知っておく必要があります。(10GB で、たとえば 25 リクエスト/秒)
おそらく最終的に、DynamoDB は最も単純なユースケースを除くすべての SimpleDB に置き換わるでしょう。