Two cloud database environment models exist: traditional and database as a service (DBaaS).
In a traditional cloud model, a database runs on an IT department's infrastructure via a virtual machine. Tasks of database oversight and management fall upon IT staffers of the organization.
What is Database as a Service?
By comparison, the DBaaS model is a fee-based subscription service in which the database runs on the service provider's physical infrastructure. Different service levels are usually available. In a classic DBaaS arrangement, the provider maintains the physical infrastructure and database, leaving the customer to manage the database's contents and operation.
Alternatively, a customer can set up a managed hosting arrangement, in which the provider handles database maintenance and management. This latter option may be especially attractive to small businesses that have database needs, but lack the adequate IT expertise.
Cloud database benefits
Compared with operating a traditional database on an on-site physical server and storage architecture, a cloud database offers the following distinct advantages:
- Elimination of physical infrastructure. In a cloud database environment, the cloud computing provider of servers, storage and other infrastructure is responsible for maintenance and availability. The organization that owns and operates the database is only responsible for supporting and maintaining the database software and its contents. In a DBaaS environment, the service provider is responsible for maintaining and operating the database software, leaving the DBaaS users responsible only for their own data.
- Cost savings. Through the elimination of a physical infrastructure owned and operated by an IT department, significant savings can be achieved from reduced capital expenditures, less staff, decreased electrical and HVAC operating costs, and a smaller amount of needed physical space.
In addition to the benefits of employing a cloud database environment model, contracting with a DBaaS provider offers additional benefits:
- Instantaneous scalability. Should added database capacity be necessitated by seasonal business peaks or unexpected spikes in demand, a DBaaS provider can quickly offer additional fee-based capacity, throughput and access bandwidth via its own infrastructure. A database operating in a traditional, on-site infrastructure would likely need to wait weeks or months for the procurement and installation of additional server, storage or communications resources.
- Performance guarantees. Through a service level agreement (SLA), a DBaaS provider may be obligated to provide guarantees that typically quantify minimum uptime availability and transaction response times. An SLA specifies monetary and legal remedies if these performance thresholds are not met.
- Specialized expertise. In a corporate IT environment, except for the largest multinational enterprises, finding world-class database experts may be difficult, and keeping them on staff may be cost prohibitive. In a DBaaS environment, the provider may serve thousands of customers; thus, finding, affording and keeping world-class talent is less of a challenge.
- Latest technology. To remain competitive, DBaaS providers work hard to ensure that all database software, server operating systems and other aspects of the overall infrastructure are kept up to date with security and feature updates regularly issued by software vendors.
- Failover support. For a provider of database services to meet performance and availability guarantees, it is incumbent on that provider to ensure uninterrupted operation should the primary data center fail for any reason. Failover support typically encompasses the operation of multiple mirror image server and data storage facilities. Handled properly, failover to a backup data center should be imperceptible to any customer of that service.
- Declining pricing. With advances in technology and an intensely competitive marketplace among major service providers, pricing for a wide range of cloud-computing services undergoes continual recalibration. Declining prices are a major impetus for migrating on-site databases and other IT infrastructure to the cloud.
Cloud database architecture
Cloud databases, like their traditional ancestors, can be divided into two broad categories: relational and nonrelational.
A relational database, typically written in structured query language (SQL), is composed of a set of interrelated tables that are organized into rows and columns. The relationship among tables and columns (fields) is specified in a schema. SQL databases, by design, rely on data that is highly consistent in its format, such as banking transactions or a telephone directory. Popular choices include MySQL, Oracle, IBM DB2 and Microsoft SQL Server.
Nonrelational databases, sometimes called NoSQL, do not employ a table model. Instead, they store content, regardless of its structure, as a single document. This technology is well-suited for unstructured data, such as social media content, photos and videos.
Migrating legacy databases to the cloud
An on-premises database can migrate to a cloud implementation. Numerous reasons exist for doing this, including the following:
- Allows IT to retire on-premises physical server and storage infrastructure;
- Fills the talent gap when IT lacks adequate in-house database expertise;
- Improves processing efficiency, especially when applications and analytics that access the data also reside in the cloud; and
- Achieves cost savings through several means, including:
- Reduction of in-house IT staff;
- Continually declining cloud service pricing; and
- Paying for only the resources actually consumed, known as pay-as-you-go pricing.
Relocating a database to the cloud can be an effective way to further enable business application performance as part of a wider software-as-a-service deployment. Doing so simplifies the processes required to make information available through internet-based connections. Storage consolidation can also be a benefit of moving a company's databases to the cloud. Databases in multiple departments of a large company, for example, can be combined in the cloud into a single hosted database management system.
How does a cloud database work?
From a structural and design perspective, a cloud database is no different than one that operates on a business's own on-premises servers. The key difference lies in where it resides.
Where an on-premises database is connected to local users through a corporation's internal local area network (LAN), a cloud database resides on servers and storage furnished by a cloud or DBaaS provider, and it is accessed solely via the internet. To a software application, for example, a SQL database residing on-premises or in the cloud should appear identical.
Accessed either through direct queries (such as SQL statements) or via API calls, the database's behavior should be the same. However, it may be possible to discern small differences in response time. An on-premises database, accessed via a LAN, is likely to provide slightly faster response than a cloud-based database, which requires a round trip on the internet for each interaction with the database. In practice, however, the differences are likely to be small.