What’s a Transaction?

It’s an abstraction that balances the simplicity and correctness of serial data access (a single query at a time) against the performance and perils of concurrency (multiple queries running in parallel).

I thought the definition was slightly profound in an elegant sort of way and decided to share.

This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

4 Responses to What’s a Transaction?

  1. Johnny Hall says:

    Transactions are a mechanism to gracefully recover from errors. Is it any more complex than that?

  2. Evan says:

    @Johnny Hall

    It depends. If you only care about the transaction as the abstraction, that’s probably good enough. Although, that just goes to show how subtle the concept of a transaction is.

    Not only does it allow you to recover from errors, but it does much to prevent them as well (ie…isolation). Error recovery is really just the tip of the iceburg.

  3. Cyprien says:

    It is good the read the words transaction, concurrency, performance and share in the same sentence! You will love the xstm project: http://xstm.net

  4. Evan says:


    Way cool! I’ll definitely have to poke around with this..