I place a lot of emphasis on capturing actual execution plans because of the runtime metrics, but with Trace Flag 7412, we don't need the plan. This is great news, because capturing execution plans, even using extended events, is an expensive proposition. However, using either the query_thread_profile event, or, Trace Flag 7412, we can get the runtime metrics without the plan. Trace Flag 7412 Here's how it works.You can either be running the extended event, query_thread_profile (a debug event, but one documented and supported by Microsoft) or, enable the Trace Flag 7412. I like to use the extended event in a targeted fashion to easily see behaviors on a query without having to capture the plan. You can even capture the information and then combine it with an estimated plan…
Next week, Redgate Software, will be putting on SQL in the City Streamed. These events are a great way to learn about SQL Server, the Microsoft Data Platform, privacy and protection, the GDPR, and, of course, DevOps. All of that, with some great information on Redgate tools and how they can help tossed in there. Agenda Scroll down at the link and check out the agenda. We're covering a pretty wide range of topics this time. I have the keynote, and I'm not going to tell you what it's about yet. OK. I'll tell you a little. Twist my arm. I have a message about DevOps that I think is very important. When it comes to the database, we frequently think about development and deployment as nothing but change, and…
I've been busy getting the videos up on YouTube. If they're helpful to you, please subscribe. Some point soon I'll start doing some livestreams, maybe from different events, or during a presentation. If you're subscribed, you'll know about it when it happens. Videos We're getting closer and closer to when implementation of enforcement of the GDPR starts on the 25th of this month. Here's something else to think about in regards to data mapping: [embedyt] https://www.youtube.com/watch?v=GWIhg7uV1IQ[/embedyt] I find over and over that people really don't understand what a deadlock is. I make an attempt at explaining it so that everyone can understand: [embedyt] https://www.youtube.com/watch?v=pmxQGfasm54[/embedyt] Have I mentioned the GDPR yet? Yeah, well, you're also going to have to deal with data portability when dealing with the GDPR. Get your JSON…
What? Execution plans and the GDPR? Is this it? Have I completely lost it? Well, no, not on this topic, keep reading so I can defend myself. GDPR and Protected Data The core of the GDPR is to ensure the privacy and protection of a "natural person's" information. As such, the GDPR defines what personal data is and what processing means (along with a bunch of additional information). It all comes down to personally identifying (PI) data, how you store it, and how you process it. More importantly, it's about the right for the individual, the natural person, to control their information, up to and including the right to be forgotten by your system. OK. Fine. And execution plans? Execution Plans and PI Data If you look at an execution…
I know that when some people see AdventureWorks, their vision turns all red around the edges, their blood pressure spikes and they begin to foam at the mouth. I do understand. AdventureWorks, Microsoft's very old, near ubiquitous, sample database suffers from a lot off issues. What's The Matter With AdventureWorks? Let's start off with the general design of the schemas. It's broken up in odd ways. Production has a TransactionHistory and a TransactionHistoryArchive instead of Sales? That doesn't make any sense. What the heck is up with the general database design anyway? I mean, pick on one example. A person can have more than one phone number. Fine. But, what about people who share phone numbers like that ancient land line in my house that is only EVER used by…
Ever heard of the General Data Protection Regulation? If not, go and read the Wiki. I'll wait. I can already hear what you're thinking. "Grant, this doesn't apply to me because my company is in the <insert non-EU country here>." How do I know you're thinking that? Because every single person with whom I've brought this up has had the same response. You might want to go back and re-read it. Data Subject There are three terms from the GDPR that you need to know. The first is Data Controller. This is any organization or individual that collects data from the Data Subject. If the Data Controller is located in the EU, then you're subject to the new regulations. Yes, I know, this means you don't have to worry. Hang…
As you read this, I'm in Seattle for the PASS Summit 2017. I have four roles that I satisfy at Summit; Vendor through my glorious employer Redgate Software, Board Member of the PASS organization, Speaker, and Attendee. Let me tell you about my Summit that's coming up. What is PASS? But first, a word from... well, they're not a sponsor of this blog in any way, but PASS and the community that creates and runs it made my career what it is today. PASS is the single largest organization in the world today supporting training, networking and knowledge sharing in and around the Microsoft Data Platform. The organization runs Local Groups around the world that offer free training all year round. PASS supports SQLSaturday events globally. There are also Virtual…
Thank you to everyone who participated in T-SQL Tuesday #091 which was on databases and DevOps. As I anticipated, this brought out quite a bit of variety on the posts. This is because DevOps is still... not quite cooked...(?) in many peoples minds. I think with the range of posts we saw here, it'll be a lot more clear to those who are just getting an introduction to it. Here are the posts (in no particular order) and a few comments on each: Databases and DevOps: Rob Farley - I like Rob's approach to this intro to DevOps. He's a consultant. It'd sure be nice if you had the protections that DevOps offers in front of your systems before he starts recommending changes. What Playing at Minecraft has Taught Me…
With today's announcement that MySQL is available as a Platform as a Service (PaaS) offering through Azure, a lot more exciting opportunities have presented themselves for companies to build and manage their information. According to the DB-Engines Ranking, MySQL is the second most popular data management system out there. At last, you get to incorporate it directly into your Azure eco-system. While there are tons of reasons this is exciting, I'm going to focus on one very particular issue, backups. Why Are Backups Important? I'm not going to answer that question. Everyone knows that backups are important. Everyone knows that they need to have backups. Yet... There is example after example where people either haven't bothered to set up backups or didn't know what a real backup entails, or even…
I made a mistake the other day. For some reason I got it into my head that I was flying to Albuquerque when I was actually flying to Phoenix. I've no idea how or why that occurred, but I sent a tweet out on how excited I was to finally be visiting and presenting in New Mexico for the first time. Yeah, oops. But here's the deal. It got me thinking. I've been presenting professionally for quite a while. I've visited a lot of places around the world because of this. I want to visit a lot more. I've decided to work closer to home as well as elsewhere. I Want to Speak in All Fifty States I've presented live sessions to user group meetings, SQLSaturdays, Code Camps, and large events all…