The keynote was on the architecture and infrastructure of SQL Azure… or whatever it’s named this week. The architecture is fascinating, as is their attitude to failure. They use commodity hardware, not server-grade hardware. This naturally makes failures more common. They expect failure and they actually plan for it.
It’s a very different design from most on-premises data centres, where a failure is a major problem. With the Azure data centres, a hardware failure may be left unattended to for up to two weeks. The architecture is built around the concept of ‘self-healing’. Servers that fail are simply left until the next scheduled maintenance. Any databases that are affected by the failed server have a new replica built, completely transparently. There’s a complex quorum mechanism to ensure that only up-to-date replicas are used. Writes are done to all replicas and reads can be done from any synchronised replica.
After the keynote (and fresh coffee), Denny Cherry dived into SQL Server’s Availability Groups, detailing the features, limitations and improvements in SQL 2014. He also covered a few case studies, implementations of both the SQL 2012 version and the SQL 2014 version. A complete start-to-finish demo of setting up an Availability Group finished that session.
After Denny’s session, it was final checks and rehearsal for my first session.This session on database corruption was to a fairly small audience. Lots and lots of questions though – I ended up skipping the last couple of slides because of all the questions!
Which reminds me, I still need to check whether the statement in Books Online, which states that checksum is always enabled for compressed backups, is actually correct… I have a vague recollection that either the statement is incorrect or there are some other caveats. By the time I finished with all the questions and discussions afterwards, the last session of the day was well underway and both sessions I wanted to go to were full – thankfully, there are always the recordings! Instead, I ended up spending the rest of the afternoon chatting with Brent Ozar and a few other MVPs in the coffee area, so it wasn't all bad.
Friday evening was the SQLBits party. The steampunk theme was appropriate for a conference venue, which is near to where the industrial revolution began. Long coats, hats and goggles were in abundance. While some made just a token attempt at a costume, some came decked out to the nines.
Saturday started with a session on T-SQL tricks by Itzik Ben-Gan. Itzik is always full of fun new techniques and this session was no exception. All of the tips were around the Windowing functions (Row_Number, Rank, etc.) along with their SQL 2012 enhancements, LEAD, LAG and the window bounds definitions. Half of the tips he showed us were ways of handling complicated ‘gaps and islands’ type problems, where a data set has a sequential series of numbers with gaps, and the rows need to be ‘grouped’ into sets delimited by the gaps in the sequence. This used to be a very difficult problem before the introduction of the windowing functions but now it’s fairly trivial.
After Itzik’s session, it was time for final prep (and more coffee) for my session on problematic execution plans. I thought this session went very well, better than the corruption one – the room was packed. There weren’t too many questions, which was good as there was a lot of material to get through. That said, there were quite a few questions after the session, so I missed Steve Jones’ session, which I’d hoped to attend… more recordings to get!
After lunch, it was time to sit in Brent Ozar’s session on hardware choices for SQL Server. He made some very valid points about SANs no longer being the only option for high-end SQL Server machines, something that should be kept in mind when planning new servers. SANs are expensive and, if not configured properly for SQL Server, can become a serious bottleneck. With the price of enterprise-grade SSDs dropping and the improvements in SMB 3, internal storage or a NAS built with SSDs may be comparable in price with a SAN but they perform much better. Staying to chat with Brett about hardware and his experiences with large corporates meant I missed the last session. Still, the sessions are all recorded and the chat with Brett was really valuable. By the end of the day, the strain was getting to some… It didn’t help that the demand on the coffee machines had resulted in three out of the four breaking down.
All in all, it was a very well-run, well-organised conference, with interesting sessions and good presenters. Because all the sessions were recorded (video camera and desktop capture) it meant there wasn’t massive pressure to attend a session if there was an opportunity instead to chat directly with any of the (many) MVPs and MCMs who were there.