设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
关于DATA BUFFER的想法
返回列表
发新帖
关于DATA BUFFER的想法
[复制链接]
11
|
9
|
2007-5-10 01:02:02
|
显示全部楼层
|
阅读模式
ORACLE在取数的时候会首先在DATA BUFFER中查找是否有需要的数据,如果都有,就避免从物理磁盘中读取,直接从DATA BUFFER中取到数据,这个时候就只有逻辑读而无物理读了,这个也就是经常看到的查询小表,第二次比第一执行快,并且看不到物理读的原因。
不过我想知道的是ORACLE做出这个判断,可以知道都在DATA BUFFER而不要去磁盘中确认,是根据数据字典的信息来判断的吗,比如数据字典中文件ID及块ID吗
可以判断的如此准确,都不用去磁盘中核对一下有没搞错:)
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
看来你对data buffer还不够了解或者说一点都不了解。
oracle在取数据的时候 是先去data buffer中寻找,如果没有找到,就直接去物理块上读,读出来后就会在data buffer中保留一个副本。
而在data buffer中有一个(或者几个)list 列表,oracle在判断data buffer中有无需要的数据时,会直接去读这个list。
在保留那个副本之前,oracle会先判断data buffer是否有足够的空间来保存这个副本,如果空间吃紧,就会触发dbwr进程刷出脏数据,
而保留在data buffer中的数据,一旦被修改就会从先前的list上,移动到dirty list上,这个list上面的数据都是准备刷出到磁盘的脏数据。
[
本帖最后由 oracle_qht 于 2010-5-8 12:45 编辑
]
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
谢谢!
我想说的的是凭什么认为在BUFFER区就找到所有你要的了,不知能否明白我的意思
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
呵呵,2楼没明白LZ的意思。
先到buffer找,没找到,再去磁盘找, 这就说明这个时候ORACLE已经知道需要哪些块了。既然知道了,当然就知道什么buffer是在内存的,什么不在内存而去需要去读物理BLOCK了。
至于怎么判断,这个其实比较简单,每个block都有号码,用HASH算法就可以快速判断了。
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
要用数据字典来参考吧:)
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
你愿怎么想就怎么想
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
先充buffer里面去找 能找到就OK 不行就去磁盘上找 产生物理读
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
原帖由
huanhuanlove
于 2010-5-8 16:44 发表
先充buffer里面去找 能找到就OK 不行就去磁盘上找 产生物理读
不去磁盘中寻找,怎么知道内存中已经全部满足条件了,这个话虽然如此说,但是思考下去,还是很有讲究的啊
就是有种算法可以做到这点,我猜测是依赖数据字典的块头文件头等的判断。。。。。
不过细究起来,应该很有学问啊。。。。
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
数据字典有信息记录了buffer中的块,至于是什么视图,我怀疑是v$bh,具体是什么视图,希望大牛们能指点下
回复
使用道具
举报
千问
|
2007-5-10 01:02:02
|
显示全部楼层
原帖由
fjliangrq
于 2010-5-8 16:58 发表
不去磁盘中寻找,怎么知道内存中已经全部满足条件了,这个话虽然如此说,但是思考下去,还是很有讲究的啊
就是有种算法可以做到这点,我猜测是依赖数据字典的块头文件头等的判断。。。。。
不过细究起来,应该很有学问啊。。。。
什么是数据字典? 真正的数据字典是内存的一个直接映像,访问内存和字典有什么区别?
我们看到很多字典,是由ORACLE经过处理的,已经不属于第一层。x$应该属于第一层,这个其实就是内存的反应,难道你认为字典和内存有区别?
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行
1
中药的煎制方法
2
身上痒痒为什么
3
你好我6.30做的人流又带的环到7月八
4
孕期反应得多久
5
嘴唇单纯疱疹孕妇
6
巨细胞病毒会传染引起小孩发烧吗
7
乙肝小三阳,肝功正常,DNA定量1.4
8
请问宝宝七个月这两天大便像鼻涕一样而且
9
腋臭手术怎样恢复快
10
上火引发牙疼怎么办
11
棕色还干燥,怎么回事
12
吃中药能吃什么
13
男性龟头念珠病
14
早上醒了恶心
15
阴道炎口服药物
16
治疗附件炎药物
17
月经量少为什么不好
18
阴道疱疹阳性
19
做月子能吃山楂么
20
娄底市口腔哪里专业
21
小孩大肚子
22
南宁骨性关节炎治疗
23
正常白血球的值
24
胃痛适合吃什么
25
你好,我有早搏最近胸口憋的难受还有点咳
26
湘潭磨腮削骨多少钱
27
月经拖延20天
28
自从和前男友分开,干什么都没精神,两年
29
南宁全身多处软组织损伤
30
孕初期的注意事项
31
女性尿频尿一点
32
沙眼衣原体感染怎样治疗,多长时间复查一
33
员工入职健康体检表
34
月经来腰酸要怎么办
35
婴儿奶粉那个好
36
脾胃有热吃啥药
37
怀孕后呕吐是为什么
38
郴州整容整形
39
请在此输入您的问题坐凳子久了屁股会出汗
40
怀孕时腰是否疼痛
41
孕早期妊娠
42
衡阳做激光祛斑多少钱
43
有脚臭尤其是冬天有时脚还会脱皮每天泡脚
44
胃癌术后一个月夜里出现返流胃酸跟白天喝
45
求去凤凰古城的路线
46
南宁老年颈椎腰椎病较好的疗法
47
怀孕一个月左侧腰怎么会酸?
48
你好王主任,咨询一个问题,膝盖下面按起
49
遗精频繁为什么
50
邵阳钛合金烤瓷牙价格
51
医生,你好。我脸上有个被抠伤的黑疤痕,
52
长痘什么不该吃
53
南宁如何治腰肌劳损比较好
54
耻骨长了个肉球碰到会疼。该用什么药。
55
太阳穴这有点头痛,单边疼,这是什么原因
56
血糖高孕妇吃什么好
57
胃病胃十二指肠
58
月经期间可以吃
59
孕妇发烧又咳嗽用什么方法好?
60
初期白血病的症状
61
月经期能吃药么
62
我月经玩了7天后又来,已经3天了还没完
63
来事儿量少血黑
64
小孩鼻粱磕伤,缝了5针,什么东西不能吃
65
脖子后面生痘痘
66
月经来了可以吃什么
67
念珠菌龟頭炎
68
我是2月12日末次~22日同房没避孕~
69
血糖过高是糖尿病
70
感冒干咳吃什么
71
时候避孕药原理
72
最近眼睛总是胀肿痛。头有点晕晕的。而且
73
南宁关节炎反复怎么治疗
74
南宁如何治疗腰腿疼痛
75
有胆结石吃什么好
76
眼干涩发痒
77
根治咽喉炎的特效药
78
乙肝五项体验费用
79
水痘预苗接种痕迹
80
不宁腿综合症如何治疗?多久才会康复?
81
女性尿道炎的的治疗
82
小孩滴尿是跟唐氏综合症有关吗
83
你好,我鼻孔两侧各长了红色的疙瘩,请问
84
包皮手术后注意啥
85
今天上午左侧头疼,中午休息后没有得到缓解
86
南宁腰椎盘突出的治疗
87
您好,我已怀孕四个月,胸口下长了一个红