可靠性( Reliability )是指产品在规定的条件下和规定的时间内完成规定功能的能力
子特性:成熟性,容错性,易恢复性,可靠性的依从性
提高可靠性的技术:(1)N 版本程序设计 (2) 恢复块方法 (3) 防卫式程序设计(4) 双机热备或集群系统(5)冗余设计【问题 1】(1) 针对特定应用系统,难度较大(2) 数据冗余较大(3) 以应用为中心管理数据(4) 数据库系统接口标准化,易于在不同应用之间共享数据【问题 2】(1)关系模式 (2) 读写时先从磁盘读入内存,再读写,性能相对较低(3)运行时整个数据库基本全调入内存,数据库容量受内存容量限制,容量较小(4)虽然也有恢复机制,但并不是所有故障都能恢复,可靠性较低(5)内存数据库 (6) 内存数据库 (7) 关系数库 (8) 内存数据库 (9) 内存数据库2
数据持久层是一组软件服务,将应用程序与该程序所使用的数据源分离,为整个项目提供一个统一、安全、并发的数据持久机制
好处:1、程序代码重用性强,即使更换数据库,只需要更改配置文件,不必重写程序代码
2、业务逻辑代码可读性强,在代码中不会有大量的SQL 语言,提高程序的可读性
3、持久化技术可以自动优化,以减少对数据库的访问量,提高程序运行效率
4、简化开发工作,让开发人员更关注于业务逻辑的开发
【问题 2】1、项目组应选Hibernate框架2、选择该技术的原因是:(1) 从移植的角度来看使用Hibernate更容易移植到其它数据库平台
Hibernate与具体数据库的关联只需在XML 文件中配置即可, 所有的 HQL 语句与具体使用的数据库无关,移植性很好
MyBatis项目中所有的SQL 语句都是依赖所用的数据库的,所以不同数据库类型的支持不好
(2) 使用 Hibernate能降低或者消除SQL 语句开发工作量,Hibernate 提供了方法完成