What is our primary use case?
It is basically hosting the backend of our application that we write as a software development company. We're moving our educational timetabling software, which was historically an on-premise installation, to a cloud-based service offering for customers.
It is pretty much version-less in the sense that we are using whatever is presented to us and available. We are purely using the cloud-based services from Azure hosted in the cloud, which obviously and technically is version-less to some degree. We are using SQL Azure, app services, Application Gateway, key vaults, and storage solutions within Azure. It is relatively simple but sufficient for our needs at the moment.
We predominantly don't use the GUI interface. We are using Terraform as our infrastructure and code provider to manage and maintain all of the Azure components that we are using. They're offering all the integration and providing it through the APIs.
What is most valuable?
We have come from hosting on-premise for customers, or they've done it themselves with SQL. We've now taken a cloud offering for the equivalent services of standard database management and the inbuilt backup and restore offerings. The scalability is probably the biggest feature that we are benefiting from by being in the cloud.
What needs improvement?
We haven't had any major issues that have prevented us from doing stuff fundamentally. For its implementation, sometimes, it is complicated to understand what your needs are. It would be good to have a few use cases that provide different cloud variations that match on-premise installations and show how they can be moved to the cloud a bit better.
Its pricing is complicated and can be improved. We need a better offering. Making it cheaper is always a good thing for us.
For how long have I used the solution?
I have been using this solution for two years.
What do I think about the stability of the solution?
We haven't had any issues. It has been up and available and working when we needed it to. We haven't had any outages that we're aware of.
What do I think about the scalability of the solution?
There are not many users at the moment because we're still in pre-production. We're sort of in beta testing at the moment.
It probably has 50 users currently. It is not a very large tool. We are planning to expand its usage as we build out our actual software ourselves, which we're still working on. We'll be making that available to customers, and we'll be offering that as a global opportunity for customers.
How are customer service and technical support?
I have not been in touch with their technical support.
Which solution did I use previously and why did I switch?
We were just using Microsoft on-premise SQL, and we've migrated to Azure in the cloud. It basically is like for like, as far as we're concerned.
How was the initial setup?
It depends on which area you're coming from. If you're using the GUI, it's relatively simple. Understanding what your needs are sometimes is a bit more complicated. Understanding the availability of things like Elastic pools took us a little bit of time to get our heads around but, otherwise, it is pretty simple. They could provide some use cases for this.
It is hard to provide the deployment duration because it wasn't just Azure on its own that we were having to deal with. We were taking our on-premise product and converting it. Preparing the infrastructure and doing it via the likes of Terraform took us probably about three months overall, but that was more about getting up to speed on the tools to do it, as opposed to individual components such as SQL.
What's my experience with pricing, setup cost, and licensing?
The pricing is actually complicated, and that is probably one downside of it. In some respects, although we can plan for the costs on a month-by-month basis, we are finding it hard to project our costings for it.
Fundamentally, Microsoft is offering two pricing models, and it is challenging to understand the differences between the two. We're basically on the DTU model at the moment. That may change in the future as the size grows, but it is one of those things that we'll end up monitoring as we progress.
At the moment, to get a reasonable response, generally, the price is a little high for us, but it is one of those things for which we know that we can do improvements on our code. So, it is not just the service that's the problem; it is some of the things that we need to do as well.
What other advice do I have?
I would recommend it depending upon the use case. If you need an on-premise service, then you would choose the on-premise SQL, and if you need a cloud-based one, then I'd suggest SQL on the cloud. The scalability of SQL in the cloud is far simpler than the scalability of SQL on-premise. This is one benefit that the cloud edition has over the on-premise version that people could consider.
I would rate SQL Azure an eight out of 10.
Which deployment model are you using for this solution?
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?