我有一个大数据加载到Redshift表中,称为响应,它包含大约450M行。在每一行上,我执行一个解析用户代理的Python UDF。
我根据 question_id 列设置了一个分布,该列有大约1.5M行。问题是响应并非在问题中平均分配:
当我查看正在执行Python函数的查询的Redshift门户时,这会导致问题,我看到只有一个节点(其中有4个)正在完成大部分工作。
我应该将其他内容设置为分发列(设置 question_id 完全符合我未来的查询需求)吗?
这有什么办法吗?
答案 0 :(得分:0)
啊,我发现了问题,我正在读取数据并且应用解析的表被错误地分发,将所有数据保存在单个切片中,这就是为什么解析速度慢,只有一个节点工作的原因。