Redshift Spectrum 比 Athena 慢很多?

AJ2*_*222 1 amazon-s3 tableau-api amazon-athena amazon-redshift-spectrum

我们的数据以 JSON 形式存储在 S3 中,没有分区。直到今天我们只使用 athena,但现在我们尝试了 Redshift Spectrum。

我们运行相同的查询两次。一次使用 Redshift Spectrum,一次使用 Athena。两者都连接到 S3 中的相同数据。

使用 Redshift Spectrum,此报告需要永远运行(超过 15 分钟),而使用 Athena 只需 10 秒即可运行。

在这两种情况下,我们在 aws 控制台中运行的查询如下:

SELECT "events"."persistentid" AS "persistentid",
  SUM(1) AS "sum_number_of_reco"
FROM "analytics"."events" "events"
GROUP BY "events"."persistentid"
Run Code Online (Sandbox Code Playgroud)

知道发生了什么事吗?谢谢

小智 5

Redshift Spectrum 处理能力受到 Redshift 集群大小的限制。

您可以从提高 Amazon Redshift Spectrum 查询性能中找到信息

Amazon Redshift 查询规划器会尽可能将谓词和聚合推送到 Redshift Spectrum 查询层。当从 Amazon S3 返回大量数据时,处理会受到集群资源的限制。Redshift Spectrum 可自动扩展以处理大型请求。因此,只要您可以将处理推送到 Redshift Spectrum 层,您的整体性能就会提高。

另一方面,Athena 使用优化的资源量进行查询,这可能大于小型 Redshift 集群的 Spectrum 可以获得的资源量。

我们对不同 Redshift 集群大小的 Redshift Spectrum 性能进行的测试已经证实了这一点。