What is Azure Kubernetes Service? Probably makes sense to tell you what Kubernetes is first. As Kubernetes states themselves “also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.” If you want to dig into the depths then head over to Andrew – http://www.dbafromthecold.com
Just a really quick FYI for the readers. If you are using Managed Instances in Azure (If not, why not?) and you connect vis SSMS (SQL Server Management Studio) and run the classic commands SELECT @@VERSION, what will you see?
It is quite a common requirement to restore a copy of a database to the same Azure SQL server, you just issue a COPY OF command. What if you need to restore a copy to a different target Azure SQL server? Well its similar, just with a slight difference in that you need to refer back to the source server within your code.
Being aligned to a global cloud like Microsoft Azure you have choices. Whether that is Azure SQL Database or Azure Database for MySQL for your relational database, it does not matter that is down to you are your design choices. The point here is that Azure has variations and flexibility with so many choices and this is no different within the “Big Data” analytics space.
When moving to a cloud model for your database stack no doubt you will be involved in a costing exercise. The good news is if you have Software Assurance with your existing licenses then expect some cost savings when moving to the cloud. You can save up to 70% cost when compared to a pay as you go model.
I always follow a contained user model when setting up users within my Azure SQL Database. I do this so the user in question has access to only specific database(s) and does not have a login to the server. It becomes even more apparent the importance of this when you design a solution based on failover groups.
When a failover occurs to the secondary, I want a pleasant experience for the user. With the contained user model, the user goes with the database. I don’t want to do admin work on the new primary (post failover). Let’s see.
There is a new (ish) interface to looking and configuring backups for your Azure SQL Database. This can be found within the settings section of the SQL Server.
As you can see, by default we have 7 days retention to allow for PITR – Point In Time Recovery, anything longer you will need to setup long term retention.
If you are building database solutions in Azure , using Azure SQL Database then you will know that you have a purchasing option decision to make. That being should you use a vCore model or DTU approach?
Being in the cloud does have many benefits, from lower administration to fast scaling but another “side effect” of operating in Azure SQL Database is the cloud first nature of changes. By this I basically mean new features always get pushed to Azure first before the classic on-premises version so some gems come to light.
There are many factors to consider when you are thinking about the move to Azure SQL Database (PaaS) – this could be single databases (provisioned compute or serverless) to elastic pools. Going through your head should be how many vCores do you want? What are the I/O requirements, do we need access to certain features like in-memory OLTP? But what about the memory requirements? This has always been a key requirement for SQL Server – those wonderful words – Min / Max memory settings.
How does this relate to Azure? Well it all depends on your vCore count and the generation of hardware we select during the build process.
There are currently 4 hardware generations ( each has its own purpose) :Gen4, Gen5, Fsv2-series and M-series. Each type has xGB per vCore up to a certain max. So it is important to remember this when sizing your workloads. (screen shot summarising is below) https://docs.microsoft.com/en-us/azure/azure-sql/database/service-tiers-vcore?tabs=azure-portal
So, for example I select a provisioned Azure SQL Database – 12 vCore on Gen 4 means I will have 84GB memory available for my workload.