文件系统与数据库系统的区别:文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。数据库系统面向现实世界,共享性高、冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。
文件系统与数据库系统的联系是:文件系统与数据库系统都是计算机系统中管理数据的软件。文件系统是操作系统的重要组成部分,而DBMS是独立于操作系统的软件。DBMS是在操作系统的基础上实现的,数据库中数据的组织和存储是通过操作系统中文件系统来实现的。因此,DBMS的实现与操作系统中的文件系统是紧密相关的。例如,数据库实现的基础是文件,对数据库的任何操作最终要转化为对文件的操作。
1、共同点:
同属于系统软件或底层软件;
都是用来存储和访问数据的;
大都采用C/C++这样更底层的语言实现;
需要保证数据的一致性,特别的,不同程度的支持事务。
2、不同点:
数据库对事务的支持要强很多,文件系统可以只保证元数据的一致性;
数据库有不同级别的一致性;
数据库可以有REDO和UNDO日志,文件系统一般只用REDO;
数据库的事务可以很长,文件系统的事务很短;
数据库的事务事先无法确定,是用户输入的,文件系统的事务可以事先确定,种类明确;
数据库是用户态实现的,文件系统一般是内核态实现的;
数据库的访问接口通常是非过程化的SQL语言,文件系统的则是API;
二者对应的主流标准分别是SQL和POSIX;
数据库对死锁可以做检测,文件系统则需要避免死锁。
3、联系点:
数据库系统经常依赖于文件系统作为其最底层的存储,也可能会实现一些文件系统的功能;
文件系统可以为数据库这种特殊的应用做专门的优化;
文件系统可以被当做简单的数据库使用;
文件系统可能会用到一些简单的数据库功能。
更多推荐
数据库系统和文件系统的区别
发布评论