DBAS功能设计与实施(下)-数据库技术
数据库应用系统功能设计是指根据DBAS生命周期模型,从数据访问与处理设计、应用设计两条主线,分别设计DBAS的总体结构、数据库事务和应用软件。与数据库概念模型设计,逻辑结构设计和物理结构设计三个阶段相对应,DBAS功能设计分为总体设计、概要设计、详细设计三个设计步骤。
DBAS功能详细设计
表示层详细设计
人机界面的设计与用户感知密切相关,人机界面设计最好采用原型迭代法。
原型迭代法有如下几个步骤组成:
-
1.初步设计。设计人机交互命令系统,命令系统是用户与系统交互的基础。将全部交互命令组织起来,构成一颗多层命令树。设计命令系统时,还需注意减少用户完成一个命令所需要的操作,为熟练用户提供命令操作的快捷方式。
-
2.用户界面细节设计。在命令树基础上设计命令系统的具体实现方式,可以采用命令行、菜单、按钮、Web界面等多种方式。
-
3.原型设计与改进。在上述设计结果基础上,首先构造一个人机界面原型系统,通过反复迭代过程不断完善用户界面直到符合用户预期要求。
初步设计可在DBAS总体设计阶段
界面细节设计可在DBAS概要设计阶段
界面原型设计与改进则属于DBAS详细设计阶段
业务逻辑层详细设计
业务逻辑层详细设计的任务是根据概要设计中定义的各程序模块功能和输入输出数据需求,结合具体的程序设计环境和机制,设计各模块的内部处理流程和算法、具体数据结构、对外详细接口等,是对概要设计的细化。
应用系统安全架构设计
安全可靠性是应用系统的重要衡量指标。对于DBAS系统来说,其安全可靠性需要从多个方面进行设计和考虑。
数据安全设计
数据是所有信息系统的基础。数据安全涉及的范围很广,从数据存储安全角度出发,主要有以下5个方面:
-
1.安全性保护
-
2.完整性保护
-
3.并发控制
-
4.数据库的备份与恢复
-
5.数据加密传输
一、数据库的安全性保护
概念:防止非法用户对数据库的非法使用,以避免数据的泄露、篡改或破坏。
在DBAS系统设计时,通常采用前台和后台相结合的安全性保护措施,来共同维护DBAS的安全性,主要保护方式有:
-
1.用户身份鉴别
-
2.权限控制
-
3.视图机制
二、数据库的完整性保护
概念:数据库的完整性是指数据库中数据的正确性,一致性和相容性。
作用:完整性机制将防止合法用户使用数据库时,向数据库中加入不合语义的数据。
保证数据库中的完整性的方法之一是设置完整性检查,即对数据库中的数据设置一些约束条件。
完整性约束条件的作用对象分别为列,元组和关系三种级别。
对列的约束主要是指对其值类型、范围、精度、排序等的约束条件
对元组的约束主要指对记录中各个属性之间的联系的约束条件
对关系的约束是指对若干记录间关系集合上以及关系之间联系的约束条件
三、数据库的并发控制
作用:保证多个用户能共享数据库,并维护数据的一致性。
概念:在数据库系统运行过程中,如果数据库管理系统可以同时接纳多个事务,事务可以在时间上重叠执行,则称这种执行方式为并发访问。
实现数据库并发控制的方法,常用的是封锁技术。所谓封锁,即是在某一时间内禁止某用户对数据对象做某些操作,以避免产生的数据不一致的问题。
基本的封锁一般有排他锁(X锁)和共享锁(S锁)两种类型。
通常为了避免死锁,可以考虑以下原则:
-
1.按同一顺序访问资源。
-
2.避免事务中的用户交互。
-
3.采用小事务模式,尽量缩短事务的长度,减少占有锁的时间。
-
4.尽量使用记录级别的锁(行锁),少用表级别的锁。
-
5.使用绑定连接,使同一应用程序所打开的两个或多个连接可以相互合作。
四、数据库的备份与恢复
作用:在系统失效后的数据库恢复,配合定时备份数据库使数据库不会丢失数据。
数据库恢复的基本原理就是数据库中任何一部分数据可以利用存储在其系统其他存储器上的冗余数据来重建。
针对数据的不同可靠性级别要求,数据备份和恢复策略可有不同的解决方案:
1.双机热备
双机设备指基于Active/Standby方式的服务器热备。服务器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备,在同一时间内只有一台服务器运行。
2.数据转储
数据转储也称数据备份,通常由系统管理员定期将应用系统的数据备份并拷贝到磁带、光盘或其他永久性记录介质上去。
3.数据加密存储
数据加密存储是针对高敏感数据安全保护的一种有效方案。
五、数据加密传输
概念:将一些高密级的敏感数据通过一定的加密算法加密后传输。
常用的数据加密传输手段有:
1.数字安全证书。
2.对称密钥加密。
3.数字签名。
4.数字信封。
环境安全设计
DBAS安全架构设计也需要考虑软硬件环境的安全。
1.漏洞与补丁
针对DBAS系统运行的操作系统环境,应该定期检查系统漏洞并更新系统补丁,从而有效保障操作系统环境的稳定性。
2.计算机病毒防护
目前主要的病毒防护手段有:安装杀毒软件,定期查杀病毒和计算机实时监控。
3.网络环境安全
网络是DBAS运行必不可少的条件,保障网络环境的安全也是DBAS安全设计需要考虑的问题。
-
(1)防火墙。防火墙作为一个分离器、限制器和分析器,用于执行两个网络之间的访问控制策略,有效的监控了内部网络和外部网络之间的各种活动。
-
(2)入侵检测系统。入侵检测系统简称IDS,是一种对网络传输进行即时监控,在发现可疑传输时发出警报,或采取主动反应措施的网络安全设备。
-
(3)网络隔离。网络隔离技术总的来说分为物理隔离和逻辑隔离两类。
-
物理隔离:将待隔离的两个网络完全彻底的进行隔离,不存在任何可能的通路。
-
逻辑隔离:指通过一定的技术和硬件设备将局部网络从外部网络中隔离出来,控制内外部数据的流动,从而从逻辑上将两个网络隔离起来。
-
4.物理环境安全
如果条件允许,最好是设立专门的空间用于存放服务器、存储设备、网络设备等硬件设备,这样做的好处是可以对设备进行集中控制和管理。
电力是服务器、路由器、磁盘阵列、防火墙、交换机等设备正常工作的必要保障。
可以采用UPS来解决设备用电安全方面的问题,UPS也称为不间断电源,是能够提供持续稳定、不间断的电源供应的重要外部设备。
制度安全设计
管理层面安全措施指利用行政管理、法治保证和其他物理措施等,防止安全事故的发生,它不受信息系统的控制,是施加于信息系统之上的。
DBAS实施
在这个阶段,设计人员需要用目标数据库的数据定义语言和其他程序设计语言,描述逻辑设计和物理设计的结果,并经调试以后在数据库建立目标模式,并且组织数据入库,系统开始试运行。
DBAS的实施阶段工作主要包括以下工作:
-
1.创建数据库
-
2.装载数据
-
3.编写与调试应用程序
-
4.数据库试运行
创建数据库
开发人员使用具体的DBAS提供的数据定义语言DDL或图形化工具建立数据库和数据库对象。
在DBAS实施过程中,为了保障系统的性能和稳定性,创建数据库时需要考虑以下因素:
-
1.初始空间大小。通过计算每条数据记录所占用的空间(数据占用空间、索引占用空间等的总和),以及评估系统运行初期的数据记录量级,二者相乘得出评估的数据量大小。
-
2.数据库增量大小。
-
3.访问性能。
数据装载
组织数据入库是数据库实施阶段主要的工作。
一般来说这时候可以将源数据提取出来存入计算机,然后进行分类转换,使之成为符合新数据库结构的数据,然后存入数据库,具体步骤如下:
-
1.筛选数据
-
2.转换数据格式
-
3.输入数据
-
4.校验数据
编写与调试应用程序
应用程序的编写与调试通常是同步进行的,在应用程序编码阶段,程序员需要对自己编写程序的正确性进行验证,保证程序能够按照预先设定的逻辑执行,完成单元测试后,就需要进行集成调试,包括功能测试,性能测试,系统联调等。
数据库系统试运行
通过试运行进一步检验应用系统在真实或接近真实的环境下,是否符合设计及使用要求,试运行的主要目的是对数据库系统的功能和性能进行进一步测试,找出其中的不足,加以完善和改进。
1.功能测试
实际运行数据库的应用程序执行,对数据库的各种操作测试应用程序的各项功能是否满足设计要求,找出现有应用程序的不足加以改进指导,符合设计要求。
2.性能测试
在试运行阶段应该先测试DBMS的恢复功能,做好数据库的转储和恢复工作。