我们目前正在为非技术用户使用ETL工具(通过Hadoop),让他们使用原始数据创建csv文件。Dev根据这些需求为它们创建一个进程,并按需运行它。由于我们使用数据湖文件(S3)来创建输出,因此我们需要将所有事实连接在一起,并运行Hadoop需要一段时间才能完成的一些繁重任务。
我们希望这些进程在更短的时间内运行。我的想法是使用UNLOAD命令来实现这个任务的redshift。由于redshift中的数据已经根据业务需求构建,通常是一个非常简单的查询,以获得他们想要的,运行2-5分钟。
然而,我不确定给我们的用户一个按需运行卸载命令的选项(而不是他们自己,通过构建的过程),可能会对redshift造成压力。
有谁能提供一些关于这方面的信息。我们预计每天2-4分钟的查询次数约为20次。
谢谢
Nir
发布于 2015-12-15 10:42:11
它并不比任何其他select要求更高。我建议您为这些用户定义一个特定的WLM队列。这样,您就可以限制它们使用的资源量,并将它们产生的任何影响与系统的其余部分隔离开来。
发布于 2015-12-24 04:57:18
我每天运行数百次卸载(将Redshift数据发送到外部API),或者备份和恢复或深度复制表。我从来没有遇到过问题。
性能似乎与等效的SELECT相同(如果使用压缩,性能会稍高一点)
https://stackoverflow.com/questions/33953310
复制相似问题