Building a Database on S3

23/12/2024 19 min

Listen "Building a Database on S3"

Episode Synopsis

This research paper investigates the feasibility and limitations of using Amazon S3, a cloud storage service, as a database system for web applications. The authors present protocols for managing reads, writes, and commits to S3, addressing issues of concurrency and consistency. They explore different consistency levels, including eventual consistency and stronger guarantees like atomicity and monotonic reads/writes, analysing their performance and cost implications using the TPC-W benchmark. The study highlights the trade-offs between consistency, availability, and scalability inherent in utilising S3 for database applications and proposes solutions to enhance transactional properties while retaining S3’s inherent advantages. The paper concludes by discussing related work and future research directions.