transactionsin-memory-databasedistributed-transactions

How would you build a in-memory database which is transaction safe? ACIDITY is key here


I have been tasked to build an in-memory database that is transaction safe? Which technologies will be easier to implement? Any references are much appreciated;

I am not sure how to implement that? In Java? C++? GoLang? Which one to choose and how to implement it?


Solution

  • Why would you build yet another in-memory database? There are plenty out there, already, from Oracle, MSFT, SAP down to FOSS notable SQLite.

    But, to your question: A model that allows a single writer and multiple readers is comparatively easy to implement. This model is implemented in SQLite and since it's open source, you're free to examine the implementation.

    If speed is your objective, which is a reasonable assumption given that you're tasked with creating an in-memory database, C++ would be the choice.