发布时间:2023-03-23 15:14:54
序言:写作是分享个人见解和探索未知领域的桥梁,我们为您精选了8篇的数据库论文样本,期待这些样本能够为您提供丰富的参考和启发,请尽情阅读。
关键词:资源整合异构数据库互操作联邦式数据库
1引言
异构数据库互操作问题作为数据库领域的研究热点和难点课题,在国内外的学术界和工业界都引起了广泛的关注。自20世纪80年代以来,国外许多公司和科研单位对异构数据库的集成进行了大量研究,取得了不少成果,但国内对异构数据库集成的研究还处于开始阶段。
2异构数据库互操作的概念
异构数据库(HeterogeneousDatabase)集成是数据库技术从完全集中到逻辑集中、物理分布(传统分布式数据库)乃至逻辑分布、物理分布(异构数据库)这一发展过程的结果,也是兼顾已有系统自治性并实现新的数据共享这一现实需求的有效手段。
异构数据库的异构特征包括两个级别:系统一级的异构和语言一级的异构,主要体现在以下几个方面。
(1)计算机体系结构的异构:各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。
(2)操作系统的异构:各个数据库系统的基础操作系统可以是Unix,WindowsNT,Linux等。
(3)数据库管理系统的异构:一种是数据库概念模式的异构:有层次、网状、关系和面向对象4种;另一种是数据库物理模式的异构:指概念模式相同,但数据结构不同,比如Oracle与SQLServer同属关系型,但结构不同。
异构数据库互操作的实现包括三个功能要素:(1)为用户提供功能强大且操作灵活的互操作可视化界面,通过它用户可以直观地对多个异构数据库进行透明访问;(2)提供高级语言数据库访问调用级接口,至于调用级接口的实现层次可由设计者视具体清况而定;(3)支持环境开放性,可能的话还应该支持实现语言开放性。
异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享。异构数据库系统集成就是要将数据库系统的不同,操作系统的不同,操作平台的不同或者底层网络的不同进行屏蔽,使得用户就可以将异构数据库系统看成普通的数据库系统,用自己熟悉的数据处理语言去访问数据库,如同访问一个数据库系统一样,对其进行透明的操作。
3实现异构数据库互操作的途径
面对异构数据库的互操作需求,主要从两个方面同时进行努力:一是建立标准,即建立统一的数据库规范,消除由于标准的不完善而造成的各数据库系统间的差异;二是构建异构数据库互操作平台,实现对多个异构数据库的透明访问。
随着对数据库互操作问题的深入研究,基于不同角度,许多研究者提出了可行的异构数据库互操作途径,这些途径在实现互操作的深度、广度和高度上各不相同,都有各自所适应的特定环境和需求。从异构数据库的核心思想出发,把实现互操作的途径归纳为两大类。
3.1系统级异构互操作
对于DBMS系统一级异构的网络环境下的数据库互操作,主要有四种实现途径。
(1)数据库网关(DatabaseGateway)
数据库网关是一种中继器,它能提供应用级的异构数据库集成的手段。网关的主要作用是转换和通信。
数据库网关可以建立比较稳定和透明的数据库互操作,但是其缺点也较为明显。诸如不关心如何屏蔽数据库之间的异构性,不支持事务处理,资源冗余,用户受限于数据库厂商,不能任意选择客户机平台及目标数据库等问题。
(2)公共协议/数据转换协议技术
公共协议是异构数据库进行通信时采用的公认的数据协议,即公认的系统间传递SQL请求和结果的形式。最常见的协议是ANSI/ISO的关系数据存取(RDA)标准、SGA(SQLAccessGroup)规范和IBM的分布式关系数据库结构(DRDA)。与数据库网关相比,公共协议更具有可扩充性和开放性,能较好地实现异构数据库的透明访问、支持多种网络协议和多种客户平台,是实现异构数据库互操作的有效途径之一。
公共协议/数据转换协议的缺点是协议本身的低效率带来的速度问题。
(3)公共编程接口
公共编程接口包括客户应用编程界面(CAPI)和服务器应用编程界面(SAPI)。CAPI是一组过程库,通常驻留在客户端,通过装载后端专用的驱动程序访问不同的数据库。SAPI提供一个应用编程界面,控制服务器与客户应用请求和目标数据库之间的交互。如Microsoft的ODBC、Oracle的SQL*NET以及IDAPI。其优点有:由于提供了统一的调用级接口,使用户免除了应用程序随数据库改变而改变的痛苦;通过API可使应用程序直接操纵数据库中的数据。数据库访问API的缺点是:针对每一个数据库都需要有一个与其对应的驱动程序;由于不同的驱动程序所支持的数据类型和对数据的操作都不相同,其完全透明地访问异构数据库的能力有限;实现效率过分依赖于驱动程序,而驱动程序将标准语法转换成相应数据库的命令语法要花费大量的时间。
(4)中间件技术(MiddleWare)
中间件是处于应用程序及应用程序所在系统的内部工作方式之间的软件,它的基本思想是在各后端数据源和前端应用程序之间建立一个抽象层。把应用程序与系统所依附软件的较低层细节和复杂性隔离开来,使应用程序开发者只处理某种类型的单个API,而其他细节则可以由中间件处理。这样就使系统对每个不同数据源的操作变成对单一的中间件的操作,而后再对中间件进行异构处理。使用中间件技术解决异构数据库集成的问题,将会给系统集成带来很多的好处。这是因为中间件不仅能够使得前端用户访问后端的异构数据库实现透明化,并且保证了访问接口的开放性,这样可以使系统在以后功能上的扩展更加方便。通过中间件来访问数据库的另一个好处就是所有的客户端的请求都发送到了中间件上,减轻了数据库服务器的负担,保证了数据库服务器的性能不会降低。同时,中间件的采用极大地提高了系统的可维护性,在系统内部的某个逻辑发生变化时,只要改变中间层的相应处理程序,前台用户界面不需要做任何的改动,这样就大大降低了系统维护的费用。
3.2数据结构与语义级异构互操作
目前,对于数据结构和语义一级异构的数据库互操作的研究有紧密耦合和松散耦合两种思想,具体体现于多数据库系统、联邦数据库系统和分布式数据库系统三种方法。
(1)多数据库系统
所谓多数据库系统就是一种能够接受和容纳多个异构数据库的系统,允许各个异构数据库的“自治性”。多数据库系统是一个广义的概念,是相对于如集中式数据库系统或分布式数据库系统那种逻辑上具有同一管理系统而言的,它以多元和分布为主要特征。多元是指它多个彼此区别的集中式或分布式数据库系统;分布则是指数据分布在不同场地的数据库系统中,由各自的管理系统进行管理。
多数据库技术的目标是为在多个数据库之间实现互操作,解决数据库资源共享找到一种技术途径。一般采用分布、异构、自治三个特性作为尺度来刻画多数据库系统。使用这种方法,用户需要显式地指明所要访问的数据库。多数据库系统采用自下而上的方法来实现。
(2)分布式数据库(DistributedDatabase)
分布式数据库的基本思想是抛弃原有的数据库系统,在网络环境下建立分布的数据库系统,在体系结构、事务处理模型等方面重新设计从而解决信息共享与互操作问题。分布式数据库系统分为同质分布式数据库和异质分布式数据库。像Oracle、Sybase、Informix等都是同质分布式数据库系统,这类系统的实现相对来说比较容易一些。异质分布式数据库管理系统大多是在已有的一些数据库管理系统的基础上实现的。
(3)联邦式数据库(FederatedDatabase)
联邦式数据库系统是网络技术和分布式数据库技术发展的必然结果,它是由一组能协调工作,又可以独立自治的部件数据库组成。它可以是原先不分布的,又可以是分布的,具有分布性、自治性、异构性三大特性。
联邦式数据库与分布式数据库系统的区别在于:分布式数据库系统虽然在物理上是分散的,但因为有统一的数据模型及全局数据模式,所以它在逻辑上却是集中的,因此用户感觉到的是一个完整的数据库。显然,这种系统可用于某个专用领域的系统,但不适于不同领域间的异构系统的集成。相反地,联邦式数据库系统是由在不同结点上松散耦合分布的异构成员数据库构成,各联邦成员间的一种松散结合。构成联邦成员的可以是一个集中式数据库,也可以是一个分布式数据库,它们可以根据需要(按某种组合)加邦或者根据需要退出联邦。联邦式数据库没有全局模式,各子系统(即联邦成员)按自己的需求建立各自的数据模式。其成员之间的数据共享关系,通过由协商确定的输入/输出模式来建立,单个成员有权拒绝或允许其它成员结点对它的访问。因此,它能够支持多库系统的分布性、异构性和自治性,使之产生满意的集成。超级秘书网
异构数据库的互操作技术使得数据库在原有技术领域发挥重要作用的同时,在未来新的应用领域也有着重要的影响,如地球观测系统EOSDIS、电子商务、保健信息系统、数字出版、协同设计等领域。
参考文献
[1]萨师煊,王珊.数据库系统概论.北京:高等教育出版社,2000.2.
[2]张水平,万映辉等.异构数据库的集成与互操作.计算机应用研究,2000(1).
[3]郑振楣,于戈等编著.分布式数据库.北京:科学出版社,1998.
[4]刘艳梅.基于COM/DCOM组件标准实现异构数据库的联合使用:[博士学位论文].北京:北京理工大学,2000.
[5]唐巍,周俊林,李晓.异构数据库集成方法初探.计算机应用研究,1999(8).
[6]王艳君,王运格,吴丽红.异构数据库间数据集成的方法.烟台师范学院学报,1999,Vol.15(4).
坐标转换和脱密根据天地图建设相关技术要求,“天地图•成都”采用CGCS2000坐标,利用ArcGIS10.1软件的投影工具对电子地图数据库进行批量投影转换。同时,根据《公开地图内容表示若干规定》,对数据库中不适于面向公众的地理位置及相关信息进行删除、屏蔽、简化、模糊和综合[2],影像数据进行降低分辨率处理使得地面分辨率不优于0.5m。
2地图可视化
2.1符号库的制作根据《地理信息公共服务平台电子地图数据规范》(CH/Z9011-2011),利用ArcGIS10.1软件在ESRI中国的地图模板符号库基础上进行修改、重组、补充,某些特殊符号利用FontCreator字体制作软件,最终形成“天地图•成都”矢量电子地图符号库和影像标注电子地图符号库。
2.2配图模板的制作
2.2.1地图文档组织形式根据电子地图分级与显示比例的规定,通过创建图层组对数据进行管理,即按显示比例尺范围的不同对数据进行分类[3]。一个图层组对应一个显示比例范围,无需逐个设置所有图层,切图比例尺需处于这两个比例尺的范围之内,以避免在地图切片过程中可能发生的瓦片显示错误。地图文档共分3个图层组,每个图层组按三级组织模式,具体如下:1)图层组命名方式为:L+显示级别(比例尺),如L18(1:564.25)。2)数据集命名方式为:要素类别(点/线/面/注记),如水系(点)。3)数据层,如MPHYDPT。按照图面显示效果设置点、线、面、注记数据的上下层关系。
2.2.2地图符号化1)利用ArcGIS10.1软件对提取的要素通过定义查询进行分级显示。制作总体原则是下一级别的要素内容不少于上一级,相邻两级的地图负载量变化相对平缓[4]。选取方法是首先分类选取,优先选取重要地物,然后分要素选取,并且随着比例尺的不断增大,要素内容随之增多。2)对每个要素类利用先前制作的符号库进行符号化,同时,采用MAPLEX高级标注引擎设置要素的标注位置、标注样式、标注权重、标注避让规则等,对道路、水系、地名、POI等要素进行标注并统一管理,保证注记与地物关系的合理一致性以及注记与注记之间的相互不压盖,最终形成公众版矢量电子地图模板和影像标注矢量电子地图模板。
2.3地图优化根据地图分级显示效果利用ArcGIS的制图工具和相关插件进行图面整饰,主要包括分级道路优化、要素连通显示、标注简化、线状地物平滑、地名兴趣点抽稀、制图综合等。根据不同的显示要求选择合适的工具进行优化。由于标注与其他地图数据要分开服务进行切片,为了标注地图与背景地图服务叠加显示后标注边缘看上去有平滑效果,要把标注地图模板图层框背景色改成与背景地图服务色调接近的颜色,“天地图•成都”选取的是RGB(30,30,30)。“天地图•成都”对国、省、县、乡道、城区主要道路采用道路面表示,考虑道路更新的问题没有采用道路融合后加边线的表示方法,而是用一层没有加边框的道路面与加了边框的道路面叠加的方法表示道路互通的融合效果。
3地图瓦片制作
地图配置完成后,利用ArcGISServer10.1进行并切片。切片的基本参数设置为:1)瓦片分块的起始点:(-180,90)。2)瓦片分块大小256*256像素。3)屏幕分辨率为96pdi。4)矢量地图和影像标注地图服务采用PNG24格式。5)影像地图服务采用MIXED(JPG和PNG)格式,采用默认压缩率75%。6)ArcGISServer10.1自带抗锯齿功能,在服务时抗锯齿要选择最佳。
4结束语
本文以面向文档的NoSQL作为数据持久层,面向文档的NoSQL数据库的数据结构设计相对于关系型数据库来说容易许多,在对数据进行查询、数据库操作接口方面都有很大的优势]。因为面向文档的NoSQL数据库不支持多张表的JOIN操作,因此在对面向文档的NoSQL数据集合进行设计的时候需要考虑到这方面的因素。本监测系统主要的业务功能可以分为3个模块,分别是小区信息查询模块、报表统计模块和用户、终端管理模块,因此,数据集合的设计同样从这三个方面进行设计。各个数据集合之间的关系如图1所示。考虑到在对数据表进行设计所依据的原则基本一致,因此以下仅对小区信息查询模块的数据表设计进行着重分析。设计数据模型需要结合系统的特点进行分析。此系统主要实现的功能是对小区天线参数信息进行保存、管理,并以友好的界面展示给用户,并响应用户的各种操作。因此,在大部分的操作中,存储天线实时参数的ANTENNAARGS表会产生大量的插入操作,本文根据各个表的不同读写比进行了设计,如图2所示。本文将天线表、区域表以内嵌的形式放入了小区表,将天线参数表设计成单独的集合,并以引用的方式指向了小区表主要是考虑到天线参数集合是被访问最频繁的表,会产生大量的读写操作,因此在小区集合与天线参数集合之间采用的是范式化的模式。其中,天线工参表(ANTENANARGS表)用来存储从各个采集终端传输至管理系统的小区天线实时数据信息,具体如表1所示。小区信息表(CELL表)用来存储各个小区的地址、天线相关参数详细信息,如表2所示。除了上述表之外还有采集终端表(TERMI-NAL)、天线信息表(ANTENNA)和告警表(ALARM-REPORT)等。数据库运行时,自动将所对应的数据存入相应表中。
2数据库自动分片设计
管理系统在运行中会产生大量的写操作,进而带来频繁的磁盘I/O操作,在大数据下,最好采用将数据库分布在多台服务器上,即分片[7]。本文采用Auto-Sharding(自动分片)及Replic-Set(复本集)相结合的方式来减轻单个数据库服务器的负载,即在每台Server上各自运行一个实例,组成一个Replic-Set,最后再各运行一个实例,组成ConfigServer。直接执行Addshard操作即可增加分片以缓解服务器的压力,实现动态扩展。分片的实现重点在于片键设计。本文将保存天线参数信息的集合声明了一个复合片键{Lacci:1,Day:1}。当来自不同的小区(可以根据Lacci进行判断)向集群系统插入数据时,可以预计到在大部分情况下,同一小区的数据会落在单个块或片上。
3数据库查询的实现
数据查询功能为本数据库设计的重要功能之一。数据库将小区信息、天线参数等相关的数据信息根据用户的要求,以界面或报表的形式全部或部分的显示给用户。基于本数据库的设计,用户通过数据查询菜单进入相应查询界面,获取小区信息、终端信息及告警信息等。实现“天线工程参数查询”功能的工作流程如图3所示。为了实现小区天线参数查询功能,客户端需要向数据库发送2次请求,用户根据需求,向控制器发送查询请求,控制器处理查询命令,对相应的小区进行信息查询,待小区返回信息后,将用户的查询命令发送至对应小区,根据需求读取有用信息,并返回给用户。跟关系型数据库相比,由于省去了大量的多表连接操作,实际上查询的效率要高于基于关系型数据库的多表连接查询。查询工作的SQL语句如下。
4数据库备份与恢复
数据安全在数据库设计中有很重要的地位。在各种意外情况下,如计算机硬件故障等,对数据库进行备份和恢复能够保障数据的完整性和安全性,使得数据损失降到最小[8]。本数据库设计的备份选用的是副本集的方式[7]:在主节点上进行操作,写入的数据被一步地同步到所有的从节点上,并从主节点或从节点上读取数据,如果主节点由于某些原因断线,会自动将一个从节点提升为主节点。在查询分析器中运用SQL语句完成数据库的备份和恢复。在数据库管理界面中,用户通过数据库备份与恢复功能进行相应操作,确保数据的正确行和完整性。
5结束语
【论文摘要】本文就高校建设专业特色数据库的方案、内容、服务以及注意的问题进行了研究和阐述。
随着我国高等教育体制改革进程的加快,我国原有高教体制上存在的条块分割、专业单一、低水平重复办学的弊端被逐渐打破。通过高校间的合并、重组,各高校都相应调整了专业结构,加强了重点学科建设,增强了自身竞争和办学优势,突出了办学特色,相互之间形成了学科交叉、优势互补的局面。而各高校图书馆为适应和配合学校的这一系列转变,必然相应地加大对重点学科特色专业文献资料的收藏和开发力度,这也使高校图书馆之间形成了各有所重、各有所长、各有特色的局面。而另一方面,当前各高校的网络化程度已相当高,校园网、教科网、因特网已相继开通使用,而且部分省市已经准备在本地区高校图书馆之间架设光纤,把各馆相互连通,用于馆际文献传输。如何更好地利用当前先进的网络技术、信息技术,使那些内容丰富、各具特色的馆藏文献充分发挥它们的价值,做到馆文献资源共享、优势互补,是值得我们认真研究和巫待解决的问题。高校图书馆专业特色馆藏数据库的建设,为此提供了一个很好的解决途径。
1建库的方案及原则
1.1建库的方案
目前,高校图书馆已经开始建设或准备建设各自的全文数据库。在建设过程中大都缺乏组织机构的统一规划和协调分工,数据库的建设停留在各自为政、自建自用的状况。这种各自为政的状况以及各馆在技术、资金、人员、管理等方面的原因,造成了大量低水平的重复投资、重复开发,不仅人力、物力、财力浪费严重,而且使数据库普遍存在结构单一、标准不统一、涵盖面窄、内容重复、共享度低、通用性差的问题,这对图书馆网络化服务水平的提高及文献资源共享的实现起了一定的阻碍作用。因此,我们在建库时,首先要考虑到建库的方案问题,是各馆独立开发还是联合协作开发?本人认为专业特色数据库的建库方案可以参考目前各地区在建设的CALIS联合目录数据库的方案,走联合开发的道路,采取地区网络联合数据库的方案。首先,建立本地区的组织协调机构,实行“统一目标、统一规则、统一标准、统一管理”的模式。在对各院校学科特色和馆藏特色进行调查研究后,对其数据库开发进行统一指导和协调。具体操作中可把学科门类分为几大块,如理工、财经、医药、农林等等,然后再由几个同类型院校共同承担该学科数据库的建设.当然,其中还需相互分工,各有所重。其次,各馆应打破原有的封闭现象,改变以往各自为政、孤军作战、小而散的建设方式,在组织机构的指导下相互联合、有计划、有分工地共同开展建库工作,对信息资源进行有效配置和可持续的开发。各馆在建设各自所承担的特色数据库的过程中,则可按照分工要求自行开发,进行建库的设计、源文献的收集整理、文献的数字化处理、提供应用服务的方式。当然,在联合建库的形式上还可参考国外的一些联合建库模式。
1.2建库的原则
1.2.1实用性原则
专业特色数据库的建设要考虑其是否具有实用价值、需求有多大、投人和产出是否相宜,即是否具有良好的社会效益和经济效益,不能盲目上马。因为特色数据库的建立从其目的来说是为了更好地发挥图书馆的功能和特色优势,使之产生良好的效益,充分体现图书馆存在的价值。因此,专业特色数据库的建设要在充分的调查研究的基础上进行。
1.2.2趋势性原则
建立专业特色数据库要顺应专业学科和数据库本身的发展潮流,包括国内与国际的发展趋势。如:规模、形式、多媒体化、网络化等。把握这一原则可以让我们有更好的发展空间,寻找到适合我们自身特点的位置,避免一些不必要的失误。
1.2.3共建共享原则
即联合开发、资源共享。
2专业特色数据库建设的内容
各高校馆丰富的特色馆藏是专业特色数据库的主要信息源。经过长期的学科建设,各校在自己的重点学科领域已显示出独特的优势。各馆同时也收录了大量相关文献,并且重点收藏、重点建设、优先投人那些专业性、学术性、权威性的文献资料,使之尽可能的丰富、系统、完整,形成各馆的特色馆藏。
2.1专业文献资料
内容包括本专业的国内外核心期刊、科技期刊会议录、其他报刊和内部报刊中有学术价值的本专业文献,以及经过加工整理后的网上文献资料。
2.2法规、专利、标准
主要包括国际上各行业及国际组织颁布的最新标准,国家颁布的有关政策法规索引,国家颁布的各行业标准、产品标准及国内外的专利文献。
2.3专家科研成果
本学科著名专家教授的研究方向、研究状况、研究成果和特色。主要应收录其发表在核心报刊中的论文、研究交流报告、学术演讲报告等文献群体。
2.4学位论文
博士、硕士学位论文对于相关学科的研究开发具有重要的参考价值,但它的分布较为分散,读者难以查找,故应予重点收录。
2.5学科综合信息
系统全面地反映学科信息,展示国内外科学技术发展动态和科研成果.如:863计划项目、国家自然科学基金项目、省市重大攻关项目、工程应用和设计项目,目前最新的具有影响的各种科技产品、近年来有关学科已完成的成果及获国家和省市的科技奖的科研项目等。
在对数据库文献源的收录过程中还要注意它的时效性与过期可获得性,要对文献源进行充分的分析研究,严格的收集、加工和筛选,为读者提供更新更多、更准更全的文献数据。
3良好的服务功能
特色数据库的建设不仅仅是简单地把传统纸质和其鸽载体形式的文献数字化,而且有其最本质的特征,即智能化的检索。相对于传统的特色文献来说,特色文献数据库与其最大区别就是强化了其信息服务功能,在其基础上实现了质的飞跃。数字化是相对传统文献而言的信息形式上的改变,最本质的改变仍在服务质量上,而这也正是读者和用户最为关心和希望得到的。因此,数据库必须实现智能化检索,为读者用户提供快捷、全面、准确的检索工具,真正做到以读者为中心。
3.1检索界面
检索界面应该简洁、清晰,没有繁杂的检索步骤,可操作性强。帮助功能应具有实际指示作用,并提供留言功能。
3.2检索方式
数据库系统应提供关键词、主题词、题名、著者、出版机构等多种检索途径。可以根据需要进行单项检索、组配检索、模糊检索,并可使用截断符、接近符、省略符、替代符指明词间关系或扩大、缩小检素范围,也可增加一些限制功能,如:限制时间、馆藏地点等。
3.3检索选项
3.3.1跨库检索
用户可以根据需要选择使用一个或多个数据库,实现一个检索命令跨多个数据库自动检索,以获得交叉学科、相关学科的信息。
3.3.2多年检索
应可以同时检索最新文献和过期文献,使用户在二者之间方便进行切换。
3.3.3检索历史
让用户可以保存、查看自己的检索历史,在当前检索区可以利用和修改以前的检索。工作人员则可利用它跟踪用户的需求或将其加工成某些动态信息。
3.3.4主题词表
数据库应提供主题词表检索功能,即利用主题词表进行检索词的规范选择,并根据主题词的上下位关系、相关关系和替代关系调整、确定检索词,然后直接启动检索。还可根据需要修改主题词表,或通过对用户检索词的统计扩充主题词表。
3.4检索结果
检索结果的实现包括排序、显示浏览、聚类、套录、打印、E-mail发送等。超级秘书网
4建库过程中需注意的一些事项
4.1要注重全文数据库的一些技术特征
包含内容的原始性、信息检索的彻底性、所用检索语言的自然性、数据相对的稳定性、检索结果的准确性、数据结构的非结构性。
4.2数据准备
要注重对文献源数据的收集、整理、筛选、归类。
4.3文本预处理
要做到统一著录标准,规范格式和标引。
4.4数据维护
要定期对数据内容进行更新追加和清理修正以及对所用词表、存储空间的利用统计和调整。
4.5统计功能
提供各种统计数据和用户信息,量化各项指标,使之成为决策依据。
4.6做数据库的宣传工作,提高数据库的利用率
5培养一支高素质的复合型人才队伍
其素质包括:对某学科及其分支有充分研究,对某专题领域的相关信息源有丰富的使用经验和了解,熟练掌握网络环境下的信息资源的获取技能,有较强的创新能力、分析能力和综合应变能力。
参考文献
1吴晓骏.大学图书馆丈故信息数据库建设中应注意的几个问题.现代图书情报技术,2001(4)
2谢琴芳,白祈萍.书目资源的共建、共知和共享.大学图书馆学报,1999(2)
3魏建华.奋共图书馆自建数据序的原则与方向.图书馆论坛,1999(2)
关键词:DM3数据库;互联机制;设计
多数据库系统是分布式数据库系统的一个重要分支,是一个新兴的数据库研究领域。随着企业规模的不断扩大,各部门所需信息既相互交错,又相对独立。这就要求各部门所用的数据库既能高度自治地工作,又能进行信息共享。
DM2是采用客户/服务器模型,客户机与服务器,服务器与服务器均通过网络互连,通过消息相互通讯,组成一个紧密耦合的分布式数据库系统。它的工作流程如下:客户机登录到一台服务器上,这台服务器便成为它的服务器;它接收来自客户机的消息,然后根据全局数据字典决定是自己独立完成该操作,还是与其它服务器协作处理这条消息,处理完成之后,再由服务器将处理结果返回给客户机。由于DM2上各个服务器站点的全局字典完全相同,任何全局表的信息都会记入全局字典。若用它来构建一个企业的数据库系统,则大量只对企业某部门有用的信息将会充斥在各部门所有服务器的全局字典中,增加了冗余。而且,当对全局表进行DDL操作时,为了确保全局字典的一致性,须对所有服务器的全局字典进行加锁。DM2对全局字典的封锁方式是采用令牌环方式,即令牌绕虚环(非实环)传输,某个服务器想对全局字典进行操作,必须等令牌到达该服务器才可以执行。每个部门建立的全局表绝大多数只对本部门有用,当对这些表进行DDL操作时,却要对所有服务器的全局字典进行封锁,通过令牌来实现对全局字典的互斥访问。这严重损害了数据库的效率。
为弥补以上不足,在DM2的改进版本DM3中增加了协调器,用以联接各个独立的DM3数据库子系统,并协调各子系统间的各种关系,使各子系统既能高度自治地工作,又能进行有效的信息共享。
一、多数据库体系结构
本系统可看作多个数据库子系统被协调器联起来的,高度自治的一个联邦数据库系统。其中,每个子系统独立处理本系统内部的事务,而子系统间的信息共享由复制技术提供,副本间的一致性由协调器协调处理,处理所需的信息在初始化时写入协调器的组间数据字典中。当对某子系统中的一份数据副本进行修改时,该子系统会将修改通知协调器,由协调器对该数据的其它副本进行修改,从而保证了所有副本的一致性。
由以上可知,子系统彼此并不直接接触,而是各自都与协调器直接相联,由协调器统一管理子系统间的通信。这样,当子系统对副本进行修改时,不必关心相应的子系统处于何种状态,也不必等待回应消息,以及异常处理,所有这些都由协调器进行管理。因此,既提高了系统运行的效率,也保证了子系统的独立性。
协调器主要有三大功能,首先,它对协调器和服务器进行初始化,并将有关信息存入组间字典;其次,它管理不同子系统间的通信,维护副本的一致性;最后,它在子系统出现崩溃时,进行异常管理及恢复工作。
二、多数据库互联机制的主要策略
多个DM3系统间的信息共享是通过副本实现的,副本的一致性是由协调器来维持的,是一种弱一致性。通常,多数据库系统间的一致性是通过协调器周期性地访问服务器的日志来完成的。由于副本的更新带有随机性,因此,若采用这种方法,可能数据被修改多次,但其相对应的副本仍未被修改,这样就损害了数据的一致性;也可能数据并未被修改,但协调器已多次访问了服务器的日志了,这样就降低了系统的效率。
所以,本系统采用的方法是当数据被修改时,由服务器通知协调器有关信息,再由协调器通知相关系统,修改相关数据。这样,数据的修改及时(仍然是弱一致性),而协调器也不会在数据未被修改的情况下访问服务器,提高了准确性。
为了使协调器正常工作,我们对底层数据库管理系统DM2进行了修改。在基表控制块TV_CTRL_BLOCK中增加一项IsReplication。建表时,该项初始化为false;当为该表建立一个副本时,该项赋值为true。具体算法如下。
1、初始化算法。
协调器:从用户或应用程序接收待连接的两个系统中的服务器名,需复制的表名;分别登录到两个系统的服务器上;向存有待复制表的服务器发预复制消息;等待服务器消息;若失败,发一条失败的消息给服务器和用户或应用程序;若成功,从消息中取出待复制表的有关信息,根据这些信息,发一条建表消息给另一个系统的服务器;等待服务器消息;若失败,发一条失败的消息给服务器和用户或应用程序;若成功,调数据转移程序,进行数据复制;将有关信息写入组间字典,退出。服务器:当服务器收到预复制消息后,将基表控制块TV_CTRL_BLOCK中的IsReplication赋为true。同时,取出待复制表的有关信息,组成应答消息发给协调器。当服务器收到失败的消息后,将基表控制块TV_CTRL_BLOCK中的IsReplication赋为false。
2、维护算法。
协调器:从组间字典读出相关信息,根据这些信息,登录到相应系统上;等待消息;从某系统的服务器上收到一条修改消息后,通过查找组间字典,确定该消息的目的地,然后将它转发过去;若失败,定时重发。
服务器:1)等待消息;2)当收到某客户或应用程序的消息后,检查它是否是修改数据的操作(如delete,update或insert等);若是,检查基表控制块TV_CTRL_BLOCK中的IsReplication是否为true;若是,向协调器发修改消息;继续执行服务器程序的其它部分。:
一、实验情境设计
某小型企业已建立采用B/S结构设计的销售管理系统,其后台数据库名称为example,products表和orders表是example数据库中的两张表。要求用户a~e能登录数据库服务器并按照设计的访问控制权限访问相应的服务器及数据库资源,访问用户及权限设置如表1所示:表1用户及访问权限设置表
二、实验技术分析
本实验主要实现在SQLSERVER中对数据库安全性的管理问题。首先明确SQLServer中身份验证的种类和实现步骤,然后再熟悉为用户分配登录账号和权限的操作方法,对于SQLServer安全性的各种管理,尤其是对数据库访问控制操作有深入要求。要管理数据库安全性,必须了解各种账号和权限,因为安全性就是通过它们的分配来实现的。所以掌握它们的区别和用处非常重要。(一)SQLSERVER身份验证模式SQLSERVER身份验证模式指SQLSERVER如何处理用户名和密码的问题,SQLSERVER提供两种身份验证模式。1、Windows身份验证模式,在这种方式下,用户只可以使用Windows身份登陆连接到SQLServer,由Windows操作系统对客户端进行身份验证。我们知道,SQLServer和Windows同属于微软公司的产品。当使用Windows身份验证连接到SQLServer时,SQLServer使用Windows操作系统中的信息验证账户名和密码,用户不必重复提交登录名和密码。这种验证方式的弊端在于若采取B/S结构服务器,远程客户机无法连接到服务器,这时须使用混合验证模式。2、混合验证模式,即可以同时使用Windows身份验证和SQLServer身份验证。使用具体验证方式取决于在最初通信时使用的网络库。如果一个用户使用TCP/IP进行登录验证,则使用SQLServer身份验证;如果用户使用命名管道,则登录时将使用Windows身份验证。[1]图1SQLServer安全性决策树通过以上两种身份验证模式,用户如果想使用指定的登录名称和密码连接到SQLServer,SQLServer会按照图1所示的安全性决策树进行安全身份验证。本实验中要实现在采用B/S结构设计的销售管理系统中让不同的客户端用户能访问服务器的数据库资源,所以身份验证模式可以设置为“SQLServer和Windows身份验证模式”。(二)账号和权限1、登录帐户登录账户是让用户登录到SQLServer服务器中用的账号,如果用户不能登录SQLServer的服务器,也就不能访问该服务器上的数据库资源。在实验中,需要创建登录帐户logina~logine,让这些帐户都能登录数据库服务器。2、数据库用户一个SQLServer服务器下面可以建多个数据库。能登录到SQLServer服务器,不一定能访问到服务器中的数据库。在实验中,需要创建数据库用户userb~usere,使这些数据库用户都能访问sample数据库。3、角色为了便于管理数据库的的权限,SQLServer提供了若干“角色”,“角色”就是用一种方法来把用户集中到一个单元中,并在此单元上应用权限。SQLServer提供了预定义的服务器角色和数据库角色,也可以在数据库中创建用户自定义的数据库角色。在实验中,用到如下两个固定的服务器角色和数据库角色:sysadmin固定服务器角色的成员可以在数据库引擎中执行任何活动。db_backupoperator固定数据库角色的成员可以备份数据库。由于本实验中用户a需要访问控制全部服务器资源,即用户a要求完全的数据库服务器访问权限,所以用户a应设置为固定服务器角色sysadmin的成员之一,使之成为服务器的超级管理员。用户a的安全访问流程如图2所示。图2用户a安全访问流程用户b要能备份数据库,可以将其添加到数据库角色db_backupoperator中,用户b的安全访问流程如图3所示。用户c与用户d都要访问数据库中的表,所不同的是具体的访问对象及访问权限,在实验中可以创建两个自定义的数据库角色R1和R2,将用户userc、用户userd分别添加到R1角色R2角色中。4、权限在为用户和角色分配登录帐户后,还必须为他们分配权限以增强数据库的安全性。权限详细地说明了可以让用户使用哪些数据库对象,并可以对它们进行哪些处理。用户在数据库内的权限取决于用户帐户的权限和该用户所属的角色成员。在实验中为R1角色授予查询、修改products表的权限,为R2角色授予查询orders表的权限,为用户usere添加访问products表、orders表的权限。用户c~用户d访问数据库资源的控制方式如图4所示。图4用户c~用户e安全访问流程
三、实验过程
该实验需要每人PC机一台,操作系统为Win-dowsxp或win7,实验的数据库管理系统软件为SQLServer2005或SQLServer2008。请学生务必用每个用户的身份进行登录、比较操作以校验数据库安全访问控制实验过程的正确性。
四、实验总结
关键词:电力系统;动态信息数据库;磁盘保存形式;内存映射
0引言
数据库技术在电力系统电网调度自动化中得到广泛使用。借助数据库,能够有效保存不同离散遥信量,能够记录各种电压、电流等不同数据信息。数据库能够保存各种历史信息内容,供电网使用。历史数据的合理保存是数据分析的关键和基础,促使低频采样周期数据满足实际需求。
1基于时间序列下动态信息数据库框架
电力系统动态信息数据库分为三层。第一层是数据保存层,主要是文件管理和磁盘缓存模块,合理保存大量动态信息。第二层是数据处理层,一般是网络通信、数据解压和查询等不同模块,主要工作是保存数据,合理压缩,在形成索引前合理处理,并及时对数据进行查询、统计、后期处理等。第三层是应用程序接口,可以二次开发利用。动态信息数据库系统主要由三部分组成,分别是服务器、命名服务器和数据访问客户。数据处理器是动态信息数据库的中心,能够合理压缩和查询数据。命名服务器能够控制数据。数据访问由两部分组成,第一是动态信息数据库维护,第二是保存和查询二次接口。数据服务器启动运作期间,需要向命名服务器注册具体名称和地质。客户端访问工作期间,在处理服务器前期,需要和命名服务器连接,处理访问数据地址,合理保存数据[1]。
2电力系统动态信息数据库关键技术应用
电力系统动态信息数据库的关键是建立在时间序列基础下的动态数据保存、管理和查询对策划,关键技术主要是并发数据处理机制、内存映射文件、磁盘处理形式等[2]。
2.1并发数据处理机制
动态信息数据库高效工作的关键是满足客户端提出的需求,强化磁盘文件交互质量和效果。通常情况下,基于多核CPU技术形式,合理使用服务端处理线程,强化计算处理能力,即合理处理物理磁盘读写速度问题,分析磁盘高速数据吞吐间的平衡程度。数据处理主要是写和读两种形式[3]。为使数据可以达到高速处理基本要求,需要借助线程池技术处理数据,有效使用不同CPU并行在一个TCP连接上,进行报文处理工作,即对一个连接上的任务进行并行化处理,达到高质量处理效果。并行处理技术在书写数据期间,能够最大限度提升服务端数据处理效果。通常情况下,数据处理速度是300万事件1s。数据读取处理和线程池技术,可并行处理不同客户的真实需求。系统设置高度缓存区,借助ORACL数据库综合分析策略,保持高速缓存,在并发查询中实现数据的有效共享和分析,从而高效访问终极目标。并行化处理技术读取数据期间,能够提升服务端的整体速度,通过实际测试系统实现20个并行查询期间,客户读取时间大概为10万事件1s。
2.2内存映射文件形式和磁盘保存机制
动态信息数据库保存TB级别的所有数据文件,能提升文件磁盘处理速度,是动态信息数据库提升工作效率的基础。借助统一化磁盘保存技术处理内部映射文件,不同工作线程对数据文件部分进行映射处理,达到高度保存数据的基本要求。内存映射文件形式。内存映射文件形式和虚拟内存相差无几。借助内存映射文件保存一个地址空间保存区域,将物理保存期上交到此区域内部,内存文件物理保存器将其保存在磁盘上,即非系统文件内容。文件操作前期需要进行映射工作,将整个文件从磁盘中加载,借助内存映射文件有效处理磁盘上的文件。所有文件保存形式都采用直接管理形式,能够节省很多内存,使文件释放更多时间。部分映射的缓存管理机制建设。因为需要以TB级别形式保存所有数据源、文件,所以不能一次性将所有数据信息全面映射在内存文件,需要借助缓存管理形式保存和分享海量信息。缓存管理一般使用固定内存形式,将内部含有的各种数据不断映射在处理服务器地址空间,进而达到更好的保存效果。对于系统中存在的动态数据信息,通过索引形式确定。磁盘缓存管理器中存在的数据,全部放置到一个共同缓存区域,依据LRU对策合理化管理。
2.3关联数据保存形式
结合电力系统的根本特征进行分析,标记保存的历史数据,主要包括时标、数据值和质量码三种形式。电力系统基本特征格式如下:时标8字节、数据值4字节、质量码4字节。时标主要利用2字节整数表示,精准度为1μs,数据值可以使用精准浮点表示,质量标志一般利用4字节整数表示。因此,一个完整事件点使用的保存空间一般为16字节。
2.4电力系统数据收集处理流程
动态海量数据库可以将不容数据点分为离散数据和连续数据两种类型。结合数据性质的差异性,使用不同处理形式。离散数据点主要是电力系统中存在很多变化的数值量,比如遥信量、被返回的原始值等,不能进行插植处理。连续数据点对应的是连续变化的测量数值,比如电压、电流等连续变化的数据。动态海量数据库需要结合设置的内容进行分析和研究,强化电力系统工作效果。
2.5混合压缩算法
动态数据库可以分为两种形式,分别是有损和无损,整合后最终形成混合压缩算法。有损压缩就是使用线性带宽压缩算法,压缩率为8~10。无损压缩就是将浮点依据IEEE-754表示形式分为1位、7位和23位,小数需要再次压缩,精准度处理。将三部分数值全部压缩处理后,以随机序列形式将其扩大为原来的3~5倍。质量位可以借助哈夫曼算法合理处理,连续量可以使用混合压缩算法。压缩率是有损和无损的乘积。分析数据的最终特征,确保动态信息的压缩效果,是通常情况下的25~30倍。
2.6电力系统数据采集处理步骤
动态数据库中有很多数据内容,可以分为离散数据点、连续数据点两种形式,结合数据基本性质差异性,采用不同数据处理形式进行全方位处理和分析。离散数据点主要是电力系统中存在各种有序变化且不连续的量,比如遥信量、设备运行状态等。对实际工作中存在的各种离散数据点进行压缩处理,使用系统查询和保存原始数据信息,整个过程中不使用插值处理。连续数据点是测量和处理一些连续性变化的数据,比如电压、电流等动态化数据内容,结合具体情况设定压缩允许误差,压缩处理历史数据,将压缩后的数据全部保存在磁盘中。
关键词地理信息系统,数据库访问,空间数据库引擎(SDE),C/S模式,ODBC.
引言
近年来,网络技术得到迅速的发展,这就为信息资源的共享提供了技术上的可能.作为信息密集型的地理信息系统(GIS)上升到网络平台可谓适逢其时.但从目前的应用情况来看,除了国外极少的公司拥有网络版的GIS之外,在国内还处于试验研制的阶段.因此,尽快地研制出我国自主版权的网络GIS的原型和产品,并在技术手段上达到国际先进水平,是摆在我们面前的一项迫切的任务.
1网络计算的几种模式及特点
(1)传统的集中式.这是一种主机-终端模式,所有的计算任务和数据管理任务都集中在主机上,终端只是主机输入/输出设备的延长.这种模式的优点是容易管理,缺点是对主机的性能要求很高,也浪费了作为终端的计算机的计算能力,并且从性能价格比来看,在购置费用相当的情况下,一台主机的性能往往比不上几台计算机所组成网络的性能;因此这种模式已逐渐退出主流.
(2)客户机/服务器(client/server,简称C/S)模式.一般说来,在这种模式下,服务器只集中管理数据,而计算任务分散在客户机上,客户机和服务器之间通过网络协议来进行通讯.客户机向服务器发出数据请求,服务器将数据传送给客户机进行计算,计算完毕,计算结果可返回给服务器.这种模式的优点充分利用了客户机的性能,使计算能力大大提高;另外,由于客户机和服务器之间的通讯是通过网络协议进行的,是一种逻辑的联系,因此物理上在客户机和服务器两端是易于扩充的.它是目前占主流的网络计算模式.
(3)浏览器/服务器(browser/server)模式.在这种模式下,用户端只需一通用的浏览器,如Netscape或Explore,便代替了形形的各种应用软件.服务器则为Web服务器.浏览器和服务器之间通过TCP/IP这一通讯协议进行连接.浏览器发出数据请求,由Web服务器向后台取出数据并计算,将计算结果返回给浏览器.这种模式的优点是:由于用户端所用软件只是一个简单的浏览器,用户基本上无需培训,用户端软件也无需维护;软件的升级与修改只在服务器端进行,对用户透明;服务器与浏览器可处于不同的操作系统平台.其缺点为:Web动态技术不够成熟,各种标准有待统一,如各厂家的动态协议互不支持、浏览器之争等.总之,它是一种先进的但发展还未成熟的技术.
基于以上的分析,应选择客户机/服务器模式作为GIS访问网络数据库的实现模式.
2C/S模式下的GIS访问网络数据库的结构设计
设计在总体上分为C/S两层(见图1),以充分利用C/S模式的跨平台、易扩充、数据独立等优点.在client端又分两层来进行设计——GIS功能层和数据请求层,GIS功能层是GIS的功能实现部分,数据请求层是GIS的数据实现部分.数据请求层作为一中间层,起到数据转换的作用,对上是具有GIS特点的数据文件,对下是标准的数据库记录.这种分层设计的形式一方面充分利用了现有的单机版本GIS研究成果;另一方面,GIS功能层和数据请求层的开发可同时进行,只要接口标准不变,本层的变动不会影响到另一层.
Fig.1ThegeneralframeworkofGISaccessingdatabasebasedonC/Smodel
值得一提的是ESRI公司的空间数据库引擎(spatialdatabaseengine,简称SDE)的设计方案(见图2).它是目前国际上领先的GIS数据处理的网络计算模型.其数据的访问形式为:由用户的应用程序(userapplication)通过SDE应用编程接口(SDEAPI)向SDE服务器提出空间数据请求,SDE服务器内存放有空间对象模型,并依据空间对象的特点在本地完成空间数据的搜索,并将搜索结果通过网络向用户的应用程序返回.
对比图1和图2可以看出两者采用的都是C/S模式,并且都将GIS功能实现与数据请求进行分层处理;所不同的是面向数据库的数据请求实现的位置:图1在客户机端实现,图2在服务器端实现.在服务器端实现的主要优点为:(1)对于空间对象模型及相关的计算模式的升级可以只在服务器端实现,而且对客户机端透明;(2)由于SDE服务器与数据库ORACLE7.2的结合非常紧密,因此数据的搜寻速度非常快.对于图1来说,把数据请求层放在客户机端,对数据库的依赖程度就不同于SDE服务器,后者对数据库的选型有极强的依赖性(目前SDE服务器只在ORACLE7.2实现),相反,它是一种非常开放的结构,它所支持的服务器不但可跨数据库系统平台,而且还可跨操作系统平台.可以说,图1和图2两种设计模式的优缺点是相互对应的.
3数据库访问方式的比较
基于程序的访问数据库的几种方法如下.
(1)专用的数据库访问工具.如PowerBuilder,Delphi等,它偏向于对数据库中数据的管理和显示,具有限的计算功能.既不适于用它来开发GIS应用系统,也难以将它们的数据操纵功能与现有的GIS应用系统紧密结合.
(2)嵌入数据库语言的常规语言.各数据库厂家为了让用户程序能直接访问自已的数据库,基本上都提供了专有的面向C语言的预编译头和静态库,如Sybase公司的OPENCLIENT和ORACLE的PRO*C.
(3)开放数据库互连性应用编程接口(opendatabaseconnectivityapplicationprogramminginterface,简称ODBCAPI)[2,3].它是微软(Microsoft)公司提出的数据库访问形式.它通过确保所有的应用系统遵循标准的调用层接口,提供对特定数据源命令进行解释的驱动程序来保持应用系统的互用性.这样的应用系统是开放的,只要有相应数据源的ODBC的驱动,它就无需改变代码而可访问相应的数据库.
在确定访问数据库的方式时,ODBCAPI的开放性的优势是不言而喻的,但这种方式在效率上不如第二种访问形式.应说明的是:ODBCSQL语法分为3层,即最小层、核心层和扩展层,尽管目前的大型数据库都能支持到扩展层,但为了保证应用系统的开放性,在具体编程实现时,尽量只使用最小层和核心层的语法.
4某电信局配线系统的实现
客户机为MAPGIS/ODBC/WINDOWS95,服务器为SQLSERVER/WINDOWSNT,要访问的相关表中记录约为13万条.要求从地理底图上选中某一DP,在数据库中寻找出从这一DP到配线架的可用通路,并在数据库中作相应配线修改.如图3所示.结果表明:(1)程序实现了MAPGIS访问网络数据库的功能;(2)客户机和服务器均为PC机(主频166MHz),每次操作反应时间为数秒,换机观察,发现服务器的性能是整个网络计算的瓶颈.
5结论
(1)C/S模式为目前网络平台GIS的首选,将GIS功能与数据库访问分层实现有利于保护现有的开发成果;(2)将数据请求层放在客户端和以ODBC作为数据库的访问方式保证了应用系统的开放性,其访问可跨越数据系统和操作系统平台;(3)实例表明,应用系统的反应速度更多取决于服务器的性能,而不是ODBC的效率.
参考文献
1/base/common/userconf/proc96/TO100/PAP094/P94A.HTM.1998.4