(1)数据共享
数据共享是指多个用户可以同时存取数据而不相互影响。数据共享包括3个方面:所有用户可以同时存取数据;数据库不仅可以为当前的用户服务,还可以为将来的新用户服务;可以使用多种语言实现与数据库的交互。
(2)减少数据冗余
数据冗余就是数据重复。数据冗余既浪费存储空间,又容易造成数据不一致。在非数据库系统中,由于每个应用程序都有自己的数据文件,所以存在着大量的重复数据。数据库从全局来组织和存储数据,数据已经根据特定的数据模型结构化,在数据库中,用户的逻辑数据文件和具体的物理数据文件不必一一对应,从而有效地节省了存储资源,减少了数据冗余,增强了数据的一致性。
(3)具有较高的数据独立性
数据独立是指数据与应用程序之间彼此独立,它们之间不存在相互依赖的关系。应用程序不必随数据存储结构的改变而变动,这是数据库一个最明显的优点。在数据库系统中,DBMS通过映像使应用程序在数据的逻辑结构与物理存储结构之间有较高的独立性。数据库的数据独立包括两个方面。
① 物理独立:数据的存储格式和组织方法改变时,不影响数据库的逻辑结构,从而不影响应用程序。
② 逻辑独立:数据库逻辑结构的变化(如数据定义的修改、数据间联系的变更等)不影响用户的应用程序。
数据独立提高了数据处理系统的稳定性,从而提高了程序维护的效率。
(4)增强了数据安全性和完整性保护
数据库加入了安全保密机制,可以防止对数据的非法存取。实行集中控制保证了数据的完整性。数据库系统采取了并发访问控制,保证了数据的正确性。另外,数据库系统还采取了一系列措施,实现了恢复被破坏的数据库的功能。
(1)合并关系模型
对于一些使用较频繁、性能要求较高、涉及多个关系连接的查询,可以对具有相同主键的关系模型按查询使用的频率进行合并,以减少连接操作,提高查询效率。
(2)分解关系模型
为提高数据操作的效率和存储空间的利用率,可以考虑对关系模型进行分解。一般有水平分解和垂直分解两种。例如,可以把一个学校的所有学生信息按照各个院系进行分解,分别建立关系模型。把关系的元组分为若干个子集合,每个子集合定义为一个关系,这就是水平分解。垂直分解即将关系模型的属性分解成若干个子集合,形成若干个子关系模型,提高某些操作的效率。