我目前没有足够的数据来测试该方案,但我需要知道带有unload
的Redshift parallel on
命令是否将已排序的数据卸载到s3上的多部分文件中,如果我使用命令带有unload
查询的by子句?我知道如果使用parallel off
,我可以在每个部分上以6.2 GB的顺序将已排序的数据卸载到s3。
Redshift文档说明了unload:
SELECT查询。查询结果已卸载。在大多数情况下,通过在查询中指定ORDER BY子句,以排序顺序卸载数据是值得的;这种方法可以节省重新加载数据时对数据进行排序所需的时间。
与此主题相关的任何链接都会有所帮助。
答案 0 :(得分:1)
经过大量搜索,我找到了答案。
默认情况下,UNLOAD根据群集中的切片数将数据并行写入多个文件。要将数据写入单个文件,请指定PARALLEL OFF。 UNLOAD按顺序写入数据,根据ORDER BY子句绝对排序(如果使用的话)。数据文件的最大大小为6.2 GB。如果数据大小大于最大值,UNLOAD将创建其他文件,每个文件最多6.2 GB。
因此,如果需要排序数据,则需要使用parallel off
。