oracle是如何工作的(zt)--比较形象

转载 2012年03月30日 10:22:44
摘自----《Oracle备份与恢复》
-----------------------------------------------------------------------------------------------------------------
一个名叫Sid的男人,狂热地爱好拍摄、保存和整理照片。Sid的妻子名叫Debbie,他们有三个儿子Logan、Archie和Chuck。他有一所很大的房子,同住的有男管家Simon和女仆Pam。我将介绍他的家庭、他的房子和他的爱好:拍摄、收集和炫耀他的照片。
现在,Sid快乐地生活着—家庭、朋友和假期。他不时地拍照。事实上,他总是随身带着相机。他不想错过任何东西。每一个早餐、午餐和晚宴,都会被拍下来。当孩子们从学校回家,镜头摄入他们对父亲的问候。当孩子们做家庭作业的时候,“卡嚓、卡嚓、卡嚓”,照相机的快门响个不停。棒球赛上,儿子Archie的每一个投掷都被拍摄下来。学校的舞会上,Chuck的父亲拍下了每一个缓慢的舞步以及在苏打水机器旁的交谈。而他的狗——Sadie则是这个世界上被拍摄次数最多的狗。
他和他的家庭收藏了数以百万计的照片。一些照片被销毁掉了,一些则经历了改变。Sid有一套神奇的系统来处理这些照片。让我来告诉你一些关于他的家庭、他的房子的事,以及关于他和他的家人如何致力于发展、组织和保护所有这些照片。
Sid用一架特殊的相机拍摄。他的相机每拍摄一次,就同时产生一张照片和一张底片。他从来不用换胶卷(这是一种科幻技术)。照片被贴在房间的墙壁上,而底片则被保存在一个安全的地方。

1.1.1 Sid的家
我介绍过Sid的家了吗?嗯。那里非常的大而且到处都是照片。因为照片实在是太多了,所以Sid必须寻找地方来放置它们。一些照片被挂在墙上,一些被藏在照相簿内,一些被插入剪贴簿里,一些被放在储藏室的一个盒子里再也不会被撇上一眼。所有这些照片都被放在他家中的某处。他称呼这些放置照片的地方为“相片空间”。一个相片空间可能是一个有着很多墙壁的房间,或者是有着很多页的剪贴簿。一个房间是照片的逻辑存储单元。房间内的墙壁则是相片空间中保存照片的物理结构。

1.1. 2 Debbie的家务事
因为Sid忙于拍摄和处理照片,他没有足够的精力来放置和储存它们—那是她妻子的工作。Debbie的全名是Debra Wrider。她的T恤衫上印着DBWR—这是一种家庭传统—为所有的东西做标签。
把所有这些照片放置得井井有条是一件巨大的工作,不过Sid和Debbie已经建立了一个系统。当Sid拍摄结束后,他把照片都放在厨房里一个特定的架子上。那个特定的架子被称为“DB_BUFFER_CACHE”。Debbie时常检查那个架子,看看上面是否有新拍摄的照片。在白天,她把从架子上取回的照片分别放置到对应的相片空间。事实上,在一场棒球赛或者学校的舞会上,Sid制作照片的速度太快了。以至于Debbie几乎跟不上。这是一个特别的情景,Sid拍摄照片,然后放置在那个特定的架子上,Debbie把这些照片放在剪贴簿里,挂在墙上或者插入照相簿内。
当Sid带着照片和底片进入厨房时,他和他妻子之间可能会有这样的一段对话:
Sid:“亲爱的,猜猜我给你带回来了什么?”
Debbie:“你又拍了很多照片,是吗?你知道我是多么喜欢整理照片啊。”
Sid:“当然了,Archie的棒球队赢得了最后一局。他在第九局以两个二垒打获胜,我全部都拍摄下来了。”
Debbie:“太好了,那些照片放在相片空间9号墙壁的运动类里,看上去一定棒极了。我已经等不及去放置它们了,我将邀请所有的邻居来观赏。”
Sid:“Archie也非常高兴。OK,我再去拍一些照片,我将在23毫秒后回来。哦,顺便说一下,我刚才将那些照片放在DB_BUFFER_CACHE架子上。现在Sid的目录号为1332935。”Debbie:“知道了,再见。”
为了易于管理照片、框架和日志,他使用一种特殊的数字来建立目录,称之为Sid的目录编号。他用这些独特的、不断递增的数字来追踪对这所房子内所有照片的操作。Sid和Debbie已经对查阅Sid的目录编号感到厌倦。Sid在所有的照片、录像带和底片上都写上“Sid的目录编号”,累得手要抽筋。最后,他们将“Sid的目录编号”缩略为SCN。记住SCN,Sid的生活都围绕着它展开。
现在,全家人都知道这个数字被简称为SCN。你可以在每一个地方都看到SCN。Sid把它们写在底片上,然后他把低位和高位的SCN写在每一包底片外面。Debbie把它们写在她放置照片的地方。这些数字在Sid的复杂家庭生活中显得尤为重要。
Debbie把照片放在框架里,房子里的每一个框架都是一样大小。一些框架只保存了一张照片,一些框架则保存了几张照片。一些特别大的照片则要占据多个框架。Sid有一张和原物同样大小的照片,拍摄的是他在跳伞后在空中做造型动作,这张照片占据了两个框架。当照片跨越框架时,Sid称之为照片链。
任何时候,只要Debbie改变框架内的照片,她就把照片的SCN写在框架上。房子内的每张照片都有一个惟一的数字。他们称照片的这个数字为照片ID。这些照片ID帮助Sid管理家中所有墙上的照片。如果他需要尽快找到一张照片,他通过照片ID来实现。通过照片ID,Sid能够迅速找到墙壁和保存照片的框架。
有时候,Sid会对照片进行一些改变。如果他要编辑一张照片,那么他让Debbie通过照片ID找到他的照片。Debbie给他一份包括所需照片的整个框架的拷贝。为防止Sid可能改变主意,不喜欢他已经做的一些改变,他把那份拷贝放在一个储藏室内,称之为“回退”储藏室。当Sid完成了更改并且确定了以后,Debbie把更改后的照片放回到墙壁上原先的地方,并且把新的SCN写在框架上。如果Sid不喜欢他的更改,他们就从“回退”储藏室里取出框架并且把它放回墙上。这样一来,照片就和Sid没有改动以前一样。

1.1.3 Logan的家务事
Debbie为了处理Sid的照片已经忙得焦头烂额,所以她没有足够的时间和精力来处理Sid的底片。Sid认为他的儿子们在玩电子游戏和吃土豆片上浪费了太多的时间,他决定给他们安排任务。
Sid的大儿子叫做Logan William Randolph。Logan的衬衫上都印着LGWR。Logan有一个非常简单但是非常重要的任务。Sid的相机产生照片的同时产生了底片,Logan的任务是将底片放入笔记本里。家中的厨房里竖着另一个架子,架子上Sid贴了一个标签,用来标记那些发送给大儿子的底片。标签被称为“LOG_BUFFER”,Logan坐在厨房的桌子旁,观察这个特殊的LOG_BUFFER架子。当有底片被放到这个架子上时,他立即把底片放在笔记本里。Sid称这些笔记本为“重做笔记本”。他使用这个名称是因为以后他可以用里面的底片重新制作一张照片。Logan检查他的架子的频率要比Debbie的高得多。Sid表示,只要有底片,他就可以随时重新制作一份照片。Logan和他父亲的对话简短而温馨:
Sid:“Logan,底片在架子上了!”
Logan:“知道了,我会立即处理的。”
Logan按照他得到底片的顺序将这些底片放入“重做笔记本”。一旦当前的笔记本装满了底片,他就换另一个新的笔记本。每一次他更换“重做笔记本”后,都在“告警笔记本”上做一个记录,然后通知他的兄弟来进行他们的家务活。
悲哀,是不是?老爸和他的大儿子太专注于底片了!
顺便提到,不是所有的照片都有对应的底片保存。Sid指定某些照片不必被做日志,这些照片就没有对应的底片保存在“重做笔记本”里。Sid称其为“无日志”。

1.1.4 Archie的家务事
Sid的第二个儿子Archibald则另有任务。他的衬衫上写着ARCH。Archie从重做笔记本里提取底片后,把它们放置在一个安全的地方。
当Archie发现Logan更换到另一个重做笔记本的时候,他就开始行动。他拿起重做笔记本中的那些底片,把它们放在房子外面的一个安全地方。Sid在后院建造了一个控制好温湿的地下室。那是他保存底片的安全地点。如果暴风来到,破坏了房子,他可以使用保存在地下室的底片来替换那些被损坏的照片。每一份Logan的“重做笔记本”拷贝,被称为“归档的重做笔记本”。
可能某一天,你可以听到Sid和他次子之间的笑谈:
Sid::“Archie?你在哪里?”
Archie:“老爸,我在自己房间里,Logan现在切换笔记本了吗?”
Sid:“是的,他刚刚干完。”
Archie:“知道了,老爸。我会复制这些底片并且制作一个新的笔记本放在地下室里。然后,我会更新‘控制笔记本’,并且在‘告警笔记本’里写一个记录。”
Sid:“你是一个好孩子,我知道可以相信你。”

1.1.5 Chuck的家务事
Sid最小的儿子Chuck确保每一件事情都是同步的。他的全名是Charles Kenneth Patrick Thomas。他衬衫上的字母是CKPT,Chuck的任务是将每一面墙壁、相片册和剪贴簿上的相片数字和控制笔记本中的数字协调起来。当他得到信号,他就开始在房子里奔跑起来,在每一面墙壁上写下数字,同时将同样的数字也记录在控制笔记本里。这使得每一件事情都协调起来。以下是一段Sid和Chuck的对话:
Sid:“hi,Chuck。”
Chuck:“老爸,Logan又开始更换笔记本了吗?”
Sid:“是的,儿子,你知道规矩。带着目录编号1332935跑遍房间,把这个数字写到每一面墙壁的开头,每一个剪贴簿的封面和照片盒子的顶部。”
Chuck:“没问题,给我几微秒时间搞定”。
Sid:“别忘记把1332935写在控制笔记本上!”
Chuck:“老爸,我知道了,同样的事我一天内已经做过几百次了。”
我敢打赌,你已经对阅读这个疯狂的Sid之家感到厌倦,是不是?到现在为止,你可能已经看出Sid有一个功能失常的家庭。功能失常?是的!不过却有效而可靠。Sid喜欢这样。

1.1.6控制笔记本
这个家庭怎样维持所有这些活动?Sid、Debbie、Logan、Archie和Chuck断定,要想把这项照片收集和整理工作处理的井井有条,必须要制作很多详细的笔记。他们每个人都把自己的东西写入一个日志,称之为“控制笔记本”。
控制笔记本有一个记录整个房子中每一堵墙壁、剪贴簿和照片盒子的家庭财产清单条目。如果Sid增加了一个房间,来放置更多的照片,他在控制笔记本里做一个记录。当Logan更换重做笔记本时,他在控制笔记本里做摘要记录。每次Archie制作一个归档的重做笔记本放入地下室时,他把名字和SCN的范围写在控制笔记本里。每次Chuck在房子里跑完一圈,他把细节也记录在控制笔记本里。这特殊的笔记本动态保存了所有地方的资产情况,和房子里以数字表示的进程。

1.1.7告警日志
时不时的总会有些意外发生,也可能出现错误。Debbie可能在把照片放进框架的时候发生问题,因为那面墙上已经没有多余的空间了。Archie可能无法折叠起底片条,因为有人把苏打水喷在上面。Sid考虑到了所有的可能,他买了一个螺旋轴的笔记本,放在厨房的抽屉里。在笔记本的面子上写上“告警日志”。每一个家庭成员将遇到的问题写在这个日志里。他们不仅要记下发生的错误,还要记下正常的活动过程。这个告警日志是一个用来保存在Sid家里已经和即将发生的事情的便利场所。如果他们要解释某个情形下额外的细节,他们制作一个新的“追踪笔记本”,把信息记录在里面。这样一来,这个告警笔记本不会变得比它原先的样子更杂乱。

1.1.8清晨程序
全家早晨一起醒来,也总是同时上床睡觉。他们称这些时间为一天的“启动”和“关闭”。下面是早晨的启动程序:
Sid从床上起来,端上一杯咖啡开始他的一天。在咖啡壶边上,他将一系列指令保存在笔记本里,称之为初始化参数文件。阅读这列指令帮助他开始新的一天。啜着咖啡,他走过去确认控制笔记本是否放在老地方。他在房子里打转叫醒Debbie、Chuck、Logan、Archie、Simon和Pamela(你很快就会遇到他们)。
当每一个人都醒来后,就打开控制笔记本。确认根据控制笔记本的内容,所有的照片墙壁都没有问题,当所有的东西都被检查过以后,他打开房子迎接宾客,并开始拍摄照片。Sid雇佣了一个男管家,Simon,在早晨帮助他,Simon的燕尾服上写着字母SMON(省掉名字里的一个字母)。有些早晨房子里特别凌乱,因为在前一个就寝时间,家庭的每一个成员都没有及时清理好各自的事物。当Simon就位后,Sid打开窗帘,挂好电话,打开门锁,他的家庭开放,准备好了迎接客人。Sid和Simon可能这样开始一天:
Simon:“早上好,先生。我今天能帮你做什么吗?”
Sid:“是的Simon,早上好。看来我们这里很凌乱啊。我们昨天晚上突然中断了。你能否处理一下所有这些没有完成的照片和‘回退’。”
Simon:“当然了,所有这些底片在重做笔记本里的都要被重新制作,然后以简单的顺序放置在正确的框架里。”
Sid:“你处理完这些后,接着处理‘回退’,是吗?”
Simon:“当然了,先生。我从回退储藏室里取出照片框架,然后把旧的版本放回它们原来的地方。”
Sid:“太棒了,你完成后,我就打开房子。”

1.1.9夜间程序
Sid家的夜间程序也很有趣。当Sid躺下准备休息的时候,他要求家里所有的东西都放好、关掉和停下。就寝时间的第一个行动是要求房子里所有的客人回家去。Sid晚上的情绪有四种情况。第一种,有时他很有耐性,等待所有的男女客人自行离去后,再就寝;第二种,Sid没有耐性,他亲自来监督每一个客人,当客人干完各自的事情(看照片等等)后,他给客人指示出门的方向;第三种,Sid非常没有耐性,他揪着客人陪他们出门,不让他们干完正在干的事;第四种,Sid拉下房子的电闸,大叫“时间到”,房子里一片狼藉。Simon不得不在第二天早晨来清理混乱的场面。
当一个客人走后留下一团糟时,Sid叫来他的女佣PamelaMonica。她监控客人的活动,并且在客人走后处理善后。她的清洁设备上贴着标签PMON。
如果Sid没有突然拉闸,每个人都打开灯,进行清理。同步处理笔记本来完成各自的任务。Debbie从DB_BUFFER_CACHE架子上取走所有的照片,放到合适的墙壁上。Logan确
保LOG_BUFFER架子是空的,所有的底片都在当前的重做笔记本里。Chuck在房子里兜一圈,用最高和最低的目录编号(SCN)来更新墙壁和笔记本。Archie把最后的那张底片放入归档的重做笔记本,放到后院的地下室。然后更新控制和告警笔记本。当每个人都干完后,Sid关灯,大伙儿睡觉。

1.1.10 Sid的问题
有时候,Sid家会出现问题。当以下这些事件中任何一件发生时,房子里的活动就会停止。
•当Sid醒来,而他无法找到初始化文件,则无法开始一天的工作。
•有时,Sid需要用Archie保存在后院地下室的底片来恢复丢失的照片,如果他丢失了一张底片,或者在恢复过程中底片遭到破坏。他无法恢复任何在那张无效底片以后拍摄
的所有照片。
•Sid一次丢失了几张底片。他不小心打开相机,曝光了胶卷。这使得他情绪极坏,他的世界好像走到了尽头。他联系了照相机厂家,他们提供了一个特殊的照相机,带有两个胶卷舱。如此一来,万一胶卷破坏了,他还可以指望另一个舱内的胶卷。Sid称之为镜像。
•如果后院的地下室满了,Archie没有空间来放置新的底片。Archie只是在地下室里等着新的空间。这使得Sid和Debbie也跟着等待,整个Sid的家庭活动陷于停顿状态。
•如果Debbie得了流感,卧病在床。你猜猜看会怎么样:Sid疯狂地关上了门。尽管有这些问题和其他一些家庭挫折及功能失常,但Sid的家庭仍然可以处理百万计的照片和数以千计的同时到访的客人。

和我一样,你可能会想知道,Sid怎么会有那么多的时间和精力来进行照片收集活动。他没有工作吗?事实上,没有。钱不是Sid的目标。他不必工作。他在几年以前完成了一个聪明的投资。他在1984年以后买入了大量的电脑公司的股票,那时它们刚开始向公众发行。他所投资的公司总部在加利福尼亚州的红树海岸。

在介绍了Sid的家庭后,你会发现他为家庭的所有活动设计了结构。就像这个家庭的活动一样,Oracle数据库也有空间、过程和程序。在脑中与这个家庭类比,我现在简短地描述Oracle数据库体系结构、过程和操作中属于Oracle数据备份和恢复的部分。可能你会发现和Sid家的相似之处。

相关文章推荐

八张Gif动图形象地为你介绍 flexbox 是如何工作的

flexbox 承诺将我们从万恶的纯 CSS 中拯救出来(如垂直对齐)。 flexbox 也正在实现它的这一目标,但是用户掌握这一新的模型也将会是个挑战。 因此在这里,我们将会用动图介绍 flex...

大学生找工作应当注意哪些形象和礼仪?

面试是成功求职的临门一脚。求职者能否实现求职目标,关键的一步是与用人单位见面,与人事主管进行信息交流,以便使人事主管确信求职者就是用人单位所需要的人才。面试是其他求职形式永远无法代替的,因为在人与人的...
  • empterr
  • empterr
  • 2012年02月06日 12:30
  • 1076

图说三极管的三个工作状态____图解的很形象

原文地址::http://www.eepw.com.cn/article/201603/287845.htm 相关文章 1、三极管原理大坝说——带你通俗理解三极管----http://www.ee...

决定成败的30个工作细节(ZT)

决定成败的30个工作细节(ZT) “泰山不拒细壤,故能成其高;江海不择细流,故能成其深。” 泰山之所以能有那样的高度,是因为它从不拒绝渺小的土壤,一石一沙堆砌而成才有了如今的雄伟挺拔;江...

[zt] 程序员10年工作总结

http://www.verycd.com/topics/2837883/  展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心...
  • pisheng
  • pisheng
  • 2011年06月02日 04:01
  • 207

Oracle Dimension 上 (ZT)

2006-02-28 16:22 在数据仓库环境中,我们通常利用物化视图强大的查询重写功能来提升统计查询的性能,但是物化视图的查询重写功能有时候无法智能地判断查询中一些相关联的条件,以至于影响性能。...

Oracle优化经典文章------索引原理篇(ZT)

 Oracle提供了大量索引选项。知道在给定条件下使用哪个选项对于一个应用程序的性能来说非常重要。一个错误的选择可能会引发死锁,并导致数据库性能急剧下降或进程终止。而如果做出正确的选择,则可以合理使用...
  • xyz846
  • xyz846
  • 2011年04月16日 17:28
  • 264

汉诺塔问题源代码详解,一种比较形象的输出显示结果

// Hanoi.cpp : Defines the entry point for the console application. // #include #include "stdio.h"...

进程与线程的区别一个比较形象解释

进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。 最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。 1. 计算机的核心是...
  • lycyl
  • lycyl
  • 2016年04月18日 11:40
  • 955

Oracle Dimension 下 (ZT)

2006-02-28 16:33 我们再创建一张customer_hierarchy表,用于存储客户代码、邮政编码和地区的关系,然后我们将按不同邮编或地区来查询各自的月度、季度或者年度销量信息。 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle是如何工作的(zt)--比较形象
举报原因:
原因补充:

(最多只允许输入30个字)