对于主要写入(更新)Oracle数据库的应用程序,可以使用哪些有用的Oracle优化?
这里的一般使用模式不是web服务或日志记录,在大多数情况下,而是保持系统的复杂状态,因此只需要读取系统启动时,其更新和一路创造。因此,目前写入与读取的比率超过9比1,在这种情况下,数据库调整可以提高性能吗?
答案 0 :(得分:5)
使用statspack(9i)或AWR(10g +)监控系统健康状况是识别瓶颈的最佳方法。
特别是:
答案 1 :(得分:2)
与大卫的回答一起:
最后但并非最不重要:在进行任何修改之前定义可重复且逼真的性能测试用例。在这种调整中有很多命中和错过 - 每次测试执行一次只能进行一次更改。
答案 2 :(得分:1)
我不能推荐Oracle Enterprise Management Console(内置于Oracle)。它会让你确切知道你做错了什么,如何解决它!
您可能需要考虑删除您可能拥有的任何额外索引(索引?)。这可能会导致启动时出现轻微的开销,但将数据添加到索引表可能会大大降低其速度。
答案 3 :(得分:0)
根据应用程序和数据的特征,考虑使用Oracle外部表加载批量数据。让应用程序将数据写入文本文件,然后从外部表上的SELECT中使用INSERT INTO目标表=非常快。
存在一些限制,它可能不适合您的情况,但它可以在您使用它时提供巨大的性能。
我使用它以每天40,000个文件的速度加载近实时文本数据文件,每个文件大约2 MB,加载到8 TB(是的,TeraBytes)Oracle 10g数据库实例中。