Microsoft SQL Server up until version 2012, is build on the presumption that the data will be stored on hard disks and the price of this storage is high not even considering the price of memory, so trade offs are made to make SQL Server 2012 run on this kind of hardware, but what if we forget this and look at modern hardware, with SSD’s, "cheap" storage and memory, how would SQL Server then be build….? Meet Microsoft SQL Server Hekaton:
Some of the key features that I found interesting:
MVCC = multiversion concurrency control
Readers don’t block writers, because of multiple version of data will be stored, but only one will be the last.
Just by changing a property on a table, you can transform this data structure to an in-memory data structure, without the need of changing any of your existing code.
Optimized for SSD (Bw-tree)
"We had an ‘aha’ moment," Lomet recalls, "when we realized that a single table that maps page identifiers to page locations would enable both latch-free page updating and log-structured page storage on flash memory. The other highlight, of course, was when we got back performance results that were stunningly good."
More info at