Thursday, March 24, 2011

Implementing ACID

I am starting research on a project that will need to provide ACID semantics on its database.

Due to the nature of the data it is not suitable for storage in common off-the-shelf systems (relational or key-value).

What are some good resources on how to implement systems which must provide ACID semantics?

My typical Google search returns more information about system which already provide ACID semantics rather than how to go about implementing such systems.

From stackoverflow
  • ARIES is a popular algorithm for implementing an ACID database (e.g. SQL Server uses this algorithm).

    1. Wikipedia on ARIES
    2. The ARIES paper
    Andrew Rollings : Care to summarize here?
  • Timothy Leary - How to Operate Your Brain

    http://www.youtube.com/watch?v=SQq_XmhBTgg

    Cody Brocious : +1: Best answer I've seen in a long while. Kudos.
    Andrew Rollings : Not exactly helpful though :) (Unless the ensuing mind expansion allowed you to solve the problem).
    Cody Brocious : Vision quest coding should probably be reserved for compiler/OS development and reverse-engineering. I can't imagine that working out well for databases.
    rmeador : Wasn't Oracle developed primarily under the influence of mind-altering drugs?
  • If you know German, I'd recommend

    • Alfons Kemperer: Datenbanksysteme - Eine Einführung, ISBN 3486576909

    "Einführung", which means "introduction", is a gross understatment. The book has several chapters on how you would physically lay out the data, WAL (write ahead logging), serializable vs. non-serializable histories, restart after failures, and much more.

    I doubt, though, that you really want to write something like that. Do I need to remind you that in theory you can model any data-structure on top of the relational model?

    Eloff : Better to waste the flexibility of a relational database than 6 months of your life...

0 comments:

Post a Comment