Blog

SQL Server on Google Cloud: Managed Service Vs. Managed Storage

Since the early days of IT systems, relational databases have been the cornerstone of data persistency. The relational database name comes from its basis in the relational model, which is a way to organize data into one or more tables that have established relationships between its columns and rows. The usage of a relational database management system (RDMS) accessible using a Structure Query Language (SQL) has been for decades the most popular method to store a system metadata. The SQL tradition continues with Google Cloud databases.

In this blog post we are going to cover SQL Server deployment options, along with their benefits and drawbacks, in Google Cloud Platform.

What Is SQL Server?

Microsoft SQL Server is one of the most popular and robust relational databases in the market. Launched in 1989, this enterprise-grade database managed to stay on top of the game year after year and reinvented itself to meet the highest standards across different use cases and environments: web, data warehousing, analytics, and the cloud.

In the early days of public cloud, relational database management services by cloud providers were among the first platform services launched and a distinct way for them to compete for market share.

Microsoft made SQL Server the centerpiece of Azure’s managed database services. Yet, it’s usage is not locked to one specific cloud provider. Any organization can use SQL Server in their own cloud environment, including deployments on Google Cloud.

SQL Server and Google Cloud

With Google Cloud Platform customers have at their disposal different options to deploy a SQL Server database, either with Cloud SQL, Google Cloud managed database service or by using Compute Engine instances and a managed storage service.

SQL Server License Models

In enterprise databases such as Microsoft SQL Server, licensing needs to be taken into consideration for each deployment according to the method you chose. Using Google Cloud SQL, customers pay an extra fee in their monthly bill that includes the Microsoft licensing fee based on the chosen edition. In turn, customers that opt to deploy SQL Server using Compute Engine instances have more flexibility and can either bring their own license or purchase a subscription from the Google Cloud Marketplace.

Migrating SQL Server to Google Cloud

Existing SQL Server customers that are evaluating the option to migrate to Google Cloud will find support in moving database workloads to Compute Engine instances. Google Cloud has great services that enable an hassle free migration of both physical and virtual machines from on-premises to the cloud, such as Migrate for Compute Engine (former Velostrata) and Transfer Appliance, a hardware appliance for complex scenarios with a large volume of data and business critical operations.

Unfortunately, at the time of this writing there is no easy way to migrate directly to Cloud SQL since its migration feature only supports MySQL workloads. Customers that want to use Cloud SQL will need to migrate manually by importing their full database backups after the normal database creation process.

New call-to-action

Using the Google Cloud Built-in Service for SQL Server

Google Cloud SQL, the managed relational database service from Google, is available to all customers and supports different engines such as SQL Server, MySQL, and PostgreSQL.

For first-time database users or customers with fairly simple database requirements, this is a great option to hit the ground running quickly. Cloud SQL is a turn-key solution to deploy and run a cloud relational database that streamlines the day-to-day operations and simplifies database management tasks such as upgrading, configuration, backup, etc.  

Cloud SQL customers can deploy a database in a few minutes and get an endpoint to which their application can seamlessly connect to without having to worry about the operational overhead of maintaining a database. This is a huge benefit for customers who have simple use cases and need to get up and running very fast.

However, despite some configuration options being available, customers do not have the ability to access any servers and modify the underlying building blocks such as the operating system, storage settings, and database configuration. While you do have control over the GCP region the database is located in, you don’t have the option to migrate data to another cloud provider and, though it’s possible, migrating across GCP regions isn’t easy. Moreover, Google Cloud SQL limitations are also extended to the engine versions allowed in the platform—SQL Server 2017 Standard, Enterprise, Express and Web—which the customer is not allowed to change unless Google makes that version available. For complex use cases and enterprise customers that require full control over their database Cloud SQL is not a viable option.

Deploying SQL Server in Google Cloud with Managed Storage

Compute Engine, the core compute service in Google Cloud offers great performance and reliability. Typically using Persistent Disks, part of the built-in Google Cloud Storage Services, cloud instances enable customers to build a custom infrastructure that is both resilient and elastic.

Therefore, another popular SQL Server deployment option in Google Cloud is to use Compute Engine instances backed by a storage management solution such as Google Persistent Disks in conjunction with NetApp Cloud Volumes ONTAP. This option, where customers can install and configure SQL Server in an instance is perfect for organizations who want full control and flexibility over their enterprise-grade database workloads.

If a customer chooses to use a Compute Engine instance, there are two options to consider: install SQL Server from scratch or use a subscription from Google Cloud Marketplace. A marketplace subscription provides a ready to use Compute Engine image but carries an extra fee that typically includes the Microsoft license and support. As expected, these Compute Engine images are usually hardened following Microsoft security baseline recommendations and industry best practices, saving you some time to get up and running.

The Benefits of SQL Server on Google Cloud Compute Engine

Regardless of opting for either a Google Cloud Marketplace subscription or installing SQL Server from scratch, the key advantage of deploying directly on Compute Engine instances is control and cost savings.

Compared with Google Cloud SQL, where you pay a premium for simplicity and absence of control, the Compute Engine route gives you maximum flexibility and enables you to customize everything. That full control gives you a level of data hybridity, which is crucial in enterprise deployments. Advanced functionalities such as tuning database parameters, using RAID storage management, and data replication across regions and cloud environments are also possible. Moreover, in terms of cost, you will spend significantly less in your monthly Google Cloud bill because you can use only the cloud resources you truly need and purchase the license directly from Microsoft that best fits your needs.

Far from perfect, this option comes with its own set of drawbacks and limitations worth considering. The key factor here is time. You need to consider the time required to both setup SQL Server and operate the database in the day to day. 

To build a production-grade database deployment, an organization requires personnel with deep technical expertise in both SQL Server and Google Cloud. Database management aspects such as backup, data replication, monitoring, logging, high availability among other features required in a SQL Server deployment need to be developed and implemented before you can go live in production. 

With the help of NetApp Cloud Volumes ONTAP as a management layer on top of the Google Cloud deployment, many of these concerns can be addressed. Cloud Volumes ONTAP includes a number of benefits including: 

  • Fine control over the database configuration and components, which is not available with managed database services. 
  • Enabling the usage of any database engine, from standbys like Oracle and MySQL to newer NoSQL flavors like Mongo DB and MariaDB.
  • Intelligent caching capabilities to reduce latency whenever and wherever the data needs to be accessed.
  • Data protection via instant, quiescent NetApp Snapshot™ copies which can enable point-in-time backups for restoration and disaster recovery.
  • Cost cutting storage efficiencies that can cut down storage footprint and cost by as much as 70%.
  • Fast, seamless migration to Google Cloud from any repository with NetApp Cloud Sync or from NetApp appliances with SnapMirror®.
  • Added IaC capabilities and management ease via the NetApp Cloud Manager console or API calls.
  • FlexClone® data cloning technology makes it possible to clone entire database volumes instantly and without cost penalties.

Conclusion

A database is a critical part of your application and where your data resides. As a key element with system-wide implications, it is important that its cloud deployment is carefully planned.

The options described in this blog post are both valid but might seem quite extreme. On one side a database management service, such as Cloud SQL, that offers limited control but helps you get started fast, and on the other hand, installing SQL Server from scratch that requires you to develop database management tooling and capabilities but gives you full control and flexibility.

Can we shorten this gap? Cloud Volumes ONTAP, the storage management solution for Google Cloud from NetApp, can give you the edge you need while offering you a whole set of additional capabilities for database management that aren’t available when using a managed database service.  

Deploying SQL Server using a Compute Engine instance backed by Cloud Volumes ONTAP makes your life a lot easier by eliminating the need to build capabilities such as backups, disaster recovery and data protection by yourself from scratch. Cloud Volumes ONTAP enables extreme performance, space- and cost-efficient storage snapshots, business continuity with its high availability that ensures no data loss and a quick failover capabilities.

On top of these out of the box features, Cloud Volumes ONTAP has hybrid capabilities, which means that it works in any on-premises and cloud providers. This allows you to do seamless database and data migrations across environments giving you an increased agility and time to market. In short, it’s more database than you can get with a managed service.

New call-to-action

-