October 17, 2013 | SQL Server

Live from the #summit13 keynote : 2013-10-17

Douglas McDowell (EVP Finance) takes the stage (no kilt), and talks numbers. PASS has an impressive $1MM in reserves as a "rainy day" fund. Last fiscal year they spent $7.6MM on community; 30% of that was spent internationally. 

Bill Graziano comes on (no kilt) to say goodbye and thanks to the outgoing board members, Douglas McDowell, Rob Farley and Rushabh Mehta.

Thomas LaRock comes on. No kilt, but he did tuck his shirt in. He introduces the incoming executive team.

The 2014 PASS Business Analytics Conference will be held in San Jose, May 7th – 9th.  

PASS Summit 2014 is heading back to Seattle, November 4th – 7th. There is currently a discounted rate of $1,095 until December 1st – see the web site for details.

Hekaton: What, Why and How

Dr. David DeWitt comes on to talk about Hekaton. The slide deck is available here. He wants the name Hekaton to stay instead of the more boring name marketing came up with (in-memory OLTP). He seems disappointed that they didn't quite get to 100X performance (the source of the name; Hekaton is greek for 100). Currently ranges from 5-30X improvement.

I'm not even going to try to translate the talk, but just give high-level highlights:

Bottlenecks in OLTP performance are primarily due to: 

  • latches (for shared data structures) – a very expensive part of buffer pool management
  • locking (for concurrency control) – two-phase locking, credited to Jim Gray, emerged as the standard for coordinating updates (and earned him a Turing Award)
  • interpretation of query plans

Hekaton improves performance through these "Goodies":

  • lock free data structures eliminate latches and spinlocks
  • multi-versioned, timestamped optimistic concurrency control
  • compiling queries into DLLs eliminate runtime interpretation

Steps to using Hekaton:

  1. Create a memory-optimized table with a HASH or RANGE primary key (the new index structure, Bw-tree, is described in this Microsoft Research whitepaper)
  2. Populate the table 
  3. Use it. Standard T-SQL should get 3X boost off the bat.
  4. Go the extra mile: compile your stored procedures to give 5-30X boost. 

He went into a boatload of really mind-melting details here. As many attendees said or tweeted, I'm going to have to watch this again – with a pause button – to absorb it all well enough to give it justice. In the meantime, you should be aware of the limitations of the feature.