AWS Databases
Purpose-built databases for all your application needs
As the cloud continues to drive down the cost of storage and compute, a new generation of applications have emerged, creating a new set of requirements for databases. These applications need databases to store terabytes to petabytes of new types of data, provide access to the data with millisecond latency, process millions of requests per second, and scale to support millions of users anywhere in the world. To support these requirements, you need both relational and non-relational databases that are purpose-built to handle the specific needs of your applications. AWS offers the broadest range of databases purpose-built for your specific application use cases.
Our fully managed database services include relational databases for transactional applications, non-relational databases for internet-scale applications, a data warehouse for analytics, an in-memory data store for caching and real-time workloads, a graph database for building applications with highly connected data, a time series database for measuring changes over time, and a ledger database to maintain a complete and verifiable record of transactions. If you are looking to migrate your existing databases to AWS, the AWS Database Migration Service makes it easy and cost effective to do so.
Database Services
Relational databases store data with pre-defined schema and relationships between them, designed for supporting ACID transactions, maintaining referential integrity, and data consistency.
Used for: Traditional applications, ERP, CRM, and e-commerce.
AWS Offerings
In-memory databases are used for applications that require real time access to data. By storing data directly in memory, these databases provide microsecond latency where millisecond latency is not enough.
Used for: Caching, gaming leaderboards, and real-time analytics.
AWS Offerings:
Ledger databases are used when you need a centralized, trusted authority to maintain a scalable, complete and cryptographically verifiable record of transactions.
Used for: Systems of record, supply chain, registrations, and banking transactions.
Key-value databases are optimized to store and retrieve key-value pairs in large volumes and in milliseconds, without the performance overhead and scale limitations of relational databases.
Used for: Internet-scale applications, real-time bidding, shopping carts, and customer preferences.
Graph databases are used for applications that need to enable millions of users to query and navigate relationships between highly connected, graph datasets with millisecond latency.
Used for: Fraud detection, social networking, and recommendation engines
Document databases are designed to store semi-structured data as documents and are intuitive for developers to use because the data is typically represented as a readable document.
Used for: Content management, personalization, and mobile applications.
Time series databases are used to efficiently collect, synthesize, and derive insights from enormous amounts of data that changes over time (known as time-series data).
Used for: IoT applications, DevOps, and industrial telemetry.
Why AWS Databases?
Purpose-built
AWS’s portfolio of purpose-built databases supports diverse data models and allows you to build use case driven, highly scalable, distributed applications. By picking the best database to solve a specific problem or a group of problems, you can break away from restrictive one-size-fits-all monolithic databases and focus on building applications to meet the needs of your business.
Scalable
With AWS Databases, you can start small and scale as your applications grow. You can scale your database's compute and storage resources with only a few mouse clicks or an API call, often with no downtime. Because purpose-built databases are optimized for the data model you need, your applications can scale and perform better than when built using one-size-fits-all monolithic databases.
Fully managed or serverless
With AWS databases, you don’t need to worry about database management tasks such as server provisioning, patching, setup, configuration, backups, or recovery. AWS continuously monitors your clusters to keep your workloads up and running so that you can focus on higher value application development.
Enterprise-class
AWS databases are built for business-critical, enterprise workloads, offering high availibilty and reliability. You have full oversight of your data multiple levels of security, including network isolation using Amazon VPC, encryption at rest using keys you create and control through AWS Key Management Service (KMS), and encryption-in-transit.
Hundreds of thousands of customers rely on AWS databases
Common use cases
Real-time
Real-time application use cases such as gaming leaderboards, ride-hailing, social media messaging, and online shopping need microsecond latency and high throughput. You can improve the performance of your real-time application use cases by retrieving information from fast, managed, in-memory data stores and caches, instead of relying entirely on slower disk-based databases. Amazon ElastiCache is a Redis or Memcached-compatible in-memory data store and caching service in the cloud that makes it easy to deploy, run, and scale an in-memory data store and cache in the cloud. Amazon ElastiCache combines the speed, simplicity, and versatility of open-source Redis and Memcached with manageability, security, and scalability from Amazon to power your most demanding real-time applications.
In Memory Caching Example:
"Tapjoy's mobile app network spans over 9,000 applications and 250 million global consumers on smartphones and tablet devices. We cache real-time statistics and metadata associated with mobile applications for faster access. Amazon ElastiCache has significantly reduced our exposure to Cache Node failures by continuously monitoring the health of our cache cluster and automatically replacing failed nodes. We are very thrilled about the management capabilities of Amazon ElastiCache and are using it in production to power some of our mission-critical and very high throughput applications."
Ryan Johns, Vice President of Technology - Tapjoy
Internet scale use cases
Gaming Application Example:
"With Zynga Poker, we moved a MySQL farm, which required dedicated in-house resources to manage, over to Amazon DynamoDB, which is a fully managed service. It’s resulted in dramatically reduced operational overhead. ..and separately, we’ve gotten a massive performance boost on a Zynga Poker database cluster, with queries that used to take 30 seconds now taking one second. That’s just by taking advantage of the architecture’s modern instance classes--and more importantly, leveraging the continual innovation and investments that AWS makes in systems and the constant discounts it provides."
Dorion Carroll, Chief Information Officer - Zynga
Migrate to fully managed open source databases
Mobile and web applications generate millions of read and write requests per day, creating high performance demands on popular open source databases like MySQL, PostgreSQL, and Redis. By moving your open source databases to fully managed services like Amazon RDS and Amazon ElastiCache, you can eliminate the need to build and manage your own clusters, ensuring highly availability and performance while reducing operational overhead.
Transactional Database with Caching Example:
"TalentBin by Monster made the move to Aurora so as to reduce operational over-head and management of MySQL, which in turn allowed our development team to focus on innovation. Aurora offered significantly faster replication, providing larger write operations that wouldn't impact any downstream applications. Plus, Aurora’s tools eliminated the need to allocate excessive storage to account for usage and growth demands, which adds even more value and savings. Aurora made it possible for our team to consolidate various databases, reducing our database instance count by roughly 40%. Other gains were earned through automatic snapshots and point-in-time restoration, providing true operational improvements. All of these features made migrating to Aurora an easy decision for us."
Travis Theune, Sr. Site Reliability Engineer - TalentBin
Case studies
Airbnb is using DynamoDB to store user search history due to the data volume and need for quick lookups to enable personalized search, ElastiCache to store session state in-memory for faster (sub-millisecond) site rendering, and RDS as their primary transactional database.
Capital One uses RDS to store transaction data for state management, Redshift to store web logs for analytics that need aggregations, and DynamoDB to store user data to provide quick access to customers via their mobile app.
Johnson and Johnson is using RDS, DynamoDB, and Redshift to minimize time and efforts spend on gathering and provisioning data and quickly deriving insights. AWS database services are helping Johnson and Johnson improve physician compliance, optimize supply chain, and discover new drugs.
Expedia built a real-time data warehouse for lodging market pricing and availability data for internal market analysis using Aurora, Redshift, and ElastiCache. The system processes high-volume lodging pricing and availability data, performing a multi-stream union and self-join with a 24-hour lookback window.
Related content
Managing databases to run at scale, with high availability and reliability is difficult, time consuming and expensive. Learn how organizations are migrating their databases to AWS and how to get started for free.
Werner Vogels' blog on the emergence of purpose-built databases and the evolution of the modern appliication workload, requiring increased functionality, performance, and scale.
Attend this tech talk to learn why you should pick different database services to address specific application issues and watch a demonstration about which application use cases lend themselves well to which database services.
In this tutorial, you’ll build your first modern application on AWS. Modern applications are resilient, scalable collections of independent services that abstract away the underlying infrastructure.