1. List four significant differences between a file-processing system and a DBMS.
Answer:
①文件处理系统和数据库管理系统都包含了一系列的数据以及一些可用于操作数据的程序。数据库管理系统能够协调该数据的物理结构以及逻辑结构,保证数据的物理独立性。而对于文件处理系统而言,只有物理结构。
②使用文件存储系统存储数据容易产生数据冗余和不一致性,多种文件格式会导致在不同的文件夹中存在信息重复。同时,文件存储系统也会存在访问数据困难、孤立性(不能反映现实世界事物之间的内在联系)、完整性、原子性、安全性等多样的问题。数据库管理系统为上述所有问题提供了解决方案。数据库管理系统可以确保所有经授权访问的程序能够访问到数据的物理部分,因此可以减少数据冗余。在文件处理系统中,当一个数据被一个程序所写入的时候,它有可能不能被另个一个程序读取,这就是上述存在访问数据的困难。
③数据库管理系统旨在允许对数据的灵活的访问方法(例如查询),而文件处理系统则是按照事先确定的方法去访问数据(例如程序编译)。
④数据库管理系统旨在协调多个用户同时访问相同数据并进行相应的操作。而文件处理系统通常设计为允许一个或多个程序同时访问不同的数据文件。在文件处理系统中,当且仅当两个文件在同一时间对同一个文件进行读取时才能并发进行这个操作。
2. Explain the concept of physical data independence, and its importance in database systems.
Answer:物理数据独立是指如果修改了物理模式,能够保持逻辑模式和应用程序不受影响。或者可以说应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。当数据哭的存储结构改变了(例如学用了另一种存储结构),数据库管理员修改模式/内模式映像(当内模式发生变化时,重新定义内模式映像—>模式保持不变—>外模式保持不变—>建立在外模式上的应用程序保持不变),使模式保持不变。物理层的实现比较复杂,物理数据独立后,当逻辑层需要修改某些数据的时候,就不需要设计复杂的物理结构,减轻了逻辑层的负担。
3.List five responsibilities of a database-management system. For each responsibility, explain the problems that would arise if the responsibility were not discharged.
Answer:
①与文件管理器进行交互,如果没有了,数据库管理什么都做不了,包括数据存储以及接受。
②安全性。没有安全性管理,未经授权的用户可能会访问到数据库里面的数据以及已经拥有部分授权的用户访问到未经授权的部分。即用户访问内容领域的管理。
③完整性约束。缺少之后,一致性约束就没法满足。
④并发执行。缺少之后,一致性约束就没法满足。
⑤备份和恢复。缺少之后会影响导数据的安全性,对数据的意外丢失无法进行追回和恢复。
4. Explain the difference between two-tier and three-tier architectures. Which is better suited for Web applications? Why?
Answer:
区别:两层体系结构中,应用程序驻留在客户机上面,通过查询语言表达式来调用服务器上的数据库系统功能。
在三层体系结构中,客户机只作为一个前端并且不包含任何直接的数据库调用。客户端通常通过一个表单界面与应用服务器进行通行。而应用程序与数据库通信以访问数据。
三层体系结构更适合Web应用。可以减轻客户机的负荷。