Why Aren’t You Automating Database Deployments?

DevOps
Building out processes and mechanisms for automated code deployments and testing can be quite a lot of work and isn't easy. Now, try the same thing with data, and the challenges just shot through the roof. Anything from the simple fact that you must maintain the persistence of the data to data size to up time, and you have real problems in front of you. However, adopting database deployment automation and testing has enormous benefits. Faster, safer, production deployment enhances the protection built around your production systems. Whether we want to use the loaded term of DevOps or not, the benefits of this style of development and deployment are easily documented and measured. So, why are so few people doing it? Conservation of Momentum If we were talking about a…
Read More

The Learning Curve for DevOps

AWS, Azure, DevOps
If you're attempting to implement automation in and around your deployments, you're going to find there is quite a steep learning curve for DevOps and DevOps-style implementations. Since adopting a DevOps-style release cycle does, at least in theory, speed your ability to deliver better code safely, why would it be hard? Why is there a Learning Curve for DevOps? I recently did a presentation on a simple Continuous Integration process. Here are the tools that I used in the demo: Local Git repositoryVS CodeAzure Data StudioAWS CodeCommitAWS CodePipelineAWS CodeBuildAWS RDS PostgreSQLShell commandsYAMLDockerFlyway Also, I regularly present using Azure DevOps Pipelines too. Here's the list of tools that might be in a given demo: Local Git RepositoryVS CodeAzure Data StudioAzure Git RepositoryAzure DevOps PipelineAzure DevOps AgentRedgate DeployAzure SQL DatabaseYAMLPowerShelltSQLt While there…
Read More

Why I Support Code Automation Tools Like ORMs

DevOps
I know I'm a weirdo. I've always been a weirdo. When I was a DBA (now I only play one on TV), I was a weirdo too. Case in point, ORM tools. Whether we're talking nHibernate, Linq, or Entity Framework, the degree of loathing for these tools by most DBAs is really hard to measure. Yet, after an initial period of difficulty (here are some ancient blog posts documenting that pain), I've come to believe that code generation tools are a very important part of what we do. Further, that they are not evil, or wrong, or bad. Let's talk about this just a little. A Tale of Two Teams At my previous employer there was a degree of friction between the developers and the DBAs (shocking, right). Both sides…
Read More

The State of Database DevOps 2020

DevOps
I've been an advocate for database DevOps since before DevOps was a thing. When I first switched from being a developer full-time to being a DBA full-time, the first shock to my system (and there were a lot of them) was that people didn't put their database code into source control. Turns out, at the time, more than 20 years ago, the reason was because it was brutally difficult to do. Fast forward to today, and there are no serious impediments to implementing source control for your databases. Further, the impediments to automating more and more of development, testing, and deployments for databases are shrinking faster and faster all the time. Whether or not you're doing a literal DevOps process, the concepts of breaking down the barriers to communication, adopting…
Read More

Docker, Git and DBATools

DevOps, Professional Development
For those who don't know, last week was the PASS Summit. It's an amazing event every year, but this last week, I saw a ton of indications that our peers are spotting the changing technology landscape largely defined by three tools, Docker, Git and DBATools. None of those indications resonated quite as much as this tweet from Kevin Hill: 3 things I can no longer justify ignoring: #dbatools Git and #Docker for my dev SQL work@cl @sqldbawithbeard @Kendra_Little and @unclebiguns @GFritchey, I blame you 🤪😂There’s more but those are top 3— SQL Cyclist (@Kevin3NF) November 9, 2019 There are a million things to learn about in our rapidly shifting technological landscape, but I think this assessment, especially the way it was put, "no longer justify ignoring" really nails some of…
Read More

You Are A Coder

DevOps, Professional Development
So, you say you're a DBA. I say you're not. You say you're a system administrator. I say you're wrong. We are all coders now. Every single one of us. You are a coder. Put down the brick and let me explain. Automation There was a time when I would give a presentation to a room full of people and ask, "Who is using PowerShell right now?" and get, 15 hands out of a hundred. Last week at SQL in the City in London, the same question came up and most of the room raised their hands. What's changed? Automation. Automate all the things!!! The simple fact of the matter is, anything easy, repetitive, and quantifiable is, has been, or shortly will be, automated. You should not be spending your…
Read More

Passwords = A Good Thing

DevOps, Professional Development
Those my friends are, in my opinion, one of the single most wonderful things on earth, white chocolate macadamia nut cookies. Now, you may not like those. So, picture your own, special, favorite indulgence. Not a common indulgence either. Something truly lovely and special. Something important to you. Got it? Good. Now, I want you to equate that indulgence, whatever it might be, with the fundamental security of your systems. Let's imagine for just a moment, that you're developing a new system using the ElasticSearch database, one of the most popular data management systems on the planet right now. Did you know, by default, the basic and trial versions of ElasticSearch have security disabled? So, probably, if you're in development, you started with a trial version. If you just moved…
Read More

DevOps for the DBA, Slide Deck

DevOps
I have an all day seminar I give called "DevOps for the DBA". If you're attending, thinking of attending, or you have attended, you might want to have the slide deck to review. I have published it here at SlideShare.Net. Fair warning. The slides are not the presentation. When you're attending a class that I teach, you're there for the live, in-person, interactive event of the training. The slides are not meant to be documentation. They are simply guideposts to keep me on track and to help illustrate certain points. If they are helpful to you, I'm happy to share. I just want you to know that reading through the slides can in no way be a substitute for actually showing up. If you would like to attend this seminar,…
Read More

How Do You Make DevOps Succeed?

DevOps
I love going to SQLSaturday events because I'm always asked questions that make me think. I was just at SQLSaturday Indianapolis (a great event, if you weren't there, you missed out). I was giving a session called "Extending DevOps to SQL Server" (which I'm giving this Saturday at SQLSaturday Providence). I was talking about the fact that I've been involved in successful DevOps implementations and I've been involved in failed DevOps implementations. The question that came up was, "What were the key differences between the failed and successful organizations?" Great Question. Management Buy-In I've seen attempts to implement DevOps strictly from the IT side of things. A relatively high functioning team recognizes the benefits an agile approach that's oriented towards improved collaboration between people that uses automation in support of…
Read More

All Day Seminar on DevOps in Oslo

DevOps
In just a couple of weeks, I'll be presenting an all day session on DevOps for databases. It takes place on Friday, August 30th. You can click here now to get signed up. I have a very hard time hiding just how excited I get about DevOps. It's not just that the technology is fun. It is. It's not just that it makes for a happier work environment. It does. It's not because by using DevOps you can deliver more quality functionality, faster, for your organization. You can. No, the reason I love DevOps, as a DBA, is because it creates added protections for my production environment and my production data. You can think of the entire DevOps process as another backup, another consistency check, one more enforced referential constraint.…
Read More