是否有写复制命令直接,它将从1个表中复制数据并填充另一个表(某些条件会更好)?
我观察到的复制命令性能远远优于vertica中的INSERT INTO
。所以我试图用复制命令替换INSERT INTO
。
谢谢!
答案 0 :(得分:1)
您要做的是ast.literal_eval
。直接提示将使它直接加载到ROS容器而不是通过WOS。如果您正在进行大批量装载,这将是最快的。如果您正在进行许多这样的小插入/选择,那么最好使用WOS并省略DIRECT。
另一种可能性是INSERT /*+ DIRECT */ INTO table2 SELECT ... FROM table1 WHERE ...
。
最后,如果你真的只是复制所有数据而不是过滤(我知道这不是你的问题,但是为了完整性而包括这个)...并且表被分区,你可以做{ {3}}只会创建从源表的ROS容器到目标表的引用。对新表的任何更改都会重新组织ROS容器(随着时间的推移,使用元组移动器等。除非两个表重新组织它们,否则容器不会被清除)。