Amazon Redshift vs Google BigQuery vs Snowflake

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

Amazon Redshift

1.5K
1.4K
+ 1
108
Google BigQuery

1.6K
1.5K
+ 1
152
Snowflake

1.1K
1.2K
+ 1
27

Amazon Redshift vs Google BigQuery vs Snowflake: What are the differences?

Amazon Redshift, Google BigQuery, and Snowflake are popular cloud-based data warehouse solutions that offer scalable and high-performance analytical capabilities. When evaluating these platforms, it's essential to understand their key differences to determine which one best suits your specific needs.

1. **Architecture**: Amazon Redshift uses a Massively Parallel Processing (MPP) architecture, Google BigQuery utilizes a serverless architecture, and Snowflake operates on a multi-cluster shared architecture. Redshift's MPP architecture allows for easy scalability by adding more nodes to the cluster, while BigQuery's serverless architecture eliminates the need for infrastructure management. Snowflake's multi-cluster shared architecture offers separation of storage and compute resources, providing more flexibility in managing workloads.

2. **Pricing Model**: Amazon Redshift follows a pay-as-you-go model with on-demand pricing, Google BigQuery charges based on the amount of data processed, and Snowflake offers separate pricing for storage and compute resources. Redshift may be more cost-effective for steady workloads, while BigQuery's pricing can result in savings for organizations with unpredictable query patterns. Snowflake's pricing model allows for optimizing costs by scaling compute resources based on performance requirements.

3. **Concurrency**: Amazon Redshift offers limited concurrent queries per cluster, Google BigQuery allows unlimited concurrent queries, and Snowflake provides automatic scaling for concurrent workloads. Redshift's concurrency limitations may impact performance during peak usage hours, while BigQuery's unlimited concurrency can efficiently handle multiple queries simultaneously. Snowflake's automatic scaling ensures optimal performance regardless of the level of concurrency.

4. **Data Loading**: Amazon Redshift employs a COPY command for bulk data loading, Google BigQuery supports streaming data ingestion in real-time, and Snowflake facilitates both batch and streaming data loading. Redshift's COPY command is suitable for bulk loading from S3 or DynamoDB, while BigQuery's streaming capabilities enable real-time analytics. Snowflake's support for both batch and streaming loading options offers flexibility in data ingestion methods.

5. **Query Performance**: Amazon Redshift provides performance tuning capabilities through distribution keys and sort keys, Google BigQuery's query performance is optimized with the Dremel execution engine, and Snowflake leverages a query optimizer for efficient data retrieval. Redshift's ability to define distribution and sort keys enhances query performance for specific use cases, while BigQuery's Dremel engine accelerates query processing for large datasets. Snowflake's query optimizer dynamically adapts to workload demands, optimizing query performance in real-time.

6. **Integration Ecosystem**: Amazon Redshift integrates seamlessly with other AWS services, Google BigQuery is designed to work with the Google Cloud Platform ecosystem, and Snowflake supports interoperability with various cloud providers. Redshift's tight integration with AWS services simplifies data pipeline management within the AWS environment, while BigQuery's compatibility with GCP tools enhances data analytics workflows. Snowflake's multi-cloud support allows organizations to leverage different cloud providers for specific use cases, facilitating a hybrid or multi-cloud strategy.

In Summary, understanding the key differences between Amazon Redshift, Google BigQuery, and Snowflake in terms of architecture, pricing, concurrency, data loading, query performance, and integration ecosystem can help organizations make informed decisions when selecting a cloud data warehouse solution.
Advice on Amazon Redshift, Google BigQuery, and Snowflake

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 Redshift, Google BigQuery, and Snowflake
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 Redshift
Pros of Google BigQuery
Pros of Snowflake
  • 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
  • 28
    High Performance
  • 25
    Easy to use
  • 22
    Fully managed service
  • 19
    Cheap Pricing
  • 16
    Process hundreds of GB in seconds
  • 12
    Big Data
  • 11
    Full table scans in seconds, no indexes needed
  • 8
    Always on, no per-hour costs
  • 6
    Good combination with fluentd
  • 4
    Machine learning
  • 1
    Easy to manage
  • 0
    Easy to learn
  • 7
    Public and Private Data Sharing
  • 4
    Multicloud
  • 4
    Good Performance
  • 4
    User Friendly
  • 3
    Great Documentation
  • 2
    Serverless
  • 1
    Economical
  • 1
    Usage based billing
  • 1
    Innovative

Sign up to add or upvote prosMake informed product decisions

Cons of Amazon Redshift
Cons of Google BigQuery
Cons of Snowflake
    Be the first to leave a con
    • 1
      You can't unit test changes in BQ data
      Be the first to leave a con

      Sign up to add or upvote consMake informed product decisions

      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.

      What is Google BigQuery?

      Run super-fast, SQL-like queries against terabytes of data in seconds, using the processing power of Google's infrastructure. Load data with ease. Bulk load your data using Google Cloud Storage or stream it in. Easy access. Access BigQuery by using a browser tool, a command-line tool, or by making calls to the BigQuery REST API with client libraries such as Java, PHP or Python.

      What is Snowflake?

      Snowflake eliminates the administration and management demands of traditional data warehouses and big data platforms. Snowflake is a true data warehouse as a service running on Amazon Web Services (AWS)—no infrastructure to manage and no knobs to turn.

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

      Jobs that mention Amazon Redshift, Google BigQuery, and Snowflake as a desired skillset
      What companies use Amazon Redshift?
      What companies use Google BigQuery?
      What companies use Snowflake?

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

      What tools integrate with Amazon Redshift?
      What tools integrate with Google BigQuery?
      What tools integrate with Snowflake?

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

      Blog Posts

      Aug 28 2019 at 3:10AM

      Segment

      PythonJavaAmazon S3+16
      7
      2567
      Jul 9 2019 at 7:22PM

      Blue Medora

      DockerPostgreSQLNew Relic+8
      11
      2342
      Jul 2 2019 at 9:34PM

      Segment

      Google AnalyticsAmazon S3New Relic+25
      10
      6779
      GitHubPythonNode.js+47
      55
      72378
      JavaScriptGitHubPython+42
      53
      21927
      What are some alternatives to Amazon Redshift, Google BigQuery, and Snowflake?
      Amazon Athena
      Amazon Athena is an interactive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.
      Amazon DynamoDB
      With it , you can offload the administrative burden of operating and scaling a highly available distributed database cluster, while paying a low price for only what you use.
      Amazon Redshift Spectrum
      With Redshift Spectrum, you can extend the analytic power of Amazon Redshift beyond data stored on local disks in your data warehouse to query vast amounts of unstructured data in your Amazon S3 “data lake” -- without having to load or transform any data.
      Hadoop
      The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage.
      Microsoft Azure
      Azure is an open and flexible cloud platform that enables you to quickly build, deploy and manage applications across a global network of Microsoft-managed datacenters. You can build applications using any language, tool or framework. And you can integrate your public cloud applications with your existing IT environment.
      See all alternatives