I was recently involved in a query tuning work where we used synthetic, rather than production data, to validate the results of our query and index tuning work. We faced some issues with the generated data that had quite a severe impact on our testing, and that prompted me into writing this blog post. Lets start by first defining what is synthetic data. In my view synthetic data is data that resembles actual production data, but is artificial/generated. I have seen similar (and also more detailed) definitions elsewhere and I think it is a good one.
I also like to point out that there are plenty of good reasons for using synthetic data in testing, as production data is often strictly regulated and not easily available for testing purposes. However, you need to be certain that the synthetic data you are using is similar to what you have in production.
As we are almost done with the year 2017 it is a good time to look back for a moment, and to also consider what the next year will bring. This year has seen a fair share of hype around the topics of AI and Blockchain, even I touched that latter topic with this blog post. Data security has been in headlines as well, both in bad and good with the data breaches and with fast approaching General Data Protection Regulation in European Union countries.
PASS Summit 2017 is now well behind us and there has been good time to reflect on this years conference. First of all, I have to say that Seattle as a venue is a good choice, even though for some of us that is a long way to travel. To me, it is about 20 hours from SEA-TAC to my home with the flights and driving, doable but not necessarily pleasant. As for the conference itself, I feel that it keeps getting better every year. It has definitely changed a quite a bit from my first Summit back in 2013. But so is the world where data platform professionals live, and the products we work with.
Here are some highlights from the PASS Summit 2017!
As we all know there are many features in SQL Server that have been deprecated over the time by Microsoft for one reason or another. In fact, there is a long list of features that are deprecated in the latest SQL Server 2017 release.
It is far less often that any of these features make a comeback, however that can apparently happen, as I just witnessed last week.
I was recently looking at some Execution Plans with a co-worker and we ended up discussing the different types of joins in a SQL Server and what implications they might have when it comes to query performance. While many of us are familiar with writing joins, as we usually don’t query just a single table, there are quite few things about the physical joins that may not quite obvious. In this post our focus will be in the physical joins, but we will also very briefly look at the different types of logical joins also.
It was not long ago that I though DevOps to be one of those things that happened to other people, and honestly, I did not give it that much thought. That was a time when I was a DBA in the part of the company that does deployments and support for our products, the Ops.
After working in the Ops for almost 20 years, at the beginning of the 2017, I transferred from the Ops to the Dev to lead a small team of database developers on a grand quest to save the world. For me this has been an eye-opening experience in many ways and it has also made me realize the value and possibilities of the DevOps culture.
Let me tell you a story on what happened and brought on this change of heart.
While I normally blog about SQL Server or topics that closely relate to it in some way, I decided to make a small exception this time. Today, I will be writing about blockchain. Granted it’s not a huge jump outside my usual themes, as we’re still talking about database technology. So why I am writing about the blockchain, is it because it’s new and cool technology that everyone else is talking about? Admittedly that is part of, but I also wanted to have some of my thoughts and questions about the blockchain in an easy to find place.