(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf_第1页
(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf_第2页
(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf_第3页
(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf_第4页
(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(计算机应用技术专业论文)餐饮管理系统中pda内存数据库的研究与探讨.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 随着计算机技术的飞速发展,现代数据库的应用领域不断扩大。人们对数据 库技术提出了新的更高要求,特别是实时应用领域的高性能要求是传统数据库技 术所无法满足的。自8 0 年代中后期以来,随着半导体存储器价格的不断下降和内 存容量的不断增大,内存数据库应运而生。它通过将数据库的“工作版本”常驻 内存,利用内存快速的存取速度,使系统性能获得很大的改善。但同时也带来了 其自身新的设计问题,必须重新设计数据库算法及数据结构,以便更有效的利用 c p u 及内存空间。 在无线餐饮管理系统中,由于餮饮业的日益大型化和客户数量的增加,另外 由于无线局域网的局限性,已不能满足大量p d a 用户访问的实时性要求,其访问 “瓶颈”问题显得极为突出,成为一个其难以逾越的障碍。本文针对点菜系统实 时性的高要求,提出了一种新的提高点菜系统实时性能的方法,即利用内存数据 库技术来解决实时性需求。它能够高速缓存常规磁盘数据库中的数据,减少了内 外存之间的i o 次数,依靠内存数据库对这些数据进行管理,构成内存数据库管 理系统。 本文首先简要介绍了内存数据库技术的产生与发展,提出了内存数据库的概 念,分析了内存数据库与常规磁盘数据库的区别,介绍了内存数据库在雷达跟踪 系统、移动计算以及g p s 导航系统中的几种典型应用。然后从内存数据库的定义 着手,给出了系统的总体设计,根据功能需求划分出了具体的功能模块和各模块 间的消息接口,详细说明了系统的前台应用设计、存储结构、装入策略、数据交 换策略、数据字典等内存数据库技术的设计思想。 在详细讨论了本系统设计的基础上,接下来本文从餐饮管理系统无线p d a 点 菜的实际需要出发,构建了一个p d a 内存数据库系统,并实现了p d a 内存数据库 的基本的插入、删除、查询、更新。为了实现内外存之间的数据交换,本文分析 了数据交换的完整过程。数据交换共有三个触发点,即内存数据库加载时、外存 向内存更新时、u a p 协议处理单元处理用户请求时。由于上述三个过程都会触发数 据交换,故本文还详细叙述了数据交换模块与u a p 协议处理单元及外存的交互过 广东工业大学工学硕士学位论文 程、u a p 协议处理单元对内存的访问过程。 接着对各模块问的消息接口进行了划分,对各消息的发送者、接收者、内容 以及服务功能傲了简要说明。对于用户而言,操作界面是访问内存数据库最直观 的工具,本文也给予了介绍。 最后,对本文所完成的工作进行了总结并提出了进一步研究的方向。 关键宇:内存数据库餐饮管理无线点菜p d a数据交换 a b s t r a c t a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e rt e c h n o l o g y ,t h ea p p l i c a t i o n f i e l do fm o d e r nd a t a b a s ei se x p a n d i n gw i d e ra n dw i d e r t h en e wd e m a n df o r h i g h e rd a t a b a s et e c h n o l o g ya l s or i s e s ,e s p e c i a l l yw h e nt h ea p p l i c a t i o n d e m a n di n r e a l t i m ef i e l dcann o tb em e tb yt h ec o n v e n t i o n a ld a t a b a s e t e c h n o l o g y s i n c el a t e8 0 s ,t h ep r i c eo fs e m i c o n d u c t o rc o n t i n u o u s l y d r o p p e da n d t h em e m o r y sc a p a c i t yi n c r e a s e d ,w h i c hr e s u l ti nt h e o c c u r r e n c eo fm a i nm e m o r yd a t a b a s e b yl e t t i n gt h em a i no p e r a t i n gp a r to f t h ed a t a b a s er e s i d ec o n s t a n t l yi nt h em a i nm e m o r y ,a n du t i l i z i n gt h eq u i c k a c c e s ss p e e d ,t h es y s t e mp e r f o r m a n c ei sg r e a t l ye n h a n c e d h o w e v e rm e a n w h i l e n e wd e s i g np r o b l e mo fd a t a b a s ei t s e l fh a so c c u r r e d t h ea l g o r i t h ma n dd a t a s t r u c t u r eo fd a t a b a s em u s tb er e d e s i g n e ds ot h a tc p ua n dm e m o r ys p a c ec a r l b eu s e dm o r ee f f i c i e n t l y d u et ot h es h a r pl e a po ft h eu s e r sn u m b e r ,o r d e rd i s h e ss y s t e mc a n n o tm e e tt h er e a l t i m ep e r f o r m a n c ed e m a n dc a u s e db yp l e n t yo fu s e ra c c e s s , i nw h i c ht h ep r o b l e mo fa c c e s sb o t t l e n e c ks e e m se x t r e m e l yo u t s t a n d i n ga s a no b s t a c l eh a r dt oo v e r c o m e t h et h e s i sb r i n g sf o r w a r do n e n e wm e t h o dt o i m p r o v et h ep e r f o r m a n c eo fo r d e ra n d t h ec h a r g e s y s t e ma g a i n s th i g h r e q u i r e m e n ti n r e a l t i m eq u a l i t y ,w h i c hm e a n st h eu t i l i z a t i o no fm a i n m e m o r yd a t a b a s ev e r s u sr e q u i r e m e n to f r e a l t i m ep e r f o r m a n c e t h es y s t e m w i l ls e tu pah i g h s p e e db u f f e rz o n ef o rt h ed a t ac o m i n gf r o mc o n v e n t i o n a l d i s kd a t a b a s ea n dp e r f o r mm a n a g e m e n to ft h ed a t a w i t ha s s i s t a n c eo fm a i n m e m o r yd a t a b a s e t h u st h ei ot i m e sb e t w e e n m e m o r ya n dd i s kc a nb ed e c r e a s e d a n dam a i nm e m o r yd a t a b a s em a n a g e m e n ts y s t e mis f o r m e d f i r s ti nt h ep a p e r ,t h er i s ea n dd e v e l o p m e n to fm a i nm e m o r yd a t a b a s e a r ei n t r o d u c e d t h e nt h ec o n c e p t i o no fm a i n m e m o r yd a t a b a s ei sb r o u g h t 广东工业大学工学硕士学位论文 f o r w a r d ,a n dt h ed i f f e r e n c eb e t w e e nm a i nm e m o r yd a t a b a s ea n dc o n v e n t i o n a l d i s kd a t a b a s ei sa n a l y z e d a f t e rt h a t ,s e v e r a lt y p i c a la p p l i c a t i o ncases o fm a i nm e m o r yd a t a b a s ei nt h ef i e l d so fi m a g ed a t a b a s e ,r a i d e rt r a c k i n g s y s t e m ,m o b i l ec o m p u t a t i o n ,a n dg p sn a v i g a t i o ns y s t e m a r es t u d i e d a c c o r d i n gt ot h ed e f i n i t i o no fm a i nm e m o r yd a t a b a s e ,t h ei n t e g r a t e dd e s i g n o ft h es y s t e mi ss u g g e s t e d t h ed e t a i l e df u n c t i o nm o d u l e sa n dm e s s a g e i n t e r f a c eared e f i n e da g a i n s tf u n c t i o nd e m a n d a n dt h ed e s i g ni d e a so fm a i n m e m o r yd a t a b a s es u c ha sf o r e g r o u n da p p l i c a t i o nd e s i g n ,s t o r a g es t r u c t u r e , l o a d i n gp o l i c y ,d a t ae x c h a n g ep o l i c y ,a n dd a t ad i c t i o n a r ya ree x p l a i n e d i nd e t a i l o nt h eb a s i so ft h ej o bd e s c r i b e da b o v e ,t h er e s e a r c hf o c u s e so nt h e i m p l e m e n t a t i o no fd a t ae x c h a n g em o d u l ef o ri t sp r a c t i c a lf u n c t i o np e r f o r m e d t oc a r r yo u tt h ed a t ae x c h a n g eb e t w e e nm a i nm e m o r ya n dd i s k ,a f t e ra n a l y z i n g t h ec o m p l e t ec o u r s eo fd a t ae x c h a n g i n g ,a ne x c h a n g ef u n c t i o ni sc o n s t r u c t e d w i t hc o n s i d e r a t i o no ft h es y s t e m ss e r v i c ec h a r a c t e r s t h e r ea r e3t r i g g e r p o i n t si nd a t ae x c h a n g e t h e ya r et h em o m e n t sw h e nl o a d i n gm a i nm e m o r y d a t a b a s e ,w h e nu p d a t i n gm a i nm e m o r ya g a i n s td i s k ,a n dw h e nd i s p o s i n g u s e r sr e q u e s t sb yu a pp r o t o c o ld i s p o s i n gc e l l ,r e s p e c t i v e l y b e c a u s ee a c h c o u r s em e n t i o n e da b o r ew i l lt r i g g e rd a t ae x c h a n g e ,n o to n l yt h ei n t e r a c t i v e c o u r s eb e t w e e nd a t ae x c h a n g em o d u l ea n du a pp r o t o c o ld i s p o s i n gc e l l ,o r d i s ki sd e s c r i b e d ,b u tt h ea c c e s sb yu a pp r o t o c o ld i s p o s i n gc e l lt om e m o r y ise x p l a i n e d m o r e o v e r ,t h em e s s a g ei n t e r f a c e sa m o n gt h em o d u l e sa r ed e f i n e d t h e m e s s a g e ss e n d e r ,r e c e i v e r ,c o n t e n t ,a n ds e r v i c ef u n c t i o na r eb r i e f l y i n t r o d u c e d f o rt h eu s e r s ,t h eo p e r a t i o ni n t e r f a c et h a ti sa l s oi n t r o d u c e d i st h em o s tv i s u a l i z e dt o o lt oa c c e s sd a t a b a s e f i n a l l yt h ej o bc o m p l e t e di ss u m m a r i z e da n dt h ef u r t h e ri m p r o v e m e n t d i r e c t i o ni sp o i n t e d a b s t r a c t k e y 哪a r d s :m a i nm e m o r yd a t a b a s e d i e t i n gm a n a g e m e n t w i r e l e s s o r d e rd i s h e sp d a d a t ae x c h a n g e v 第一章绪论 1 1 课题的来源 第一章绪论帚一早珀下匕 自2 0 世纪6 0 年代末数据库系统产生以来,数据库技术得到了飞速的发展。 随着计算机技术,特别是网络技术和电子商务的飞速发展,数据库的应用领域不 断扩大,传统的大型结构化数据库系统越来越多的应用在i n t e r n e t i n t r a n e t 上, 并担当着企业业务和信息系统核心的重任,如图卜1 所示。例如,地理信息系统 ( g i s ) 、联机分析与处理系统( o l a p ) 、管理信息系统( m i s ) 、企业资源计划( e r p ) 、 客户关系管理( c 蹦) 、数据仓库和数据挖掘等系统都是以数据库技术作为主要支 撑的。数据库已成为人们进行有效地数据存储、共享和处理以及信息管理的重要 工具。 企业级互 联网应用 企业主页 电子商务 o l t p 企业级内 联网应用 e r p 客户管理 销售管理 企业级内 部网应用 企业m i s 办公 自动化 企业其他 信息应用 数据库系统 图卜1 数据库的应用 但是,本来是为了传统业务的开展而设计出来的数据库系统,已经越来越多 的受到超大规模数据量和高强度瞬时并发访问的折磨和考验。无论是企业在 i n t e r n e t 上的企业商务网站,还是企业内部i n t r a n e t e r p c r m 等内部业务管理系 统,随着数据量和业务量的不断高速增长,数据库系统的执行效率逐渐下降,大 大制约了数据库的访问时间,已经越来越成为制约整个系统性能和效率提升的瓶 颈。数据库的响应时间是衡量一个数据库系统性能的一个重要指标,尤其在一些 特殊应用场合,如实时控制中,对响应时间的要求很高,常规数据库技术已无法 广东工业大学工学硕士学位论文 胜任这些工作,需要一种新的数据库技术来解决这些问题,以提升数据库的速度。 在基于无线局域网的餐饮管理系统中,在使用这种先进的p d a 点菜系统时,由于 无线局域网的局限性,如果点菜的顾客很多的话,餐饮管理系统为了确认是否有 足够的菜品原料可以满足点菜的要求,需要对大量的原料信息和点菜信息进行确 认与计算,这样常会出现点菜的速度比较慢的情况。因此我们考虑把经常使用的 “热点”数据放入p d a 中,构建一个内存数据库系统。而随着存储器价格的不断 降低和高性能应用要求的增加,内存数据库越来越成为数据库系统的另一种吸引 人的选择且得到了许多研究者的极大关注“m 1 。 本论文基于广东工业大学计算机工程研发中心和广东大厦合作研发的“广东大 厦餐饮综合管理信息系统”项目。该系统建设的总目标是:通过无线餐饮管理系 统,改变传统的点菜、收银模式,把管理提高到一个新的模式,由p o s 系统演变 成为m i s 系统。论文结合该项目中p d a 无线点菜子系统,研究基于餐饮管理系统 的p d a 内存数据库的问题。 本篇论文的选题是来源于我在研究生期间接触到的一些实际项目和涉猎到的 感兴趣的研究方向。在跟踪同期国内在嵌入式系统及数据库领域的巨大变化和国 际最新研究动态的过程中,我注意到p d a 和内存数据库这两个发展十分迅猛的领 域,并选择了餐饮管理中p d a 内存数据库的研究作为论文的主题。 1 2 国内外研究现状 1 2 1 内存数据库技术 目前,国内外一些公司和高等院校已针对各种应用进行了实时内存数据库的 研究与开发。以数据的原型长期在线存储一些特殊用户所有的生产实时数据,用 以满足快速高效的数据采集、存储以及对其进行必要的分析处理。目前,市场上 流行的实时数据库产品主要有:0 s i 公司的p i 系统( 适用于流程工业;国外) 、 i n f 0 2 p l u s ( 主要用于电力系统、石油、化工等领域;国内) 、华中科技大学刘云 生教授主持开发的实时内存数据库系统a r t s - i 等m w 。 2 第一章绪论 1 2 2 餐饮管理系统发展现状 经济的高速增长,直接的影响到大众的生活水平快速的提高。餐饮业的竞争 以不仅仅是传统意义上的技艺的竞争,更是内部管理水平的竞争。餐饮业的发展 至今已经不仅仅是一个小小的饮食单元了,而是上规模、提供多样化的饮食服务, 在高星级酒店中,有许多餐厅、宴会厅、娱乐设旖及送餐服务,这些项目用于为 客人提供更加方便、周全的服务,为完成这些功能要有相应的管理和设备,迫在 眉睫的就是建立起一套,快速,高效的,全方位的办公自动化系统。 酒店对餐饮管理系统的功能要求是多方面的。如具有多国语言、正餐与快餐 模式、套餐处理、分单与合单、转台、结帐、售罄管制、预定日期改变价格、食 谱及库存控制、系统操作记录、远程诊断支持、双主机、酒店管理接口等功能另 外,随着智能楼字的发展,很多地方要求一卡通功能。因此,酒店在选择餐饮管 理系统时,要考虑刷卡的问题,卡上要有客人的姓名、房号、来店居住的日期等 信息。这样,既能方便客人结帐,又便于管理。 酒店收款机系统( p o i n to fs a l es y s t e m ,p o ss y s t e m ) 的应用历史非常久 远。从1 9 世纪8 0 年代第一台木制外壳的收款机产生到现在已经1 0 0 多年了。随 着计算机技术的发展,收款机系统也经历了3 个阶段:第一代收款机是单独使用 的,没有联网功能。第二代收款机是在2 0 世纪8 0 年代流行,它将若干餐厅中的 多台收款机联成网络,通过转换器与酒店管理系统连接,以满足客人的各种需求, 同时具备了一些管理功能。这种牧款机既可以单机操作,又可以联网使用,现在 仍有许多酒店在延用这种做法。但也有缺点,由于自成网络,因此在布线上不能 通用,在经过转换器时,容易造成故障。从9 0 年代起,第三代收款机开始流行, 这种收款机象p c 机一样,能够与酒店管理系统联网,在布线、故障处理、收款效 果、网络处理上就显得很方便,它的缺点是在管理上仍然存在着一些问题。而利 用无线的优势并结合当今餐饮管理系统的特点,新产生的无线餐饮管理系统彻底 改变了传统的点菜、收银模式,在管理上有了巨大的变化。顾客来用餐时,顾客 用p d a 点菜时,只需把台号输入。然后输入所点菜的名称,客人点菜完毕,自己 需要的菜单就同步传到了厨房。正是因为有了这套点菜系统,在这里,你看不到 服务员和点菜生为点菜、送单而疲于奔走的场面。客人都感觉到,上菜和结账的 广东工业大学工学硕士学位论文 速度比其他地方快多了 5 1 。 1 3 研究的目标与意义 1 3 1 选题的背景与意义 随着计算机技术,特别是网络技术和电子商务的飞速发展,数据库的应用领 域不断扩大,传统的大型结构化数据库系统越来越多的应用在i n t e r n e t i n t r a n e t 上,并担当着企业业务和信息系统核心的重任。 但是,为了传统业务的开展而设计出来的数据库系统,已经越来越多的受到 超大规模数据量和高强度瞬时并发访问的折磨和考验。随着数据量和业务量的不 断高速增长,数据库系统的执行效率逐渐下降,大大制约了数据库的访问时间, 已经越来越成为制约整个系统性能和效率提升的瓶颈。数据库的响应时间是衡量 一个数据库系统性能的一个熏要指标,尤其在一些特殊应用场合,如实时控制、 实时查询中,对响应时间的要求很高,常规数据库技术已无法胜任这些工作,需 要一种新的数据库技术来解决这些问题,以提升数据库的速度w m 。 2 0 世纪8 0 年代中期以来,内存数据库引起了越来越多的数据库研究者的极大 兴趣。人们已经对它的体系结构、数据组织与存取方法、事物处理、并发控制、 恢复技术等方面进行了大量的探讨与研究。 本系统是餐饮管理系统中点菜子系统的外围加速系统,实际为一p d a 内存数 据库,其主要目标是提供:各种操作的高速执行;紧凑的数据结构和高效的 空间利用率。之前,当大量p d a 用户访问上述点菜系统时,由于访问的是常驻磁 盘数据库,要进行大量的i o 操作,这样就造成比较长的时延,不能满足用户的 要求。而现在,用户的每个事务在执行过程中i o 操作大量减少,大大提高了数 据库的响应时间。同时,本课题的实现对其他一些数据库系统,如:o r a c l e 等数 据库的加速,也具有一定的借鉴意义。 1 3 2 面临的问题与研究内容 随着数据量和业务量的不断高速增长,数据库系统的执行效率逐渐下降,大 4 第一章绪论 大制约了数据库的访问时间,已经越来越成为制约整个系统性能和效率提升的瓶 颈。数据库的响应时间是衡量一个数据库系统性能的一个重要指标,尤其在一些 特殊应用场合,如实时控制、实时查询中,对响应时间的要求很高,常规数据库 技术已无法胜任这些工作,需要一种新的数据库技术来解决这些问题,以提升数 据库的速度。在基于无线局域网的餐饮管理系统中,在使用这种先进的p d a 点菜 系统对,在这种情况下,如果点菜的顾客很多的话,餐饮管理系统为了确认是否 有足够的菜品原料可以满足点菜的要求,需要对大量的原料信息和点菜信息进行 确认与计算,同时由于p d a 和无线局域网的局限性,常常会出现点菜的速度很慢 的情况。因此我们考虑把经常使用的“热点”数据放入p d a 中,在p d a 中构建一 个内存数据库系统。而随着存储器价格的不断降低和高性能应用要求的增加,内 存数据库越来越成为数据库系统的另一种吸引人的选择且得到了许多研究者的极 大关注。 内存数据库技术的研究涉及到较多的分支和基础理论,其最终目的是将其集 成为一个完整的数据库系统,从而满足无线餐饮管理系统内存数据库的需求。 本课题主要涉及的研究分支如下: 1 ) 面向对象的数据库技术; 2 ) 实时数据库技术,其中主要研究内容是:主动数据库技术和内存数据库技 术; 3 ) 将面向对象的数据库技术、主动数据库技术和内存数据库技术予以集成的 研究,并探讨如何将其用于无线餐饮管理系统内p d a 内存数据库的研究。 本课题着眼于为外存数据库加速,其“工作版本”为高频访问用户的数据信 息,即外存数据库的一部分,并支持用户数据的插入、删除、修改、查询等操作。 因此,本课题涉及到的主要任务为: p d a 内存数据库的构建; p d a 内存数据库的加载及数据交换模块的实现; 消息接口及操作界面设计; 1 3 3 课题特色之处 1 课题通过参考研究现有的一些内存数据库技术,利用内存数据库实时高效 5 广东工业大学工学硕士学位论文 的特点,从点菜系统的需求出发,把内存数据库技术应用于无线餐饮管理系统中, 以满足其实时性的需求,解决访问“瓶颈”的问题。本文的主要目标是研究构建 p d a 内存数据库所要解决的关键技术,其中重点讨论了内存数据库的存储结构、装 入策略、数据交换等方面的问题,初步完成了对点菜系统p d a 内存数据库的构建, 达到了预期目标。 2 课题总结了目前国际上的研究成果和当前内存数据库解决方案,并针对餐 饮管理系统中的p d a 内存数据库应用提出了自己的解决方案。 1 4 论文的组织 针对以上主要任务,对本文内容进行了划分,按如下章节组织,共分六章: 第一章绪论主要介绍了课题的来源、选题背景、国内外的研究现状,并介绍 了课题的研究内容分析了本文的主要任务。 第二章对内存数据库的产生、研究与发展进行了概述,给出了内存数据库的 定义以及其与常规磁盘数据库的区别,列举了其在一些研究领域的应用实例。 第三章是研究背景及需求,主要介绍了广东大厦餐饮管理系统的总体方案、 系统特色及组织结构以及系统已经实现的功能,同时指出了课题在项目中的位置。 第四章是p d a 内存数据库的研究与设计,介绍了p d a 内存数据库的数据的 组合子形式和系统设计目标、总体结构,给出了系统的功能模块划分。介绍了其 设计思想。 第五章是p d a 内存数据库实现的研究,其中包括内存数据库构建及初始化, 并设计出合理的装入( 即加载) 策略、数据交换策略以及数据结构等,同时编写 出有效的应用程序,为后续工作提供访问接口。 第六章为消息接口与操作界面设计。首先对系统的接口进行了划分,接着简 要介绍了用户操作的界面及一些具体的操作。 最后对全文的工作进行总结,并对这一研究课题的前景进行展望,对尚需做 的进一步完善工作进行了讨论。 6 第二章内存数据库技术概述 第二章内存数据库技术概述 2 1 内存数据库的产生 现代数据库应用有着与传统的商务或事务型应用有着不同的要求:事务有定 时限制;,数据有“时间一致性”,有“有效期”。实时应用领域对数据库的需求不 同于传统领域对数据库的需求,典型地表现在实时应用领域。一般实时应用有两 个突出的特点,一是其中的时间活动性强,要求在一定的时刻和( 或) 一定的时 间内自外部收集信息、按彼此联系存取已获得的信息和收集的信息、再及时做出 响应;二是它们要处理“短暂”数据,这种数据只在一定的时间范围内有效,过 时则无意义了。 在传统的数据库系统中,其设计与开发主要强调维护数据的正确性、保持系 统代价低,提供友好用户接口。这种数据库系统对传统的事务和事务型应用是有 效的、成功的,但它不适合实时应用,关键在于它不考虑与数据及其处理相联系 的定时限制( t i m i n g - c o n s t r a i n t ) 。系统的性能目标是吞吐量和平均响应时间, 而不是各个事务的限制,故系统作调度决策时根本不管各种实时特性。 支持这类实时应用的数据库系统应该是高性能的,而且要求能够较准确地估 算事务在系统的运行时间,使事务具有可预报性。然而,就一般的磁盘数据库系 统( d r d b s ) 而言,事务的执行是无法预测的,主要是因为i o 时间、缓冲区管理 和页面错误等可能导致很大的估算错误,用内存数据库作为实时事务的底层支持 是最为理想的。 内存数据库系统( 脚m s :m a i nm e m o r yd a t a b a s es y s t e m ) 是将所管理的全 部或大部分数据存于物理内存,从而获得非常高的存取速度的数据库系统。在传 统的数据库系统d r d b ( d i s kr e s i d e n td a t eb a s e ) 中,数据常驻磁盘,d r d b 将 磁盘上的数据当作是数据的主拷贝,将内存中的缓存数据看作是复制的备份。这 决定了两者在数据格式、数据结构以及查询、操纵数据算法上的根本区别。 随着集成电路技术的发展,半导体存储芯片集成度惊人的提高与价格的下降, 在内存中放入越来越大的数据库变得可行了,这就使得内存数据库系统成为现实。 广东工业大学工学硕士学位论文 由于数据可以在内存中直接存取,内存数据库系统可以提供比d r d b 好得多的响应 时间和事务吞吐量。这对那些要求事务在特定的期限内完成的实时应用尤为重要。 如上所述,内存数据库能够提供实时应用足够快的响应,但同时也带来了其 自身新的设计问题,必须重新设计数据库算法及数据结构,以便更有效利用c p u 时间及内存空间。它要求对于物理数据组织、数据库的访问方法、查询处理及优 化、并发控制及提供新的模式及算法,以反映出其实时性、内存处理的特点,从 而提高数据库系统的性能一m m 。 2 2 内存数据库的定义 内存数据库是一个较新的研究领域, 么是内存数据库有几种不同的说法: 观点一,整个数据库全部常驻内存, 存足够大,以容纳数据库的所有数据。 目前对内存数据库尚无统一定义。对什 存取数据时无须i o 操作。这就要求内 观点二,数据库常驻磁盘,在事务执行前将所需数据集调入内存,提交时所 有对数据库的修改必须写回磁盘。 观点三,数据库常驻磁盘,在内存中开辟一个大缓冲区( 或c a c h e ) ,通过适 当的缓冲区管理以减少内外存i o 操作。 在很多现实应用中,往往难以保证内存总是能够容纳整个数据库。因此,数 据库的定义必须包含内存不足以容纳整个数据库的情形,而第二、三种观点下的 数据库本质上无异于常规的磁盘数据库( d r d b ) ,只不过是改变了数据调入内存的 时机,增大了缓冲区的容量,不能称为内存数据库。 因此普遍认为,内存数据库的本质特征是其主拷贝或“工作版本”常驻内存, 而不取决于内存的大小、存取数据所需i o 次数的多少、数据何时进入及怎样才 能留驻内存等这些具体的实现技术,而只包含数据库常驻内存( 而不是磁盘) 、事 务( 不是系统) 的数据存取只涉及内存的意思。 据此,对内存数据库给出如下定义: 定义:设有数据库d b ,t s 为所有事务构成的集会。m t e a t ( t ) ,d t ( t ) 为t 在 t 时刻的操作数据集( d t ( t ) e d b ) ,d b m ( t ) 是t 时刻d b 在内存中的数据集( d b m ( t ) d b ) ;a t ( t ) t s ;t a t ( t ) ,若在任一时刻t ,均有: ¥t a t ( t ) ,d t ( t ) d b m ( t ) 8 第二章内存数据库技术概述 成立,则称d b 为一个内存数据库,简记为m m d bc m m 。 按此定义,m m d b 就是指数据库的“工作版本”常驻内存,任何一个事务在执 行过程中没有内外存间的数据i 0 。显然,它需要一定的内存量,至少要能容纳一 个事务所要求的数据集,但并不一定要求整个数据都必须常驻内存。活动事务的 执行从开始到提交,均不与外存打交道,当事务提交时数据库的“外存版本”( 置 于外存的数据库部分) 可以不必立即反映出事务提交后的结果,并且当系统出现 故障时应首先恢复在内存中的数据库主拷贝m m m 。 需要指出的是,对于传统的磁盘数据库,即使其缓冲区足够大,以致可以容 纳所有数据或其“工作版本”也不能算是一个m m d b 。因为它是针对磁盘特性、在 数据库常驻磁盘的假定下设计的。例如,索引结构是针对磁盘存取的,数据的存 取要经过缓冲区的管理,这势必影响存取效率。 计算机的内存和磁盘有着明显不同的特性,这些特性上的差别对于数据库系 统的设计和性能具有深远的影响n m w 。 1 ) 内存和磁盘的存取时间有着数量级的差别。内存的存取时间在1 0 1 s 的数 量级而磁盘在1 0 。s 的数量级。 2 ) 内存通常是易失的,而磁盘却能永久存储,但有可能制造非易失内存。 3 ) 无论检索的数据量有多少,磁盘的每次存取都要付出高的代价。因此,磁 盘是面向数据块的存储设备,而内存是按字节或字编码的,存取单位可以 很小。 4 ) 对磁盘而言,其顺序存取要快于随机存取,数据在磁盘上的组织对性能的 影响比内存更为敏感。而顺序存取对内存就不那么重要。 5 ) 内存通常是由处理器直接存取的,而磁盘却并非如此。因而内存数据比磁 盘数据更易遭到软件出错所导致的数据破坏。 这些差别从算法控制到应用程序接口,几乎对数据库管理的每一个方面都产 生了影响。由于整个数据库放于内存,数据库不再被视为大量存储文件而是被视 为内存中可寻址的大量数据,它完全打破了传统磁盘数据库系统的设计宗旨,带 来了其自身新的设计问题。 因此,内存数据库的设计应完全打破传统磁盘数据库的设计宗旨,设计全新 的适合于内存特点的算法和数据结构。对于内存数据库的物理数据组织、存取方 法、查询处理及优化、并发控制和数据库恢复都应研究新的方法和策略,以便更 9 广东工业大学工学硕士学位论文 有效地利用内存空间提高系统性能。 2 3 内存数据库的研究与发展 有两大因素决定着内存数据库( 删d b ,m a i nm e m o r yd a t a b a s e ) 的研究与发 展。一是现代应用要求数据库有很强的功能和很高的性能。传统的数据库基本用 于商务和事务型应用,而现代应用主要是:集成的办公系统,包括信息检索与 过滤( f i t t e r i n g ) 、超文本、超媒体等应用;工程型应用,包括过程控制、c a d c a m 、 c i m s 、指挥控制、实时数据处理、网络( 如电话、电力、数据网等) 管理;人 工智能,如自然语言处理、专家系统、知识处理、演绎与推理或规则系统、机器 人与机器视觉等。这种现代( 或非传统) 应用要求新型的现代数据库系统来支持, 尤其是复杂对象、时间( 包括时序变化和定时) 管理、规则或主动机制及功能更 强的数据语言等,而且同时还要求系统有很高的性能,尤其是象保证“硬实时” 这样的性能要求,传统的常驻磁盘数据库系统对这些是无能为力的。 另一因素是存储量很大而廉价的内存的成功使用。在过去的十多年中,单个 d r a m 片的b i t ( 位) 数几乎以每三年翻两番的速率在增长。当前对这种增长率似 乎还没有一个可见的尽头。而内存的价格在过去的2 0 年中几乎降到了原来的百分 之一。 由于上述的理由,自2 0 世纪8 0 年代早期开始,研究者们就进行将整个数据 库或它的大部分放在内存中的研究上。通过将数据库的“主版本”常驻内存可使 系统性能获得很大的改善,如i 0 操作大量减少、事务的状态转换( c o n t e x t s w i t c h ) 及其相联c p u 高速缓存的替换大量减少、锁的竞争下降、更有效的内存 查找结构和查询处理可被使用等n 一”m 。 2 0 世纪8 0 年代中期以来,内存数据库引起了越来越多的数据库研究者们的极 大兴趣。时至今日,人们已对它的体系结构、数据组织与存取方法、事务处理、 并发控制、恢复技术等方面进行了大量研究与探讨,取得了丰富的成果。在体系 结构方面,为了支持m m d b 的恢复,人们从系统硬、软件支持上着手,开发了多种 结构形式,如使用多处理机结构,以一处理机专用于有关恢复方面的处理:以专 用的n v r a m 做活动日志、工作区等n ”m 。 在存取方面,人们开发了许多新的,利于内存数据存取的数据存储组织与索 引结构及其策略,如可扩展h a s h i n g 结构、t 一树索引等。 l o 第二章内存数据库技术概述 在事务及查询处理方面,主要在事务的提交及与之相联的日志记录、查询优 化、尤其是联接查询的优化,进行了多方面的研究,开发了一些有效的技术。如 开发了“提前提交”策略,即事务提交时,只要有关的日志记录写入固定缓冲区, 即可释放事务的锁,而无需等日志写入磁盘后。这样可减少阻塞延迟,加速并发 事务的响应时间m 。 在并发控制方面,人们进行了多方面的试验研究,提出了二级层次封锁方案、 乐观并发控制法、使用可扩展h a s h i n g 技术的方法等。有的也就使用标准的2 p l ( 两段锁) ,有的甚至认为在m m d b 中干脆就不要并发控制,而用“完全串行”执 行。串行执行对短事务也许可行,但当事务很长时,串行执行显然是行不通的m ,。 在内存数据库的恢复方面,研究集中在检查点操作及相应日志的记录、内存 数据库装入与重装等,如模糊检查点策略、黑白策略、c o p y - o n - u p d a t e ( 变更拷 贝) 检查点等。对内存数据库装入有有序装入、带优先级的有序装入、考虑存取 频率的装入、以及组合优先级和频率等的所谓“聪明”装入等策略 2 2 1 。 2 4 内存数据库与磁盘数据库的区别 计算机的内存和磁盘有着完全不同的概念,这些差异对数据库系统的设计和 性能有着深刻的影响。尽管这些差异是众所周知的,但简要的回顾一下这种差别 还是很有意义的w : 内存数据的访问时间要比磁盘数据的访问时间低好几个数量级。 内存属于易失存储介质,然而磁盘不是。所谓易失性,就是指断电后内存 上的数据全部丢失,而磁盘则能永久保存数据。然而,有可能建立非易失 性内存,如通过u p s 、新的f l a s hm e m o r y 技术或者昂贵的s r a m 。 磁盘访问的代价很高,每次访问都有着很高的固定访问开销,而不论这次 访问实际上所需要获取的有用数据大小。例如每次访问,都会从磁盘中获 取一个扇区的数据,即使需要的只是这个扇区中的一个字节。正是这个原 因,磁盘被看作是块设备,而内存则不是。 磁盘中数据的布局,比起内存中数据的布局,对于数据库的整体性能要关 键的多,因为对磁盘的序列访问比起随机访问要快多了。可以设想,如果 相关数据尽可能的在一个扇区,访问这些数据的开销要小多了。而在内存 中,序列访问则显得相对不那么重要,但是可以在以后的分析中发现,由 广东工业大学工学硕士学位论文 于现代计算机中c a c h e 对系统性能的相当大影响,c a c h e 一致性的数据布 局也是很重要的。 内存一般而言是直接被处理器访问的,然而磁盘不是。这意味着内存中的 数据比起磁盘数据更容易受到软件错误的毁坏,如应用程序的错误或操作 系统的致命性错误。 由于这些性质上的区别,m m d b 和d r d b 相比,在以下五个方面提高了系统性能: 连接开销。传统d b m s 使用多地址空间体系,有利于进程保护,但是实时 性能严重降低;而无论是实时系统和嵌入式系统,一般而言都是应用专有 系统,意味着整个系统一般只存在一个应用,所以m m d b 一般而言都直接 和应用代码链接在一起,位于单一进程地址空间,这使得应用和船之间 的连接开销最小。 地址翻译开销。m m d b 中,系统直接指向某一记录的内存位置;而传统的 d b m s 中,系统指向一个块号和块内偏移量。系统必须定位这个块,然后把 这个块装载进内存b u f f e r 中,然后再通知d b m s 数据在内存b u f f e r 中的 具体位置。 b u f f e r 管理。传统d b m s 假设磁盘中的新数据最终要替换掉内存b u f f e r 中 的老数据。所以内存b u f f e r 不断的增加它们的“年龄”,当“年龄”到一 定程度时,一个特殊的线程或进程负责把这些足够老的内存b u f f e r 扫入 磁盘中,并且修改该内存b u f f e r 的状态标记。而m m d b 完全不需要b u f f e r 管理。 内存拷贝。在基于磁盘的d b m s 中,应用从不直接访问系统b u f f e r 中的数 据记录,而是把它拷贝到应用私有进程空间的某个地址后再访问,这又增 加了系统的负担。而加v l d b 则允许应用直接访问数据。 兼容开销。传统d b m s 添加了大量的代码,以便和一些过时的特性兼容, 这些特性是随着2 0 多年来传统数据库的发展一起建立起来的,而这些特 性现在已经被新的标准和现代方法所取代。但是m m d b 则没有这些沉重 的包袱。 2 5 内存数据库的应用 内存数据库的应用背景有两种。一种是大型应用,这种应用要求能够尽可能 第

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论