Abstract: Think infrastructure in the cloud is still just for sysadmins? Think again! As your organization moves into the cloud, infrastructure skills are more important than ever for DBAs to master. Expert knowledge of cloud-related infrastructure will help you maintain performance and availability for databases in the cloud. For example, know what an IOP is? How many does your database consume during a given day? Properly sizing a cloud database depends on your knowledge of this metric. Failure to properly configure storage performance at the time of deployment will slow down your SQL Server considerably. Come learn many of the key cloud infrastructure points that you should master as the DBA role continues to evolve!
You might have noticed that I’ve been pretty quiet as of late. We’re working on a super top secret internal project here at my company, and we’ve got the need to ingest a LOT of data around the clock for some analytics work. My preferred DBMS is, of course, Microsoft SQL Server, and like a lot of DBAs, we want to make this swiss army knife of a relational DB platform do everything we can dream up. Thankfully, it can perform most of the tasks we throw at it pretty well. But, the pragmatist in me asks – “Is this the best tool for the job?”. Because we’re just starting this project, we can step back a bit and look at all of our options.
For our project, we do not want to deal with a datacenter of our own. Yes, we’re known as on-prem virtualization enthusiasts, and there in certainly many reasons for keeping things on-prem for some time to come, but cloud is the right choice for us for this project. We’re working on the cloud platforms just as much as we are on-prem these days, and we’re seeing the shift occurring in the industry.
Take a look at the costs of SQL Server licensing in the cloud. To design a SQL Server that can consume upwards of a few million data points a minute, we’re likely to need to spend quite a bit of capital on this platform. It’s just overkill for a straightforward ingestion then export platform. Then, we need to accommodate high availability, disaster recovery, reporting, and analytics needs.
Now, it’s not as simple as that. Cosmos DB is a collection of APIs for different database types under the hood.
Each one are used differently, and all of the options include many differences in operation and architecture. Of the five listed platform APIs, which should we use? That’s a good question. For this particular project, we want the ability to store tons of inbound data and then will be pulling it out for analysis. Azure Table API seems to work best for this purpose.
SO! Over the next few months, expect a number of blog posts from me here exploring Azure Table on Cosmos DB and the questions, challenges, and experiences we have on ramping up on this new platform.
I recently had a great question on some of the differences in virtual machine disk presentation from one of our amazing clients, and I thought I’d share the answer here because it’s a common question that I receive.
Some hypervisors (including some hyper-converged compute platform vendors who shall remain nameless) do not give you much flexibility in the way storage is presented to a VM. You pick the VM and click to add drives. That’s it. No knobs to turn, no mess, no fuss. It’s meant to be easy, and for almost all situations, that’s just fine.
But, that might not be the completely optimal way to configure a VM that is hungry for I/O (such as a large SQL Server), if you have the option to configure it a bit more closely.
I’m thrilled to have contributed a blog post on how SQL Servers, VVols, and Pure Storage’s unique implementation of VVols combines to make SQL Server DBA jobs better over at Pure’s blog. Pure’s implementation of VVols is simplifying our world and improving our ability to support our businesses. Read more on it here!
Next in our SQL Server on Linux series is one important question. On Windows, if you’re about to run out of space, you get your VM admin / storage admin to expand one or more of your drives, and you go to Disk Management and expand the drive with no downtime. How do we accomplish this same task on Linux?