Earlier this week I experimented, once again, with using temporary hash tables to speed up intermediate processing. Temp tables can be very useful for creating “optimizer fences” that serve to simplify queries to the point where the optimizer will consistently (more or less) come up with a good plan if not a great one. Temp heaps seem well suited to this purpose, when used simply as low-overhead FIFO structures.
Category Archives: Development
Deployment fail at MacKiev/Ancestry.com
Update: It shipped! It shipped!! Less than four months late! That’s not too bad in this industry.
There is an ongoing deployment-gone-wrong story involving SQL Server and about which I have heard nary a word on the SQL Server blogs. While it looks a lot like a classic, doomed-to-failure approach to deployment, surely there are lessons to be learned somewhere.
‘Proximity’ Genealogical Database Project Update
Update: I have much more to report about the project, but I have to make choices between writing about it and developing, and right now the development work is taking precedence. Look for a new post soon. I hope. If this work sounds like something you might want to contribute to financially … Continue reading →
“Proximity” Genealogy Database Project
I am developing a proof-of-concept for a genealogical database intended to support querying for various proximities including Generational relationships (traditional family tree) Proximity of events in time and space (geolocation) Genetic proximity (DNA matching via SNPs) … Continue reading →
SQL Server 2016 Report Designer always upgrades to 2016 RDL schema
Update (7/25/16): You should be fine with older versions of Report Server and SSMS 2016/Visual Studio 2015/SSDT, if you do these three things: Set the appropriate compatibility level for deployment (TargetServerVersion) in the report project properties. Build the report project before deploying (this may also catch some kinds of errors). … Continue reading →
119 SQL Code Smells
119 SQL Code Smells.
Herding Cats: The Myth of Incremental Development
Herding Cats: The Myth of Incremental Development.
The Curse of the Excluded Middle – ACM Queue
The Curse of the Excluded Middle – ACM Queue.
Cursor-Killing: Retrieving Recently Modified Data – SQLServerCentral
Cursor-Killing: Retrieving Recently Modified Data – SQLServerCentral.
What is DevOps really?
What is DevOps really?.