Elasticsearchはデータを永続的に保存できます。主要データベースにするかは、書き込みが失敗したり並行したりしても、どの業務ルールを守る必要があるかから判断します。
注文システムでは、商品を探すことと購入を確定することは別の仕事です。前者には検索の関連性、後者には支払いと在庫変更の正しさが重要です。
1. 一緒に成功する必要がある変更から考える
購入に注文レコードの作成と在庫の減算が必要だとします。片方だけが成功した場合にどうするかを、業務として定義しなければなりません。
[Create order] ---- must coordinate ---- [Reduce stock]
| |
success failure?
