Redshift COPY命令CPU利用率为什么飙升?

0

【以下的问题经过翻译处理】 客户在将数据从S3加载到Redshift集群时,所有计算节点的CPU飙升(升至接近100%)。他们运行的是一个由2个ds2.xlarge节点组成的集群,可以并行工作的切片总数为4。 注意到这个CPU飙升后,他们在集群中添加了第三个节点,但CPU飙升的问题仍然存在。 加载的文件是csv,是压缩的GZIP格式。 有人以前见过这个问题吗?

profile picture
EXPERTE
gefragt vor einem Jahr29 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 尽管正确分割文件是非常重要并且绝对应该做的,但它应该不会引起整个集群的CPU使用率飙升。

引起像您描述的CPU使用率飙升的原因很大可能是,加载到表中时没有使用任何压缩设置。COPY的默认设置是[COMPUPDATE](http://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-load.html#copy-compupdate)为ON。Redshift将会对传入的数据尝试所有的压缩设置,并返回适当的(最小的)压缩。

想要解决这个问题,最好确保COPY语句的目标表有压缩设置。请运行[Analyze Compression](http://docs.aws.amazon.com/redshift/latest/dg/r_ANALYZE_COMPRESSION.html)命令以确定如何压缩,并手动将其应用于DDL。对于临时表,LZO可能是一个很好的选择,因为压缩这些短暂的表比ZSTD等更快。别忘了还需要将COPY命令的COMPUPDATE设置为OFF。

profile picture
EXPERTE
beantwortet vor einem Jahr

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen