英文:
CPU Time vs Buffer gets oracle
问题
选择哪一个来提高查询性能?
CPU时间高且缓冲区获取低
或者
CPU时间低且缓冲区获取高
英文:
in order to improve performance of a query, which one to choose?
CPU_time high and buffer_gets low
or
CPU_time low and buffer_gets high
答案1
得分: 1
buffer_gets
表示 Oracle 需要读取一个块的次数。这些读取可以从内存(缓存)或磁盘中满足。
由于磁盘 I/O 比 CPU 时间昂贵得多,通常应该集中精力尽量减少 buffer_gets
。
与其他查询相比,如果CPU_time
"高"可能不重要,如果它只占总CPU容量的一小部分。如果它占据了大部分,那么也需要仔细查看。
英文:
buffer_gets
represents the number of times Oracle has to read a block. The reads are satisfied from memory (cache) or disk.
Since disk I/O is far more expensive than CPU time, generally you should concentrate on reducing buffer_gets
as much as possible.
CPU_time
"high" in relation to other queries may be insignificant if it represents a small percentage of the total CPU capacity. If it does represent a large percentage, then it needs to be looked into as well.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论