1.已经写了一个视图,统计每天十几张基础表的增量数据。视图统计中有每个基础表的ID,排序视图中操作时间,按时间再根据ID更新或插入到总表中相应字段。
2.每天的十几张表的增量数据大概1K万左右。
3.每个基础表都有分区,而且根据视图查询每天字段做了函数索引,所以查询视图时间很快,排序等时间可以接受。
4.总表已经建立复合分区,有全局唯一索引。
5.刚开始写了一个存储过程,执行还可以,当总表数量达到6K万后执行时间很慢。
6.我写的存储过程是先把视图放入游标,遍历视图,判断总表中是否有重复记录,根据当前基础表ID,插入或更新总表的相应字段。
7.使用了nologging,和分批提交数据,性能没有根本改善。
8.考虑过使用把增量数据放入临时表中,然后使用marge into 批量更新,但是要根据基础表ID判断要更新字段,而且必须按时间排序操作。请教各位大神,有什么好的思路。
2.每天的十几张表的增量数据大概1K万左右。
3.每个基础表都有分区,而且根据视图查询每天字段做了函数索引,所以查询视图时间很快,排序等时间可以接受。
4.总表已经建立复合分区,有全局唯一索引。
5.刚开始写了一个存储过程,执行还可以,当总表数量达到6K万后执行时间很慢。
6.我写的存储过程是先把视图放入游标,遍历视图,判断总表中是否有重复记录,根据当前基础表ID,插入或更新总表的相应字段。
7.使用了nologging,和分批提交数据,性能没有根本改善。
8.考虑过使用把增量数据放入临时表中,然后使用marge into 批量更新,但是要根据基础表ID判断要更新字段,而且必须按时间排序操作。请教各位大神,有什么好的思路。
解决方案 »
- 请教 在oracle10g中的审计问题
- pls 00103
- 求助:如何pl/sql遍历record里面字段(不用字段名)
- 保存在blob中的excel能否再在操作系统上生成为excel文件?
- Oracle10g 数据库连接问题
- 关于触发器问题,在线等.急.
- 请问如何进行结构相同的数据表的比较
- 谢谢rolei(rolei) 、supershb(phenix)、shi8912(時光飛逝) 的帮助,请过来接分!
- Oracle能和SQL2000同时安装在一台Windows2000 AdServer上吗?
- oracle新手一枚,往各位大佬帮助一下,解决如下几个最近遇到的问题
- 关于绑定变量的问题,表名称是按月分表的,可以绑定否?
- oracle 10g 与 crystal reports 11
其实游标性能对被人误解了,一般存储过程sql对会放入游标进行操作,只是PGA的游标区内存大小设置好,游标的性能还是很高,毕竟是内存操作