性能调整 - 插入



我有一个UNIX脚本在此,我们将创建表,索引并使用SQL加载器将日期从文件加载到此表中。并在此表上进行近 70 次直接更新(不用于全部或批量收集)。

最后,我们将这个新表数据插入到另一个表中。它每天处理 500,000 条记录。所有这些更新都非常快。

在将此数据插入另一个表中需要 20 分钟。如何改进这一点?

    插入
  1. 没有问题,因为在同一张桌子上,我们从另一个工作正常的桌子上插入了 500 000 个校长。在不到一分钟的时间内完成插入。

插入到表 () 中,从表 x 中选择 ();500 000 条记录需要 20 分钟Tablex-创建,加载,70直接更新在同一个shell脚本中完成。

检查了单独选择和使用插入脚本的解释计划成本,两者都是相同的。

插入到表中 () 从表中选择 ();上述语句执行不到一秒钟。

  • 我使用了并行提示。成本降低。CPU 利用率为零。
  • 我应该再创建一个表表,然后将数据从表z加载到我的最终表吗?
  • 是否需要收集统计数据?这是每日运行程序。

当我们使用 SQL 加载程序进行直接路径插入时,记录将插入到高水位标记上方。加载完成并且高水位标记向上移动后,原始/旧高水位标记位置下方可能有很多空块。如果您的 SELECT 要进行全表扫描,它也将读取所有这些空块。检查您的表在一段时间内是否累积了大量空块。为此,您可以使用细分市场顾问。根据顾问建议,缩小表并释放未使用的空间。这可以加快执行速度。希望这有帮助。

相关内容

  • 没有找到相关文章

最新更新