问题描述
我有一个包含300 Million Records,希望根据某些条件进行数据保留活动。
关于性能,我计划创建一个新表 (表B),其中包含表a中最古老的10m条记录。然后,我可以从表B中选择符合条件的记录,并将其在表A中删除。
使用SQL Loader从表A中提取10m条记录并加载到表B中,大约需要5个小时。
已创建索引,并在适用的情况下使用并行32。
我想知道的是,
-有没有更好的方法可以从Table-A中提取并将其加载到Table-B中。
-除了创建临时表 (表-B) 之外,还有其他更好的方法。
谢谢。
关于性能,我计划创建一个新表 (表B),其中包含表a中最古老的10m条记录。然后,我可以从表B中选择符合条件的记录,并将其在表A中删除。
使用SQL Loader从表A中提取10m条记录并加载到表B中,大约需要5个小时。
已创建索引,并在适用的情况下使用并行32。
我想知道的是,
-有没有更好的方法可以从Table-A中提取并将其加载到Table-B中。
-除了创建临时表 (表-B) 之外,还有其他更好的方法。
谢谢。
专家解答
为什么需要SQL Loader?如果要将10m行从A复制到B,则只需:
创建表B并行为
从A中选择/* 并行 */
其中 [标准]
而且,如果这需要5个小时... (甚至连续运行),那么我怀疑这是非常错误的,但是几乎可以在任何硬件上扫描300万行,这比这要快得多。
当涉及到删除时,你需要决定哪一个对你更有效
-删除10m行,与
-使用要保留的行创建新表
创建表B并行为
从A中选择/* 并行 */
其中 [标准]
而且,如果这需要5个小时... (甚至连续运行),那么我怀疑这是非常错误的,但是几乎可以在任何硬件上扫描300万行,这比这要快得多。
当涉及到删除时,你需要决定哪一个对你更有效
-删除10m行,与
-使用要保留的行创建新表
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。