New episode in our series analyzing AWS pricing. After discussing the pricing of computing power and storage services, it's time to tackle another big chunk: AWS databases.
The 8 AWS database models
The first thing to know, or to remember for those who are already familiar with the subject, is that there are several types of databases that allow different treatments and interactions. This article will focus on these different types of databases. We will present the type of database, the service we will talk about and finally the associated pricing.
To analyse the pricing of these different types of databases, we will therefore group the different AWS databases by family, to enable you to identify which service offers which possibilities.
Please note: we have chosen to present you only the functioning of the pricing in this article. We will not mention the free offers offered by AWS on most of these products. We advise you to be attentive and to take advantage of all these offers which can allow you to take in hand most of the database services.
Here is the program for this article:
I - Relational databases
Relational databases store data with predefined
data with predefined schemas that communicate with each other. They are
generally used for traditional applications, CRM, ERP or e-commerce.
AWS offers three types of relational databases. These different services all offer more or less comparable functionalities. The nuance is largely based on the level of management of these different services. We will present these three services from the most managed to the least managed. Obviously, the price of these solutions is greatly impacted by this nuance and it is up to you to choose which solution you want to go for. A managed product will save you precious time, at the expense of a sometimes higher bill and vice versa.
Are you the type who saves time or manages everything by yourself?
A - Pricing of Amazon Aurora
Simply put: Amazon Aurora is a relational database compatible with MySQL and PostGreSQL. The advantage that Amazon highlights: the speed of processing. Up to 5 times faster than a standard MySQL database and up to 3 times faster than a standard PostGreSQL database. All at an unbeatable price. Amazon Aurora is very often used for SaaS applications, business applications or mobile/web games.
Amazon Aurora pricing is based on the database instances you consume. AWS charges you per hour of instance consumed. Partial hours will be billed in one-second increments, subject to a minimum usage of 10 minutes. In addition to these instances, you will also pay for storage in GB/month, I/O in increments of millions of queries, and storage of backups on your DB (also in GB/month).
Data transfers may include additional charges, as is often the case with public cloud providers. Note that data transfer between different availability zones for database cluster replication is free of charge.
For data transfer between an Amazon EC2 instance and an Amazon Aurora DB instance located in different availability areas within the same region, the Amazon EC2 regional data transfer charges apply.
B - Amazon Redshift Pricing
Amazon Redshift is the famous Data Warehouse that AWS has been offering for many years. Amazon Redshift allows you to query petabytes of data using standard SQL. It is generally very useful for business intelligence or operational analysis of business events.
Your choice of Amazon Redshift storage facility will determine the pricing you receive. The sizing calculator, which is integrated directly into the Redshift console, will show you the pricing associated with your needs. It's up to you to decide which configuration to go for. Of course, as always in the Cloud, this choice is not set in stone and you can adjust your choices with a simple click or API call.
Amazon Redshift pricing is based on the on-demand model and varies depending on the type and number of nodes in your cluster.
Our advice: don't think too big right away. It's smarter to opt for a limited architecture that will evolve over time, rather than oversizing your Amazon Redshift at the time of subscription.
It's always possible to adapt, you know?
Also, Amazon Redshift allows the adaptation of simultaneity. It allows you to automatically add transient capacity to ensure optimum performance at all times. Of course, you will be charged for this simultaneity, but only if you use it and only per second of use.
The Case of Amazon Redshift Spectrum
Amazon Redshift Spectrum is a service for executing SQL queries on multiple exabytes of data in Amazon S3. You are billed based on the number of bytes analyzed by Redshift Spectrum, rounded up to the nearest megabyte, with a minimum of 10 MB per query.
You can optimize performance and reduce costs by storing your data in columnar, partitioned and compressed format.
Since Amazon Redshift queries directly on Amazon S3, additional costs related to Amazon S3 apply according to standard pricing. For more information on this topic, please read our article on storage pricing at AWS.
Reserving database instances
AWS offers instance booking for its database services. Concretely, you commit yourself to consume instances over a period of 1 or 3 years, while benefiting from a significant discount. This is an approach that can also be found on EC2 services for example.
3 types of engagement exist on AWS:
- Monthly payment, with no initial advance
- Partial initial payment: you pay a part at the beginning, then a smaller amount monthly.
- The total down payment: you pay everything in advance and get the best possible discount
Booking BDD instances on AWS can save you up to 75% compared to on-demand pricing. If your application allows you to do so, you are always strongly advised to think about it.
Please note: for AWS regulars, you may be familiar with Saving Plans, a kind of new generation instance reservation. Please note that AWS has not yet extended this new billing model to BDD instances. So you will have to make do with reserved instances. That's not so bad, is it?
C - Amazon RDS Pricing
We now move on to the last relational database service
relational database service of this article: Amazon Relational Database Service. Amazon
RDS, for those who know it well. This service, well known by AWS users, allows you to
allows you to install, manage and scale a relational database easily in the
relational database easily in the cloud.
The pricing for Amazon RDS is fairly easy to summarize: you can choose to use on-demand or reserved instances, as with most other AWS services. There is no minimum charge.
The rates will vary according to the type of optimized instance you decide to use, depending on your use case. All depends finally on the Amazon RDS database engine you will use:
- Amazon Aurora
- SQL Server
Prices vary by jurisdiction and region, but the operation remains the same. Refer to the previous paragraph on Amazon Aurora for more information.
II - Key-Value Databases
Key-value databases are optimized for
common access patterns, typically for storing and retrieving large volumes of data.
volumes of data. Fast response time guaranteed, even for large or concurrent
or concurrent volumes. They are typically used for high traffic web applications
web applications, e-commerce systems and gaming applications.
A - Amazon DynamoDB Pricing
Amazon DynamoDB is a key-value and document database. Regardless of its size, its latency performance can reach milliseconds. It is a fully managed multi-region, multi-master database and a sustainable database with integrated security, backup, restore and cache systems for Internet applications. DynamoDB can handle more than 10 trillion requests per day and support peaks of 20 million requests per second. Not bad, right?
Amazon DynamoDB pricing is based on several points. You pay for reading, writing, and storing data in DynamoDB tables, as well as for optional features you subscribe to.
Two pricing models exist:
- Payment on demand: you only pay for what you consume, month after month. Useful for unpredictable applications and unknown workloads.
- Capacity allocation: you anticipate your consumption and can benefit from an interesting reduction. Useful for predictable applications with high traffic volumes.
III - In-memory databases
In-memory databases are used for
applications that require real-time access to data. They
allow access in microseconds to applications for which milliseconds are not
milliseconds are not sufficient. They are generally used for
caching, session management, scorecards or geospatial applications.
A - Amazon Elasticache Pricing
Amazon ElastiCache allows you to seamlessly configure, run and scale
seamlessly scale open source compatible data storage in the cloud.
data storage in the cloud. It allows you to cache a large portion of your data
of your data storage to ensure optimal response time. It is therefore
for applications that require ultra-fast response times.
Amazon Elasticache is often compared to the Open Source solution Elastic Search. Globally, the services are indeed similar, but Amazon Elasticache certainly offers a more managed offer than Elastic Search.
Amazon Elasticache pricing varies depending on the type of node you choose and takes into account the number of node hours consumed between the time the node is launched and the time it is stopped. Each partially consumed node hour is billed as a full hour.
Without wanting to be redundant, you can opt for either payment on demand or booking. As you can see, booking will allow you to make interesting savings, but it does not always adapt to unpredictable applications.
Finally, additional charges may apply for data transfers. Transfers within the same availability area are not charged. However, you will be billed for the rest according to the current rate, which you can find on your Amazon console.
IV - Databases Document
A document database is designed to
store semi-structured data in the form of JSON documents. They
are generally used to create and update applications quickly.
applications. They are generally used to manage content, catalogs or user profiles.
catalogs or user profiles.
A - Amazon DocumentDB Pricing
Amazon DocumentDB is a non-relational database service
relational database service that provides the performance, scalability, and availability
necessary to support large-scale MongoDB workloads.
scale. The unbundling of compute and storage enables independent scaling
independent scaling of operations.
As with most AWS BDD services, Amazon DocumentDB pricing is shown per hour consumed. Partial hours are charged by the second. Please note: Only the on-demand billing model is available for Amazon DocumentDB. You cannot book your instances in advance to take advantage of a discount, as may be the case for many of the other services discussed earlier in this article.
In addition to DB instances, you also pay for database storage in GB/month and I/O in millions of queries. There may also be a charge for the storage of your backups, should you exceed 100% of the total storage consumed by your cluster. In practice, this situation is quite rare and most Amazon DocumentDB users do not use all of their storage space.
Finally, keep in mind that data transfers may incur additional costs and that pricing varies depending on the region in which you deploy your service.
V - Large column databases
Large column databases are different from relational databases in one
different from relational databases in one respect: the names and format of each column can
format of each column can vary from one row to another, all in the same table.
same table. They are generally used by large-scale industrial applications for everything that
industrial applications for everything related to equipment maintenance, fleet management
equipment maintenance, fleet management and routing optimization.
A - Amazon Managed (Apache) Cassandra Service Pricing
Amazon Managed Cassandra Service is the AWS database service
database service from AWS that is compatible with Apache Cassandra. This database service allows you to
Cassandra workloads directly through the AWS console, using the same application
using the same application code and developer tools you already use today.
already use today.
Amazon Managed (Apache) Cassandra Service pricing is based on the read, write, storage, and network resources you use.
Amazon MCS offers 2 capacity modes, which allow you to
to adapt your consumption and make savings according to your needs
- The on-demand capacity mode allows you to pay only for the readings and postings that you actually make. As with all other on-demand services, this capacity mode is suitable for applications with fairly unpredictable and variable traffic.
As an example, you will
pay $1.7221 for your write and read-on-demand units in the Europe
request units in the Europe - Paris region.
- Allocated capacity mode allows you to anticipate your needs and provision the number of reads and writes per second that your application may require. Like reserved instances, you will then benefit from a discount on your total invoice. It is interesting to note that you can increase or decrease the allocated capacity directly in the AWS console.
For example, you will
pay $0.0008908 for your
writing request units and $0.0008908 your
read request units in the Europe - Paris region.
As always, we specify: you also pay for storage in GB/month, data transfers (except in special cases) and rates vary according to the region of deployment.
VI - Graphical databases
Graphical databases are designed for applications that need to
applications that need to explore and query millions of relationships between
relationships between highly connected graph datasets, all with millisecond latency and large
with millisecond latency and at large scale. They are
typically used for fraud detection, social networks or recommendation engines.
A - Amazon Neptune pricing
Amazon Neptune is a database service designed to
graphical data visualization. It allows the execution of
of highly connected datasets. Amazon Neptune is for example
very well suited to managing social databases, such as those found on social
social networks for example. The management of interactive graphs allows to
highlight privileged social relationships for example.
Amazon Neptune's pricing is fairly simple to understand: only payment on demand is available. So you only pay your database on time, with no provisioning, no advance payment (and no discount, too) possible. You therefore pay for the use of your database per hour, as well as storage in GO/month, I/O in millions of requests and backup storage.
As always, there are no surprises: don't forget to anticipate data transfers and the variation in rates according to the selected regions.
VII - Time series databases
Time series databases centralize and exploit changing data, with queries covering regular time intervals. They are generally used for IoT, DevOps or industrial telemetry applications.
A - Amazon Timestream Pricing
Amazon Timestream is a database service tailored to IoT and operational
IoT and operational applications. Timestream databases
allow to follow the evolution of data over time and the IoT is a sector where the growth of data is
IoT is a sector where the growth of data is the strongest. Amazon Timestream can also be used for
also be used for application monitoring, to analyze your customer's
or for industrial telemetry for example.
In this regard, AWS offers many IoT services such as
AWS IoT, IoT Core or IoT Device Management for example. The use of Amazon
Timestream can allow to follow the evolution of the data of these different
services over time.
Amazon Timestream's pricing is based on several points, which are billed separately: entries, stored data, and data analyzed by queries. You only pay on demand and Timestream automatically adjusts your storage, writing and query capacity according to your consumption.
- Postings are billed per million entries to a table. Each posting is counted in units of 1KB.
- Queries are billed per TB of data verified by each query.
- Storage is charged per GB of storage space (SSD, memory or magnetic) used by your tables.
Remember: data transfers incur additional charges
additional costs depending on certain criteria. Please be careful.
VIII - Registry databases
Registry databases provide a centralized and reliable authority to
authority to maintain a scalable, immutable and cryptographically verifiable record of
immutable and cryptographically verifiable record of transactions for each
application. They are typically used for systems of record, supply chains
supply chains, registrations or banking transactions.
A - Amazon Quantum Ledger Database (QLDB) Pricing
Amazon QLDB is a fully managed registry database that provides
registry that provides transparent, immutable, cryptographically verifiable transaction logs
cryptographically verifiable transaction logs owned by trusted central agencies.
Amazon QLDB is a frequently used service in the Financial
manufacturing, insurance, human resources, or retail industries, often for the
often for the implementation of centralized and efficient registries.
Often compared to a blockchain service, Amazon QLDB is not quite a blockchain
is not quite one. The difference: Blockchain technology is based on the
decentralization of information and the absence of a central authority.
Amazon QLDB combines the data integrity of the blockchain with a central data
central data warehouse.
Amazon QLDB pricing is based on the pay-per-use model.
on-demand model. You pay for several entities separately:
- Your I/O write requests are billed in millions of requests
- Your I/O read requests are billed in millions of requests
- Log storage is charged in GB/month.
- Indexed storage is billed in GB/month.
- Data transfers vary by region and by specific cases
IX - AWS database pricing summary table
If you are interested in pricing the full range of AWS services, we have worked on several articles to help you understand how AWS pricing works.
Find the links to our old articles below: