amazon-web-services - 亚马逊 Redshift 中的并发查询性能

标签 amazon-web-services amazon-redshift paraccel

在 Amazon Redshift 上,并发查询是否会影响彼此的性能?

例如,假设有两个查询:一个在一个相对较小的表(~5m 行)上检索所有行,另一个在一个大表(~500m)行上。两个表具有相同的字段,都没有压缩。两个查询都检索各自表中的所有数据以计算其结果。没有联接或过滤器。两个查询都检索大约 2-4 个字段以进行计算。

小查询自行运行,大约 700 毫秒后返回。但是,在运行大型查询时(这本身需要几分钟),小型查询会在 4-6 秒内返回。

这是在具有单个 XL 节点的集群上观察到的行为。

这是预期的行为吗?是否有配置设置可以保证小查询的性能一致性,即使大查询正在运行?

最佳答案

复制粘贴自:https://forums.aws.amazon.com/thread.jspa?threadID=137540#

I've performed some concurrent query benchmarking.

I created a straightforward query which by itself took about a minute to run. I then ran one of those queries at once, then two, them three, etc, and timed each query.

Each query basically halved database performance - e.g. what you'd expect; double the load, halve the performance.

Actually, it's a bit better than halving - you get about an extra 10% performance.

This performance behaviour held true up to 5 concurrent queries, which is the max number of concurrent queries configured on the database I was working with. If I ran six queries, the final query could not execute until one of the first queries had finished and freed up a slot.

Finally, vacuum acts much like a normal query - it halves performance. It's not special.

Actually, vacuum is something more than halving - it's equivelent to a pretty heavy query.

关于amazon-web-services - 亚马逊 Redshift 中的并发查询性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19403248/

相关文章:

ruby - 引导 AWS 服务器时 Ruby Fog 的超时问题

sql - 如何在 AWS redshift 和 AWS athena 中以一致的方式将 YYYYMMDD 格式的字符串转换为日期,而无需进行字符串操作

database - Redshift 许多小节点与较少数量的较大节点

python - 使用 psycopg2 和 Lambda 更新 Redshift (Python)

analytics - ParAccel 的 FastLoad(在 Teradata 中)等效项是什么?

amazon-redshift - 在没有函数或存储过程的情况下在 Amazon RedShift 中更新插入

amazon-web-services - 具有弹性 IP 的 Cloudformation 用户数据

python - Elastic Beanstalk ;配置域名的正确别名目标是什么?

linux - 由于参数中有空格,Bash 脚本因未知选项而失败

amazon-s3 - S3 -> Redshift 无法处理 UTF8