More about AWS Database
- AWS PostgreSQL: Managed or Self-Managed?
- MySQL Database Migration: Amazon EC2-Hosted vs. Amazon RDS
- AWS MySQL: MySQL as a Service vs. Self Managed in the Cloud
- Database Case Studies with Cloud Volumes ONTAP
- Amazon DocumentDB: Basics and Best Practices
- AWS NoSQL: Choosing the Best Option for You
- AWS Database as a Service: 8 Ways to Manage Databases in AWS
- AWS Database Migration Service: Copy-Paste Your Database to Amazon
- AWS Oracle RDS: Running Your First Oracle Database on Amazon
- SQL Server in AWS: Two Deployment Options
- DynamoDB Pricing: How to Optimize Usage and Reduce Costs
- AWS Database Services: Finding the Right Database for You
- Overcome Amazon RDS Instance Size Limits with Data Tiering to Amazon S3
AWS Database as a Service (DBaaS) offerings enable cloud users to leverage cloud-based databases without doing administrative infrastructure work. Each AWS DBaaS offers different types of uses, functionalities, and management levels.
In this post, we’ll review eight types of AWS Database as a Service, including relational, key-value, in-memory and graph databases, and present real life case studies of DBaaS deployments. We’ll also show how NetApp Cloud Volumes ONTAP can extend the storage capabilities provided by AWS Database as a Service offerings.
In this article, you will learn:
- What is Database as a Service (DBaaS)
- AWS database types
- Benefits of using Amazon DBaaS
- AWS DBaaS case studies
- AWS Database as a Service with Cloud Volumes ONTAP
What Is Database as a Service?
Database as a Service (DBaaS) is a software service that you can use to set up, operate, and scale databases without having to understand or manage the underlying structure. These services abstract away the specifics of a database to enable you to use it uniformly via standardized API calls or a user interface (UI). With DBaaS, the host platform is responsible for ensuring database functionality, maintenance, updates, and infrastructure.
Database as a Service is a common method for accessing and using databases in the cloud. The alternative is to host a database on an instance or virtual machine, mirroring how databases are hosted on-premises.
AWS Database Types
Within AWS, there are many database services you can choose from. All of these services are either fully or partially managed and can be connected to many other AWS services or external resources.
The types of databases Amazon offers, and the main database services for each type, include:
- Relational database—includes AWS Aurora, Amazon RDS, and Amazon Redshift. These databases are used to support traditional applications, eCommerce, ERP applications, and CRMs.
- Key-value database—includes DynamoDB. These databases are used for high-traffic web apps, eCommerce, and gaming applications.
- In-memory database—includes Amazon ElastiCache for Memcached and Redis. These databases are used for caching, session management, gaming leaderboards, and geospatial applications.
- Document database—includes Amazon DocumentDB (with MongoDB compatibility). These databases are used for content management, catalogs, and user profiles.
- Wide column database—includes Amazon Keyspaces (for Apache Cassandra). These databases are used for high scale industrial apps for equipment maintenance, fleet management, and route optimization.
- Graph database—includes Amazon Neptune. These databases are used for fraud detection, social networking, and recommendation engines.
- Time series database—includes Amazon Timestream. These databases are used for IoT applications, DevOps logging, and industrial telemetry.
- Ledger database—includes Amazon QLDB. These databases are used for systems of record, supply chain, registrations, and banking transactions.
What Is Unique About Amazon Database as a Service Offerings?
According to Forrester, Amazon offers the largest variety of DBaaS offerings of all major cloud providers. This includes support for deployments of most complexities and for a growing number of database engines. AWS also offers robust support for both homogeneous and heterogeneous database migrations, flexible resource provisioning, built-in security, and options for high-availability and replication.
The Purpose-Built Database Model
A key focus of the AWS DBaaS offering is that there is a purpose-built option for all major use cases. These options reflect the needs of production workloads and enable you to get started quickly, without extensive customizations.
Additionally, because many AWS services can be interconnected, you have the flexibility to choose multiple database services to meet individual workload needs. This enables you to select the best fit database for your services rather than trying to force all services to fit one data model.
AWS Database as a Service Case Studies
Below are a few customer use cases that can give you an idea of how AWS DBaaS is used for real world deployments.
Airbnb is one company that is taking advantage of Amazon Relational Database Service (RDS) with the RDS MySQL engine. After a year of operations, the company decided to move to the cloud and was able to complete their migration with a mere 15 minutes of downtime. RDS enabled them to reduce time spent on administrative tasks, like scaling and data replication, by allowing management tasks to be completed through the AWS Management Console or via API calls.
Eventually, Airbnb decided to further downgrade their responsibilities by moving from AWS RDS to AWS’ proprietary database, Aurora. This improved their scalability, read/write performance, and lag time. It also enabled them to minimize replica creation and improve failover and recovery times.
Duolingo is another organization that is operating with the help of several AWS database services. They are using solutions based primarily on Amazon DynamoDB to support personalized language learning content for up to six billion lessons per month. This means at least 24k reads and 3k writes each month. With DynamoDB, Duolinguo can scale and provide high-concurrency access as needed while optimizing costs.
Duolingo is also using Amazon ElastiCache, AWS Aurora, and Amazon Redshift services. ElastiCache enables them to provide instant access to content, Aurora serves as a transactional database for user data, and Redshift supplies data analytics.
Shine Technologies is an organization that developed custom billing applications for utility companies. Originally, these applications required Oracle databases that were hosted on-premises. However, the cost of this operation for enterprise-scale customers was more than Shine wanted to manage.
Shine used RDS to run a 10-year-old legacy version of Oracle. They configured Multi-Availability Zone (Multi-AZ) deployments for high availability, and used automated snapshots for faster replication and backup. For each database instance, they are using RDS Provisioned IOPS to ensure that resources meet the thousands of I/O operations per second (IOPS) that their customers require.
AWS Database as a Service with Cloud Volumes ONTAP
NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP supports up to a capacity of 368TB, and supports various use cases such as file services, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, storage efficiencies, Kubernetes integration, and more.
In particular, Cloud Volumes ONTAP helps in addressing database workloads challenges in the cloud, and filling the gap between capabilities provided by AWS Databases as a Service offerings and the public cloud resources it runs on.