Welcome to my blog about how hierarchies and graphs can be modelled, queried, operationalized and tuned with SQL Server. This blog is accompanied by a github repository and talks and workshops I deliver(ed) at several conferences and occassions.
The basic idea for this blog goes way back to 2010, when I was creating an abstract for a talk about modelling hierarchies with different tools of Microsoft’s BI stack. I took a more naive approach back in those times (eg. with an abstract consisting of only two sentences!) and submitted a talk with the name “Luke I’m your father – Hierarchies in SQL Server” to SQLbits 2011. To my surprise (it was my first time that I submitted to a conference outside of Austria or Germany) the talk was chosen – and left me with the task to actually come up with a nice sample database for eg. a family tree of Luke’s family. I first than discovered, that George Lucas’ “Star Wars” universe does not document much of the families and I had to stick (again) to AdventureWorks demo database for my live-demos. (I than pimped up my slides with references to Star Wars instead. :-))
When some years later the bug of George R. R. Martin’s “A Song of Ice and Fire” has bitten when I saw the first episode of HBO’s tv-show “Game of Thrones” I immediately reminded myself of my talk about hierarchies in SQL Server. And it took me less than the time to read all available books (since the progress with the tv-show was way too slow in my opinion) before I refurbished the talk I had done for SQLbits with my very own sample database for “A Game of Hiearchies”.
And here we are!
I hope you will enjoy reading about (un)traditional modeling approaches in relational databases, hierarchieid, recursive common table expressions (CTE) and loops and, of course, SQL Server 2017’s new feature “Graph Database”.