Democratising Fare Storage at Scale Using Event Sourcing
Nov 23, 2020Sourabh Suman

Summary
This post details the implementation of Event Sourcing and CQRS patterns for Grab's Fare Storage. It introduces DynamoDB as the event store, backed by a cache for reads, and discusses the use of optimistic locking with fare versions and unique transaction IDs to ensure data integrity and idempotency during concurrent updates. A schema-less metadata approach using an SDK is also described, allowing clients to evolve metadata without modifying the storage service.