从Spectrum返回数据到Redshift集群是如何完成的?

0

【以下的问题经过翻译处理】 Spectrum查询结果如何返回到主Redshift集群的问题。这可能会影响Redshift集群节点的大小,以确保它们具有足够的处理结果的能力。换句话说,所有的结果是否都返回到主节点,还是有一些逻辑将数据映射到适当的分片中?如果是后者,数据和分片的关联如何工作?

profile picture
專家
已提問 5 個月前檢視次數 7 次
1 個回答
0

【以下的回答经过翻译处理】 参考https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/。 Spectrum层将执行它需要执行的操作(下推操作)。希望在把一小部分返回到主Redshift集群进行进一步处理之前,它能够“过滤”掉S3中大部分行。否则,一个微小的2x dc2.large集群将无法处理S3中1GB Parquet文件的100万条记录,并针对这些大型外部表执行联接操作或去重操作。每个主Redshift集群的切片可以调用每个查询的最多10个Spectrum节点。Spectrum过滤后的数据将根据执行管道中的下一步(由Redshift优化器生成)和联接/GBY列的散列值,等等发送到Redshift切片。这与在正常的Redshift表之间执行联接并使用DISTKEY分发的DISTSTYLE EVEN的另一个Redshift表没有太大区别。

profile picture
專家
已回答 5 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南

相關內容