Need advice about which tool to choose?Ask the StackShare community!

Amazon Aurora

800
735
+ 1
55
Amazon Redshift

1.5K
1.4K
+ 1
108
Add tool

Amazon RDS for Aurora vs Amazon Redshift: What are the differences?

Introduction

In this article, we will discuss the key differences between Amazon RDS for Aurora and Amazon Redshift. Both services are offered by Amazon Web Services (AWS) and are part of their database portfolio. Understanding these differences will help developers and system administrators make informed decisions about which service to use for their specific use cases.

  1. Data Storage Architecture: One of the key differences between Amazon RDS for Aurora and Amazon Redshift lies in their data storage architecture. Aurora is a relational database service built for compatibility with MySQL and PostgreSQL, while Redshift is a fully managed data warehousing service. Aurora uses a distributed storage system that replicates data across multiple Availability Zones, providing high availability and durability. In contrast, Redshift uses columnar storage for efficient querying and compression, optimized for large-scale analytical workloads.

  2. Transaction Processing vs. Analytics: Another significant difference between Aurora and Redshift is their respective focus on transaction processing and analytics. Aurora is designed for OLTP (Online Transaction Processing) workloads, where the emphasis is on handling high volumes of small, individual queries with low latency. On the other hand, Redshift is optimized for OLAP (Online Analytical Processing) workloads, allowing for complex queries on large datasets with high-performance parallel analytics.

  3. Replication: Aurora offers automated, continuous replication of data across multiple Availability Zones, providing fast failover and fault tolerance. This helps ensure high availability and durability of data. In contrast, Redshift does not offer built-in replication across regions, but users can create their own replication solutions using tools like AWS Database Migration Service or Snapshot Copy.

  4. Scalability: Aurora and Redshift also differ in terms of scalability. Aurora allows for both vertical and horizontal scaling, where users can increase the capacity of individual instances or add more instances to the cluster. This enables Aurora to handle growing workloads and provides flexibility in resource allocation. Redshift, on the other hand, is primarily designed for parallel processing of large datasets. Users can scale Redshift by adding more nodes to the cluster, offering greater compute power and storage capacity.

  5. Querying and Performance: Aurora is compatible with MySQL and PostgreSQL, meaning that existing applications built on these databases can run on Aurora with minimal changes. This allows for easier migration and reduces the need for extensive rewrites. Redshift, on the other hand, uses a slightly modified version of PostgreSQL and requires specific tuning and optimization for best performance. Its columnar storage and parallel processing capabilities make it highly efficient for complex analytical queries.

  6. Pricing: The pricing models of Aurora and Redshift differ as well. Aurora is billed based on the instance size and storage used, with separate pricing for read and write instances. Redshift, on the other hand, has a more complex pricing structure that takes into account the number of nodes, data transfer, and backup storage. It is important to carefully evaluate the pricing models to determine the most cost-effective option based on usage patterns and requirements.

In summary, the key differences between Amazon RDS for Aurora and Amazon Redshift lie in their data storage architecture, focus on transaction processing vs. analytics, replication capabilities, scalability options, querying and performance characteristics, and pricing models. Developers and system administrators must consider these differences when selecting the appropriate service for their specific use cases.

Advice on Amazon Aurora and Amazon Redshift

We need to perform ETL from several databases into a data warehouse or data lake. We want to

  • keep raw and transformed data available to users to draft their own queries efficiently
  • give users the ability to give custom permissions and SSO
  • move between open-source on-premises development and cloud-based production environments

We want to use inexpensive Amazon EC2 instances only on medium-sized data set 16GB to 32GB feeding into Tableau Server or PowerBI for reporting and data analysis purposes.

See more
Replies (3)
John Nguyen
Recommends
on
AirflowAirflowAWS LambdaAWS Lambda

You could also use AWS Lambda and use Cloudwatch event schedule if you know when the function should be triggered. The benefit is that you could use any language and use the respective database client.

But if you orchestrate ETLs then it makes sense to use Apache Airflow. This requires Python knowledge.

See more
Recommends
on
AirflowAirflow

Though we have always built something custom, Apache airflow (https://airflow.apache.org/) stood out as a key contender/alternative when it comes to open sources. On the commercial offering, Amazon Redshift combined with Amazon Kinesis (for complex manipulations) is great for BI, though Redshift as such is expensive.

See more
Recommends

You may want to look into a Data Virtualization product called Conduit. It connects to disparate data sources in AWS, on prem, Azure, GCP, and exposes them as a single unified Spark SQL view to PowerBI (direct query) or Tableau. Allows auto query and caching policies to enhance query speeds and experience. Has a GPU query engine and optimized Spark for fallback. Can be deployed on your AWS VM or on prem, scales up and out. Sounds like the ideal solution to your needs.

See more
Decisions about Amazon Aurora and Amazon Redshift
Julien Lafont

Cloud Data-warehouse is the centerpiece of modern Data platform. The choice of the most suitable solution is therefore fundamental.

Our benchmark was conducted over BigQuery and Snowflake. These solutions seem to match our goals but they have very different approaches.

BigQuery is notably the only 100% serverless cloud data-warehouse, which requires absolutely NO maintenance: no re-clustering, no compression, no index optimization, no storage management, no performance management. Snowflake requires to set up (paid) reclustering processes, to manage the performance allocated to each profile, etc. We can also mention Redshift, which we have eliminated because this technology requires even more ops operation.

BigQuery can therefore be set up with almost zero cost of human resources. Its on-demand pricing is particularly adapted to small workloads. 0 cost when the solution is not used, only pay for the query you're running. But quickly the use of slots (with monthly or per-minute commitment) will drastically reduce the cost of use. We've reduced by 10 the cost of our nightly batches by using flex slots.

Finally, a major advantage of BigQuery is its almost perfect integration with Google Cloud Platform services: Cloud functions, Dataflow, Data Studio, etc.

BigQuery is still evolving very quickly. The next milestone, BigQuery Omni, will allow to run queries over data stored in an external Cloud platform (Amazon S3 for example). It will be a major breakthrough in the history of cloud data-warehouses. Omni will compensate a weakness of BigQuery: transferring data in near real time from S3 to BQ is not easy today. It was even simpler to implement via Snowflake's Snowpipe solution.

We also plan to use the Machine Learning features built into BigQuery to accelerate our deployment of Data-Science-based projects. An opportunity only offered by the BigQuery solution

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Amazon Aurora
Pros of Amazon Redshift
  • 14
    MySQL compatibility
  • 12
    Better performance
  • 10
    Easy read scalability
  • 9
    Speed
  • 7
    Low latency read replica
  • 2
    High IOPS cost
  • 1
    Good cost performance
  • 41
    Data Warehousing
  • 27
    Scalable
  • 17
    SQL
  • 14
    Backed by Amazon
  • 5
    Encryption
  • 1
    Cheap and reliable
  • 1
    Isolation
  • 1
    Best Cloud DW Performance
  • 1
    Fast columnar storage

Sign up to add or upvote prosMake informed product decisions

Cons of Amazon Aurora
Cons of Amazon Redshift
  • 2
    Vendor locking
  • 1
    Rigid schema
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is Amazon Aurora?

    Amazon Aurora is a MySQL-compatible, relational database engine that combines the speed and availability of high-end commercial databases with the simplicity and cost-effectiveness of open source databases. Amazon Aurora provides up to five times better performance than MySQL at a price point one tenth that of a commercial database while delivering similar performance and availability.

    What is Amazon Redshift?

    It is optimized for data sets ranging from a few hundred gigabytes to a petabyte or more and costs less than $1,000 per terabyte per year, a tenth the cost of most traditional data warehousing solutions.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Amazon Aurora?
    What companies use Amazon Redshift?
    See which teams inside your own company are using Amazon Aurora or Amazon Redshift.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Amazon Aurora?
    What tools integrate with Amazon Redshift?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    Jul 9 2019 at 7:22PM

    Blue Medora

    DockerPostgreSQLNew Relic+8
    11
    2346
    DockerAmazon EC2Scala+8
    6
    2721
    GitHubPythonNode.js+47
    55
    72419
    JavaScriptGitHubPython+42
    53
    21948
    GitHubMySQLSlack+44
    109
    50684
    What are some alternatives to Amazon Aurora and Amazon Redshift?
    JavaScript
    JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
    Git
    Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
    GitHub
    GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
    Python
    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
    jQuery
    jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
    See all alternatives