DBMS

2024-08-02

DBMS(共3篇)

DBMS 篇1

知道何谓数据库的人大都知道My SQL或ACCESS,它们叫做数据库管理系统,Database Management System,下称DBMS。普通用户使用这些工具的时候,往往无需理会发生在背后的DBMS市场的竞争。但是目前正在全面铺开的关于DBMS的变革,你不可以不了解。

数据仓库DBMS市场已经从支持传统的商业智能平台的信息存储,发展到支持业务分析、企业绩效管理,甚至支持如操作型BI(商业智能)或绩效管理的更广泛的分析架构。许多企业也因此将更多的负荷和数据载入从联机事务处理(OLTP)转移到数据仓库,数据装载也正转变成接近连续加载的模式。

2009年整个数据库管理软件市场持续增长,年增长率已超过10%,可见发展势头之迅猛。相应的,由于“有利可图”,数据仓库DBMS市场的竞争变得越发激烈。在2009年,我们看到企业已经热衷于数据仓库解决方案———超过50%的组织机构开始或已经部署技术一流的解决方案,且追随着“使用简便”、“快速投入应用环境”及“满足企业性能需求”的宣传口号。IBM、Oracle和Teradata仍在为争夺龙头老大的位置大打出手。Microsoft带着它更具挑战性的DBMS加入这场冲突中,并且快速的蚕食中型商业市场。更有1010data,Infobright等代表着新生势力的初创企业也希望分一杯羹。

权威市场分析机构Gartner在2010年1月最新发布了2009数据仓库数据库管理系统Magic Quadrant报告。该年度报告分析了数据仓库DBMS市场在进入2010年之际的市场现状,包括市场增长速度、相关的供应商及解决方案等等,被业界公认为是进行数据库投资决策时非常有价值的权威参考资料。Gartner公司依据标

准对该市场内的厂商进行了分析,并将这些公司列入在其极具特色的象限图中,进行图形化描述。

DBMS厂商出现三大阵营

Gartner依据数据仓库的定位和战略情况,对2009年活跃在DBMS市场上的供应商归结为三类:领导者,竞争者和新创者。评估主要是根据企业前瞻性策略和本年度执行能力体现两项标准。领导者囊括了拥有大量并发用户的提供商,他们能够对管理混合工作负载的各种规模的数据仓库提供最强大的支持。他们因为始终如一地为客户提供满意的服务和强大的支持、在数据仓库DBMS市场资历较深且拥有强大的硬件联盟,所以被评选为数据仓库市场的领导厂商。在这次的研究报告中,IBM,Oracle和Teradata被列入“领导者”的前列。

他们均展示了自身引领市场的强大实力。对于IBM来说,他不仅能够将存储、服务器、网络和数据管理系统整合在一起,将其作为单一的产品进行支持和发售,还更进一步把BI软件和专门行业的内容整合到同一个系统包中,这一举措将为目前数据仓库和商业智能中采用的零件式整合方式带来很大的冲击。面对强劲的对手,Oracle将可能做出反应。要知道,Oracle自成功收购Sun以后,可谓是如虎添翼,使其拥有一个市值110亿美元的硬件及开源软件产品线,可以建立与IBM公司在大型机集成解决方案上同样的业界地位。此次为应对IBM的新系统,它将可能把其Sun硬件、BI软件和应用程序整合在一起,建立全方位的产品线以打破IBM一支独秀的局面。而Teradata也于2009年与SAS联合推出了整合型的数据库内分析解决方案———业务洞察力优势计划,有效地推广和实施数据库内分析能力,为一线决策人员提供基于事实的分析洞察力。当然,还有一大批数据库巨头们也会不甘示弱,从微软到SAS和Netezza将必须构建新的合作关系,与之抗衡。在竞争趋于白热化的数据仓库DBMS市场中,“领导者”们的较量很大程度上决定市场的走向。

相比起领导者,竞争者立足于通过加强投资开发的前瞻性或执行能力的其中之一,以提升自身的竞争优势,但在均衡这两者的综合能力方面还难以超越“领导者”。拥有前瞻性的竞争者往往能够更好地把握整个市场的技术发展进程,制定相应的技术和产品战略。而拥有执行能力的企业则主要强调整体发展能力、产品性能、质量、功能集、技能和市场响应力等。

竞争者主要分布在象限图的中部。其中,Aster Data,Green Plum,Sybase等多家公司近几年均呈现出惊人的成长速度,成为竞争者的典型代表。特别是随着新一代数据库分析技术的走红,这些企业迅速把握这股新的技术潮流。例如,数据仓库设备厂商Sybase,致力于数据库内分析(In-Database Analytics)技术的研发,其应用大大缩短了数据分析任务执行的时间;而Aster Data和Green Plum则实施了Map Reduce并行处理框架和“可编程并行分析能力”,实现了PB级的数据处理能力。无论是Sybase、Greenplum还是Aster Data,都是致力于吸引热衷“让数据分析过程更简单”的企业。这些新动力的注入,为新一代的数据库内分析方法增添了更强大的并行处理能力和更卓越的运营分析能力,使之远远超于早期的由IBM和Oracle等巨头主导的数据库内分析技术,这也从事实上证实了这部分企业对“领导者”们的威胁是存在的。

另外,数据仓库市场的一股新生力量也不容小视。他们通过性能的创新或交付方式的创新,如通过创新数据标记化技术及专业的数据压缩和存储技术、降低输入/输出(I/O)限制、提供更高性能等举措,建立自己的市场份额,并已显示出一定的市场优势。但这部分企业面临诸如缺乏成功先例的示范指导、缺乏能有力支持供应商、缺乏继续创新的资本等问题。

随着大量的数据仓库新手进入市场,在2010年,我们将密切关注专业服务产品的质量。过去一年,不少厂商都将重点放在专业服务规范化,以支持数据仓库产品的推出和应用。一些厂商已通过收购咨询机构的方式为其提供规范化咨询服务,还有一些厂商则引入规范化技术,为现有的产品发布团队制定最佳做法,或凭借以往的经验建立新的产品交付标准。Gartner认为,专业服务产品质量将可能是用户选择厂商的重要因素。

数据集市的复苏

了解数据仓库,数据集市同样值得一提。由于数据仓库驱动的应用更为多样,作业需求差异很大,数据集市被广泛采纳,其快速的发展吸引越来越多的眼球。数据集市是用来满足特定分析应用的知识储备,通常提供给特定的小部分用户。通过将部分作业需求转移到数据集市,可以用来优化企业数据仓库(EDW)性能。在过去的几年中,由于更多分析需要数据仓库的支持,且数据仓库DBMS引擎在分析应用方面的优秀表现,我们看到了数据集市在分析方面的应用随之大大增加了。

2009年,伴随着低价格的入门级产品的利率水平出现了增长(如Green Plum公司的单节点版本,Sun与Oracle联手打造的数据库机系统和Teradata的551平台),一些组织创新地应用这些“入门级”产品作为部门的非独立数据集市平台,以此扩大当前平台的标准。鉴于此,对数据集市支持的需求依然强劲,而且对于独立的数据集市也一度出现复苏。

性能优化

2009年数据仓库取得又一新进展,那就是市场接受实施两个数据仓库副本的标准,以解决在混合工作负载的需求中的服务水平冲突问题。有了新的标准,许多机构就可以在一个仓库副本中指派负载任务和运行分析任务,而在另一副本执行战略挖掘、战略查询和生成静态报告,有助于进行更详细的数据查询以及满足对所管理的数据量不断增大的需求。然而,伴随这一趋势也衍生了一些问题:副本的快速复制,近期数据的“分区”管理,数据仓库从一个副本到另一个副本的定期更新。这对2009年和2010实现市场快速增长和供应商分化有重要影响。

Teradata在过去15个月都已纷纷引入了各种新的优化项目。新创企业也十分注重通过优化的方式来实现差异化战略,完成对自身竞争优势的构建。例如,采用列存储替代传统的行存储,采用数据记号化和硬件并行技术。可以肯定的是,几乎每一个数据仓库供应商都在努力解决仓库存储的优化问题,这对于满足用户在保存、访问和使用大量历史数据的需求极其重要。有些供应商使用“热”和“冷”数据的概念,所谓热数据,是指那些最近、最常用、同时拥有许多使用者和应用程序进行存取多种应用的数据,而使用频率较低的历史数据则被称为冷数据。在多重温度环境下,数据仓库可以自行管理冷、热两种数据。用户通过分享和管理不同温度的数据,使得需使用热数据的应用能维持所需性能水平,而冷数据则以较低的性能需求供用户访问,实现动态地管理系统资源,平衡并优化数据仓库资源。

此外,还有其它一些性能优化的方法,如使用不同大小的存储设备,以减少成本或提高性能,通常,硬盘越大,则成本越低,性能越低;硬盘越小,则成本越高,性能越高。或者,将数据库管理系统的代码移植到存储设备,通过使用存储设备中的处理器,以获得更高程度的并行化和更强的计算能力。不少供应商也采取了固态存储的方法,取代传统的分区解决方案,取得更高的性能。

新一代数据库技术正在描绘新市场格局

无论是领导者,还是竞争者,无不你追我赶,“八仙过海”。某种意义来说,这只是各个厂商追求利润和生存而已。但他们毕竟带来了数据库技术的高速发展。

(1)列存储将取代行存储

上文已多次提到列存储和行存储的问题。数据管理系统技术传统上是采用行模式,它基于磁盘并以线性方式查询的存储模式。但近几年,列存储的应用越来越多地被采纳。列存储虽然没有颠覆传统的按行存储数据的理论,但结合数据压缩、无共享、大规模并行处理架构时,它可以使应用分析和商务智能处理保持高性能。其中,Sybase可谓是列存储数据仓库阵营的主要推动者和倡导者。在过去的两三年中,我们还看到了许多列存储阵形的新面孔,如Par Accel和Vertica。新一代DBMS技术正在对数据库管理员以及选择和管理上述技术的人发出一个简单而明确的信号:列存储将取代行存储。

(2)数据仓库托管服务

在2006年,由Kognitio发起一种数据仓库托管服务概念,即由DBMS厂商为客户开发和运行数据仓库。数据仓库托管服务对于一些缺乏技术和资金,无法自行管理数据仓库的中小型企业特别有吸引力。2009年,我们看到更多的组织使用这种方式。Kognitio和1010data等不少商家厂商甚至致力于把这项服务打造成“数据库即服务”(DAAS)的商业模式,为公司提供在线构建应用的服务。企业和开发人员也就无须再为配置数据库服务器、解决数据访问和可用性的问题、管理数据备份与复制、维护安全性、保护数据等等事情而烦恼了。相信未来数年内,Daa S会随着云计算的向前发展而迅速增长。

(3)开源数据仓库

开源的革命已经渗入数据仓库领域,开源领域已有足够的产品构成一个完整的数据仓库架构,或者说数据仓库本身已成为开源。开源颠覆了数据仓库的昂贵的现实,开源交付的软件成本很低或者根本无需成本,即使对再小的公司也能建设自己的数据仓库,所以说,数据仓库已经不再是实力雄厚的公司的奢侈品了。Gartner发现,47%的受调查公司已经采用开源数据仓库,19%的公司正考虑在12个月内采用开源数据仓库。这表明以绿色、便捷为优势的开源数据仓库已经是大势所趋。

(4)云数据仓库

自云计算的提出,DBMS的云应用成为可能。许多DBMS厂商正迅速向云进军。如Vertica,被视为是把数据仓库引入到云中的领跑者之一,该公司将其数据库技术迁移至Amazon的“弹性计算云”基础设施,希望赢得需要托管的、按使用付费的数据仓库和业务智能性模型的客户。Green Plum公司吹捧它在福克斯互动媒体(FIM)的企业数据云(EDC)仓库平台,称其有高度分布式数据仓库,巩固了点击流处理和社交分析网络(例如My Space)。然而,安全性、多重租赁,以及数据传输产生的延时等问题都成为了制约DBMS的云应用的重要原因。目前虽然有一些较小规模的数据仓库已经实现了在云中的应用,但是要使之成为一个数据仓库平台,恐怕还需要2到5年的时间。

2010年,所有“老牌”的和新创的厂商们必定继往开来,继续做大数据仓库DBMS的蛋糕,继续推进数据库技术的快速发展。在此过程中,每个供应商将修正其发展战略,扩充合作渠道,扩大现有客户规模。此外,由云计算或开源软件等技术所产生的更广泛的交付战略,也会带来新的商机,在某些情况下甚至会演变成一种需求。厂商的解决方案将更加重视工作负载的隔离和优先级设置。缺乏鲜明特点产品的厂商是注定会被市场所淘汰的,而已确立了市场地位的成熟厂商则更愿意继续攀登市场和技术的金字塔。激烈的竞争是在所难免的,但最重要的是,对于深陷数据丛林的广大用户而言,可以共享技术进步带来的各种便利和快捷。

参考文献

http://www.gartner.com/technology/media-products/reprints/aster/173535.html

http://www.cnw.com.cn/software-database/htm2009/20091201_186970_3.shtml

http://www.rfidworld.com.cn/news/2007_5/2007514815554571.html

http://www.teleinfocn.com/html/2007-10-22/5524.html

DBMS 篇2

关键词:DBMS验证,权限管理,模块级数据库角色,功能角色,访问控制

0 引言

目前很多信息系统的用户身份验证由信息系统本身进行验证,所有用户的密码保存在表中,而对后端数据库的操作使用同一数据库用户帐号进行连接和使用。从实现难度来看,这种解决方案简单而方便,但它在安全性上却有问题。首先是如何保存用于连接数据库的用户帐号的密码。如果密码写在程序中则不仅信息暴露,而且也不容更改密码;如果隐藏在注册表或文件系统的某个角落,不仅隐患依然存在,而且当隔了一段时间需要更改密码时,要在许多客户端进行相同的更改操作还会造成系统的维护性问题。其次,保存在表中的用户密码会产生安全问题,即使进行了加密也仍有安全漏洞,系统管理员可以在数据库表中用已知明文密码的用户(如管理员新建的用户)的加密后的密码串替换任何其他用户加密后的密码串,然后用已知用户的明文密码冒充其他业务人员进入系统进行业务操作。因此对于安全性要求高的信息系统需要寻求安全性更高的解决方案。

1 DBMS验证方式及其权限管理的特殊性

IT人员操作数据库的过程通常是这样:首先启动数据库管理系统(DBMS)的客户端程序,接着输入数据库用户的帐号和密码,然后连接数据库,在连接成功后通过数据库管理系统的客户端操作数据库。在这个过程中,数据库用户的密码不需保存,用户自行记住自已的密码,其他人无法知道。

信息系统中用户身份验证也可使用这种方式,即把用户身份的合法性验证交由数据库管理系统进行验证,可称为DBMS验证方式。实现过程是:对于每个使用信息系统的用户,不仅建立信息系统的用户帐号,而且在后端的数据库中也各自建立数据库用户帐号,信息系统中仅保存用户ID,不存储用户的密码。用户登录信息系统时,信息系统获取用户输入的用户ID和密码,用这些用户信息来设置连接对象的用户名和密码属性,然后使用连接对象连接数据库,如果连接成功,则表明登录信息系统的用户是合法的,允许用户使用信息系统,否则是非法的用户,拒绝其进入信息系统。

DBMS验证方式提高了信息系统的安全性,但也带来了用户权限管理的复杂性。在DBMS验证方式下,用户的权限管理不仅有用户对信息系统的功能模块的使用权限问题,而且还有对后端数据库中的数据库对象的使用权限问题。

2 后端数据库的权限管理

与前端的信息系统的功能权限的管理相比,数据库权限管理要复杂得多,因此如果把数据库对象的权限直接授权到用户,则当使用信息系统的用户数比较多时,将带来很大的权限管理负担。因此通过数据库角色来管理用户的数据库权限几乎是必然的选择。

使用数据库角色管理用户的数据库权限面临的问题是数据库角色权限粒度多大合适,这可通过考察信息系统的运作过程来找答案。用户是通过信息系统的功能模块来操作数据库对象的,因此根据各模块顺利运行所需的数据库权限来建立数据库角色,可以比较精确地管理用户的数据库权限。虽然当把信息系统的功能权限细化到控件级时,这种模块级的数据库角色仍可能权限过大,但是如果进一步细分数据库角色的权限将增大权限管理的复杂性。使用模块级的数据库角色的另一个优点是,保持与信息系统前端功能权限管理的一致性,可以在授予用户某个功能模块的使用权限的同时,授予该模块对应的数据库角色,这样既方便管理,又保证前、后端授权的一致性。

在基于DBMS验证的情形下,用户对数据库对象的访问控制是由数据库管理系统实施的,因此,信息系统可以不存储用户数据库操作权限。而对于数据库角色的权限,则建立相应的数据结构进行记录,这既有利于了解数据库角色的权限情况,也有利于在信息系统中通过程序实现对数据库角色的快速授权和回收。下面是记录数据库角色的表结构:

(1)数据库角色表(DBROLES):存储信息系统中所使用的数据库角色的信息。

(2)数据库角色权限表(DBROLEAUTH):存储数据库角色的授权情况。

表中没有相应的回收权限的执行状态字段,这是因为当回收命令文本执行成功时,应从该表中删除相应记录。

信息系统用户操作数据库的权限,在后面的功能模块的授权时,同时进行模块级数据库角色授权。

3 前端功能模块的权限管理

前端功能模块的权限是指用户使用信息系统的功能的权限,实际上就是管理用户使用信息系统的哪些功能。但信息系统对用户功能权限的管理不仅要负责用户的授权,而且负责用户对信息系统的访问控制。

虽然功能权限的管理相对比较简单,但在大型的信息系统中,当用户数达到一定数量时,如果采取直接向用户授权的方法,也会产生大量的权限管理工作,因此有必要使用数据库角色的管理方式来管理用户的功能权限。然而,在信息系统的前端软件中不存在真正的“角色”对象,因此首先需要在信息系统中模似出“角色”来。在企业中,用户的权限是与职位或岗位相联系的,一个岗位可能有许多工作人员,相同岗位的人做着相同的事情,也有相同的权限。可把这个现实世界的“岗位”建立为信息系统中的“角色”,先把信息系统的某些功能权限赋予“角色”,然后再把用户与这个“角色”联系起来,从而把用户与信息系统的某些功能权限联系起来。下面就是使用“角色”进行权限管理使用的数据结构:

(1)系统功能表(MODAUTH):记录信息系统的功能模块,是功能权限管理的基础。

其中“MODID”字段中的值既是授权树的结点名称,也是主菜单的菜单项的名称,当该记录是叶结点时,还是某个子窗体名称。“PREMOD”字段中的值标识该记录的父结点记录,当无父结点时其值为“R”。这两个字段用于构建权限树,也用于在树形控件和主菜单搜索某个项。因此,表中记录的排列顺序要与按先序遍历树所形成的线性序列一致,父结点必须排在子结点之前,可通过“MODID”字段值的合理编码实现。

(2)管制控件表(CTRLAUTH):记录各模块中需要进行管制的控件信息。

(3)功能角色表(APPROLES):记录信息系统中的功能角色。

(4)功能角色模块权限表(ROLEMOD):记录各个功能角色有权使用的功能模块。

(5)功能角色控件权限表(ROLECTRL):记录各个功能角色在各个模块上可使用的控件。

后面的两个表记录各个功能角色具体的模块功能权限和控件权限,在用户被授予某些功能角色后,通过所授予的功能角色的“ROLEID”,与这两个表中的“ROLEID”进行自然连接,就可获取用户具体的功能模块授权情况和控件授权情况。

4 用户权限管理的实现

4.1 用户授权的实现

(1)根据信息系统的每个功能模块所需要的数据库权限建立相应的数据库角色,并做相应的角色授权,同时把数据库角色及其相应的权限信息记录在“数据库角色表”和“数据库角色权限表”中。

(2)把应用系统中的各功能模块的信息及其对应的数据库角色记录到“系统功能表”中。

(3)把各功能模块(窗体)中需要进行权限管理的控件记录到“管制控件表”中。

(4)根据企业的业务岗位的实际需要,建立与业务岗位相适应的功能角色,每一个功能角色对应现实世界的一个业务岗位,并把相应的功能角色信息存入“功能角色表”中。

(5)确定各个功能角色所需的功能模块权限和在这些模块中的可用控件权限,并做相应的授权。角色授权的实现是信息系统的权限管理核心,与性能、扩展性等有直接的关系。在开发的信息系统中,采用ORACLE作为后台数据库,并用Visual Stutio .NET作为开发工具,使用如下的方法开发基于功能角色的权限管理功能:

功能角色的授权设计主要由3个控件完成:显示功能角色的下拉下列框、显示功能模块权限树形控件、显示与当前树结点对应的模块中需要进行权限管理的控件的数据网格。在授权窗体的Load事件处理过程中,根据“系统功能表”构建权限树,主要代码段如下:

接着根据用户选择的功能角色,显示该功能角色现有的权限,即在树形控件的对应结点的复选框中标上选中标志。在授权者对功能角色进行功能模块授权时,如果授权者选中某树结点,就在数据网格中显示该结点所对应的模块中可授权的控件及已授权情况,并让授权者对功能角色进行控件授权。在授权者改变当前树结点时,控件的授权情况暂存入DataTable对象。在授权者确认授权情况后,遍历权限树,把当前功能角色的模块授权情况存入“功能角色模块权限表”,把控件的授权情况存入“功能角色控件权限表”。

(6)建立信息系统的用户,把用户的信息存入“用户基本信息表”(USERS),该表的结构如下:

在建立信息系统用户帐号的同时,建立相应的后端数据库帐号。

(7)信息系统的用户的授权。根据实际业务授予用户所需的功能角色,并把这些功能角色信息存入“用户功能角色表”(USERROLES),该表的结构如下:

在把用户的功能角色信息存入“用户功能角色表”后,通过把该表与“功能角色模块权限表”和“功能角色控件权限表”的关联,就可了解用户功能模块权限和控件使用权限。

用户的后端数据库权限的授权实现是在把授予用户的功能角色保存的过程中,通过“功能角色模块权限表”与“系统功能表”的关联找出各功能模块所对应的数据库角色,把这些数据库角色授予用户。

4.2 访问控制的实现

用户访问信息系统的控制分为两部分:一是控制用户只能使用哪些系统前端功能,二是控制用户只能操作哪些数据库对象。对于后一部分,DBMS会根据用户的数据库权限自动实施对用户的访问控制。因此,信息系统要完成的访问控制是控制用户对功能模块的访问和控制用户对模块(窗体)中的控件的访问。在所开发的信息系统中,功能模块的访问控制是通过管理用户对系统主菜单的菜单项的访问来实现的。主窗口的菜单按照“系统功能表”中的“MODID”和“PREMOD”字段的值来构建,“系统功能表”的每一条记录对应着一个菜单项,所有的菜单项初化为不可见。为方便访问控制的实现,建立了把“用户角色表”、“功能角色模块权限表”、“系统功能表”连接起来的数据库视图“用户权限视图(V_USER|MOD)”,具体的定义如下:

CREATE VIEW V_USER|MOD AS

SELECT DISTINCT A.USERID, B.MODID, C.MODNAME, C.PREMOD, C.LEAF, C.DBROLE

FROM USER_ROLES A, ROLE_MOD B, MODAUTH C

WHERE A.ROLEID=B.ROLEID AND B.MODID=C.MODID

通过“用户权限视图”可以直接查出用户的功能模块权限,视图中一条记录对应着系统主窗口菜单的一个菜单项,遍历该视图中与用户ID相匹配的每条记录,根据“MODID”的字段值,在主窗口菜单中找到相应的菜单项并设置为可见,从而实现对用户访问系统功能模块的控制,用户选某个菜单项就导航到相应模块(子窗体)。

控件的访问控制的实现方法是:子窗体中每个需要进行权限管理的控件都初始化为不可用的(Enabled属性为False),建立连接“用户功能角色表”、“功能角色控件权限表”、“管制控件表”的视图“用户控件权限视图”(V_USER|CTRL):

CREATE VIEW V_USER|CTRL AS

SELECT DISTINCT A.USERID, B.MODID, C.CTRLID,

C.CTRLNAME, C.CTRLDSPT

FROM USER_ROLES A, ROLE_CTRL B, CTRLAUTH C WHERE A.ROLEID=B.ROLEID AND (B.MODID=C.MODID AND B.CTRLID=C.CTRLID)

在用户通过主窗口的可用菜单项进入子窗体后,根据当前子窗体名和当前的用户ID从视图中取出相应的记录,根据记录中的“CTRLID”的字段值,在当前窗口中找到相应的控件并把控件设置为可用的,具体的实现代码如下:

5 结束语

DBMS的用户验证方式有效地提高了信息系统的安全性,特别是在限制系统管理员权力,实现管理与操作分离方面有明显的好处。但这种验证方法也带来了用户权限管理的复杂性。采用模块级的数据库角色可以比较准确地管理用户的后端数据库权限。但对于特别大型的信息系统,由于其功能模块众多,模块级的数据库角色可能显得粒度太细并且角色的数据库权限显重复。因此,使用大粒度的岗位级的数据库角色来管理用户的后端数据库权限也是不错的选择。

参考文献

DBMS 篇3

1 数据库管理系统在发电企业中的应用

我公司计算机信息化系统可分为两大类:生产信息系统和管理信息系统, 两种系统在设计思路和建设要求上各有侧重。生产信息系统是为了保存和管理机组的运行与维护数据而设计的, 依靠对运行数据的分析与统计提高机组运行效率、指导设备维护和检修。生产信息系统往往与机组DCS系统直接相连, 在硬件方面对系统的连通性、数据服务的实时性、系统的稳定性都有较高的要求。软件方面生产信息系统多为强内聚度弱耦合系统, 数据结构比较简单。数据库管理系统主要完成数据的添加与存贮, 并为客户端提供应用服务, 完成数据的处理和显示。生产信息系统运行环境相对简单, 一般运行在一个特定的网段中, 网段内数据流比较简洁, 只有少量局域网内的用户具有系统修改权限, 且用户具有一定的系统维护能力。各种生产信息系统之间只有应用层的联系, 一般没有数据库层的联络。根据需求的特点生产信息系统多采用实时数据库作为数据库管理系统, 采用Client/Server模式构建系统平台。

管理信息系统是为了提高办公效率、加强资产管理、财务管理、人事管理、辅助经营决策等目的而设计的, 通过各种管理信息的网络工作平台完成对各种管理信息的保存和及时更新。在硬件方面对管理信息系统的连通性、信息服务的快速性、防病毒能力、防攻击能力、容错能力以及系统的健壮性、可用性、可扩充性都有较高的要求。软件方面管理信息系统多为强耦合系统, 数据结构非常复杂。数据库管理系统要完成数据的存贮、添加、修改、有效性检查、事务性操作、并发控制等任务。由于数据操纵的复杂性, 现在经常将数据有效性检查、事务操作、并发控制等任务从数据库管理系统中分离出来, 采用中间层 (多为应用服务器) 处理这些任务。而将数据库管理系统专门用于数据存储和关系操作。管理信息系统的运行环境比较复杂, 局域网内大量用户都需要具有数据的修改权限, 且用户对系统的认知程度参差不齐。各子系统之间往往需要有数据库层的联系。根据需求的特点管理信息系统多采用关系型数据库作为数据库管理系统, 应用服务器作为中间层, 采用Browser/Server模式构建系统平台。

2 实时数据库管理系统-eDNA的基本特点

实时数据库是数据库系统发展的一个分支, 是数据库技术与实时处理技术相结合的产物。与关系型数据库不同, 实时数据库注重数据的存储、添加与更新的响应速度, 实时性包括数据实时性和事务实处理时性, 实时性是实时数据库强调的基本特征, 而关系型数据库则强调数据之间的相互联系。实时数据库以事件触发和定时触发两种基本模式工作, 其中事件触发是指当某个事先定义的事件发生后立刻调度一个相应的任务处理相应的数据, 这种触发模式可以得到最快的响应速度, 确保数据最佳的实时性, 但这种方式消耗资源较大对硬件配置要求较高;定时触发是建立在时间片轮转调度基础上的, 在一定时间范围内自动地对数据处理任务进行顺序调度, 确保在事先定义的时间范围内数据的实时性, 这种触发模式是兼顾数据实时性和系统负荷均衡配置的策略。

目前比较流行的实时数据库有eDNA和P I, 我公司现已投产的S I S系统选用了eDNA。该系统在逻辑功能上分为基本服务、客户端服务和接口软件三个部分, 逻辑结构如图1。

基本服务包括:目录、安全、历史、应用、报警和通知等服务组件, 负责实时数据的采集和存储, 其中目录服务是核心服务也为其他服务提供访问接口。安全服务是最外层的服务, 任何请求都必须通过安全服务的认证。这些服务可以分散部署在不同的服务器上, 用户的请求通过安全服务认证后进入由安全服务封装的eDNA虚拟安全网络进行进一步处理, 最后由应用服务返回预期的结果。使用eDNA提供的客户端服务组件可以方便地获得如越限报警、变化趋势等常用生产信息, 还可以使用计算服务提供的二次计算功能得到其它更有针对性的统计分析结果。为更好地与生产控制系统进行数据通讯eDNA还提供了各种接口软件, 通过定制接口可以和DCS、PLC等控制系统进行通讯, 标准接口则提供了支持工业标准的数据通信接口如OPC、Modbus等, DNA-API则提供了eDNA数据库的程序开发接口, 用户可以使用各种常用开发工具开发自定义的通讯接口。

3 关系型数据库管理系统的基本特点与选型

关系型数据库是管理信息系统中负责数据存储和数据管理的重要层面, 目前主要有SQL Server和Oracle两种关系型数据库管理系统可供选择。这两种系统因应用目的和运行环境的不同各有特点。

Oracle可在大多数主流操作系统上运行, 数据库采用开放的策略、配置多种多样, 用户可以选择最适合自己的解决方案, 并有很多可以利用的第三方应用软件和工具。而SQL Server只能在Windows上运行, 但SQL Server和Windows操作系统的整体结合紧密, 在使用方便性和与微软开发平台的整合性方面都比Oracle强的很多。在安全性方面Oracle获得了最高认证级别的ISO标准认证, 而SQL Server并没有获得什么安全认证, 这说明了Oracle的安全性是高于SQL Server的。Oracle的性能优势体现在多用户上, 而SQL Server在多用户和并发操作上就显得力不从心了, 目前普遍认为SQL Server数据库在企业级应用的总体性能上比Oracle差。

建立并运行一个数据库应用系统。不仅包含前期的软件、硬件购置费用, 还包括培训及运行维护费用。Oracle数据库的采购价格远比SQL Server数据库高, 而且Oracle的很多工具软件也需要另外购买, S Q L Server则提供了免费的工具。操作上SQL Server明显要比Oracle简单, Oracle的界面基本是使用Java开发的, 大部分工具是Dos界面, 甚至最常用的SQL语言接口-SQL Plus也是这样。SQL Server与微软开发家族的其他产品一样, 提供了全图形的界面很少用到DOS窗口。SQL Server中的企业管理器给用户提供一个全图形化的集成管理控制台用来集中管理多个服务器。虽然Oracle也有自己的企业管理器, 而且它的性能在某些方面甚至超过了SQL Server的企业管理器, 但安装比较困难并且需要另外付费。因此普遍认为在易用性和前期开发速度方面SQL Server强于Oracle。

由于Windows系统是目前应用最为广泛的操作系统, 凭借其易用性、操作的友好性和大量成熟的商业化软件已培育出了大批用户, 人们已经熟悉了Windows系统的操作习惯和思维方式。考虑到今后系统的部署与推广必须在系统的开发、建设阶段充分结合现有实际情况进行选择。另外关系型数据库管理系统的选择还要考虑应用系统开发时采用的技术和企业的信息化建设的整体战略。企业信息化建设一般采用Java或.Net技术平台搭建, 两种架构各有特点。一般情况下选择Java技术平台建设系统时多选用Oracle而选择.Net时多选择SQL Server。Oracle的可扩展性强于SQL Server易于今后的功能扩充, 但开发周期长, 维护比较困难, 不利于系统的快速部署, 往往在系统开发过程中会出现需求变化而不得已进行功能调整的局面。而使用.Net则可以针对某个特定的应用快速开发出一个信息岛, 信息化工作可以很快见到成效, 但由于各信息岛往往是由不同公司承建的, 今后如果需在各系统之间进行互操作将是十分困难的。

4 京丰热电有限责任公司信息化建设现状与发展规划

目前我公司已建设了SIS、关口电量等生产信息系统以及工作票、缺陷票, 档案、人事、财务等管理信息系统, 而设备台帐、检修台帐、生产技术管理等还在使用文件的形式进行数据保存。现有信息系统使用了eDNA、SQL Server、Oracle三种数据库管理系统, 各系统分别构成信息岛由不同的公司开发, 相互之间没有任何联系。根据现有信息化状况和集团的总体部署, 我公司计划于2008、2009年度进行MIS系统建设, 对公司现有信息系统进行全面整合, 力争通过网络平台体现和改善公司的现有管理模式, 提高信息系统的可用性, 通过升级人事管理系统, 新建物资管理系统, 新建OA系统, 新建设备台帐系统、生产技术管理系统和公司门户网站等措施全面提升京丰热电的信息化水平。2008年我们已完成了MIS系统的总体设计, 建成了硬件平台。2009年将进行MIS各功能模块的详细设计和基础数据的整理与导入工作, 计划2009年内投入运行。

5 结语

电力企业的信息化建设任重而道远信息系统的规模会随着机组的增加而不断扩充, 电力企业的管理模式也会随着管理理念和管理水平的提高而不断变化, 如何使信息系统更好地适应发电企业的工作需要, 如何利用信息系统提高工作效率、规范工作流程、提升工作效能是我们必须经常考虑的问题。我们将不断地学习、更新专业技术知识提高对现有系统的维护能力, 延长现有系统的生命周期, 在京能集团《信息化规划纲要》指导下认真分析需求的变化, 及时调整现有系统, 努力推动新系统开发建设, 将我公司的信息化工作提高到新的水平上来。

参考文献

[1]萨师煊, 王珊.数据库系统概论[M].高等教育出版社.

[2]陆丽娜.软件工程[M].经济科学出版社.

[3]谭耀铭.操作系统[M].中国人民大学出版社.

【DBMS】推荐阅读:

上一篇:精神暴力下一篇:有效把握

本站热搜

    相关推荐