Redshift bad short query performance

0

Very simple queries on a table with a few hundred rows take up to 5 seconds to run the first time or when you change parameters.

Screenshot attached.

Is this normal for Redshift?

asked 3 years ago1107 views
2 Answers
0

In my experience, Redshift is not designed or tuned for low latency OLTP like performance. It is a cluster that cross compiles queries into C++ programs, compiles and link them into machine code not P-code like almost every OLTP query engine, distributes them to the cluster nodes, caches the plan and programs for later reuse, and lastly queues them for execution at pretty modest concurrence to support huge resources for executing big complex OLAP and big data queries. So yes, turning that big crank, especially for the first the first time execution of small simple queries, is not its sweet spot. If your SQL workload is dominated by such small queries, especially if they are quite varyable, i.e. not executed many times, then you will see a lot of high latency which is inherent in Redshift's design. Such a workload might be better suited on Aurora or RDS. However, feed it some huge analytic queries on terabytes or more of data and you'll see it shine and produces results that a non-clustered OLTP row store can never do.

Bottom line here is Redshift is designed and tuned to the opposite end of the relational database spectrum than an OLTP row store.

klarson
answered 3 years ago
0

In my experience, Redshift is not designed or tuned for low latency OLTP like performance. It is a cluster that cross compiles queries into C++ programs, compiles and link them into machine code not P-code like almost every OLTP query engine, distributes them to the cluster nodes, caches the plan and programs for later reuse, and lastly queues them for execution at pretty modest concurrence to support huge resources for executing big complex OLAP and big data queries. So yes, turning that big crank, especially for the first the first time execution of small simple queries, is not its sweet spot. If your SQL workload is dominated by such small queries, especially if they are quite varyable, i.e. not executed many times, then you will see a lot of high latency which is inherent in Redshift's design. Such a workload might be better suited on Aurora or RDS. However, feed it some huge analytic queries on terabytes or more of data and you'll see it shine and produces results that a non-clustered OLTP row store can never do.

Bottom line here is Redshift is designed and tuned to the opposite end of the relational database spectrum than an OLTP row store.

klarson
answered 3 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions