質問: 素朴な疑問です。 回答というよりも、ご意見や個人的な観点での見解が聞けたら嬉しいです。 エンタープライズ向けのシステムをAWSで構築する際、例えば会員管理システムなどで、データストアにDynamoDB、検索処理にElasticsearch(Service)を使う設計はよく目にするパターンかと思います。(多分) データの流れとしては、DynamoDBにデータがputされ、DyanmoDBのストリーム処理でputされたデータをElasticsearchに流し、データ検索時にはElasticsearchを経由するといった感じになります。 ここで素朴な疑問なのですが、そもそもDynamDBをデータストアとして挟む理由は何でしょうか?? put先、データストアもElasticsearchでは何か不都合があるのでしょうか?? 有識者からしましたらアホな質問かもしれないのですが、純粋に疑問・興味を抱き、自身で調べた限りこれといった答えを見いだせずにおります。。。 もしよろしければ皆様のご意見お聞かせ頂けましたら幸いです。
回答: DynamoDBはiwamotさんの回答にもある通り、シビアなパフォーマンスが求められるケースにおいて有効であり、選定されます。 Elasticsearchは検索、分析のために使われる基盤であり、W/Rにおいてのパフォーマンスを求めるものではありません。 エンタープライズ向けのシステムだからこそ、ユースケースにより向いている製品、サービスを選定します。