Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

0

积分

1

好友

48

主题
1#
发表于 2014-2-22 10:50:46 | 查看: 3889| 回复: 2
在10g concept的文档里有一段这样描述:
The data dictionary is accessed so often by Oracle that two special locations in memory are designated to hold dictionary data. One area is called the data dictionary cache, also known as the row cache because it holds data as rows instead of buffers (which hold entire blocks of data). The other area in memory to hold dictionary data is the library cache. All Oracle user processes share these two caches for access to data dictionary information.

为啥在library cache里面还要存一份dictionary data的信息呢,既然data dictionary chace已经有一份了
2#
发表于 2014-2-22 11:39:14
row cache这种数据结构太简单了, 以至于其 依赖性 、可操作性较差,所以 library cache中的部分信息确实是对row cache的重复。

对于row cache和library cache,最早只有row cache, library cache是后来慢慢加入的, 而数据结构上library cache比row cache复杂得多。

实际上后期ORACLE开发部门是想把row cache干掉,完全用library cache的,但是后来发现这个工程太大了,而且很多底层函数如果改了可能遇到一些底层的不安全,所以这个把row cache干掉的想法后来黄了。

回复 只看该作者 道具 举报

3#
发表于 2014-2-22 15:16:09
谢谢解释,这样清楚很多了,今天早上翻了一早上的google。都没找到

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-21 06:16 , Processed in 0.044650 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569