[Linux C编程]数据库系统与文件的系统的区别
来源:互联网 发布:2016最新幸运28源码 编辑:程序博客网 时间:2024/06/05 16:36
很多人刚刚接触数据库时都有疑问:在很多程序中都会是有的直接读取一个静态文件,有的是读取数据库。直接读取静态文件,不访问数据库速度是会很快,但是为什么还要访问数据库呢?它们两则肯定是有区别的,那么区别是什么呢?
其实他们之间的关系很简单,如下参考:
文件系统把数据组织成相互独立的数据文件,实现了记录内的结构性,但整体无结构;而数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。在文件系统中,数据冗余度大,浪费存储空间,容易造成数据的不一致;数据库系统中,数据是面向整个系统,数据可以被多个用户、多个应用共享使用,减少了数据冗余。文件系统中的文件是为某一特定应用服务的,当要修改数据的逻辑结构时,必须修改应用程序,修改文件结构的定义,数据和程序之间缺乏独立性;数据库系统中,通过DBMS的两级映象实现了数据的物理独立性和逻辑独立性,把数据的定义从程序中分离出去,减少了应用程序的维护和修改。文件系统和数据库系统均可以长期保存数据,由数据管理软件管理数据,数据库系统是在文件系统基础上发展而来。
数据库系统主要管理数据库的存储、事务以及对数据库的操作。文件系统是操作系统管理文件和存储空间的子系统,主要是分配文件所占的簇、盘块或者建立FAT、管理空间空间等。一般来说数据库系统会调用文件系统来管理自己的数据文件,但也有些数据库系统能够自己管理数据文件,甚至在裸设备上。文件系统是操作系统必须的,而数据库系统只是数据库管理和应用所必需的。
文件系统和数据库系统之间的区别。
(1)文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;
(2)文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;
(3)文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;
(4)文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。
文件系统和数据库系统之间的联系:
(1)均为数据组织的管理技术;
(2)均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;
(3)数据库系统是在文件系统的基础上发展而来的。
- 顶
- 2
- [Linux C编程]数据库系统与文件的系统的区别
- RTOS系统与Linux系统的区别
- RTOS系统与Linux系统的区别
- Linux系统调用和ANSI C文件操作的区别
- linux C库函数与系统调用的区别
- linux C库函数与系统调用的区别
- linux C库函数与系统调用的区别
- Linux C 库函数与系统调用的区别
- linux C库函数与系统调用的区别
- Linux C系统编程:信号与定时器的使用
- Linux系统中.bz2与.gz文件的区别
- Linux系统编程——文件的打开与关闭
- 数据库系统与文件系统的区别
- Linux系统下的c语言编程
- linux-系统调用02-系统调用与C库函数的区别
- Linux系统编程:文件的读取写入
- Linux系统编程:文件的属性
- Linux系统与Windows的基本区别
- 解决页面传到后台含中文参数时会乱码问题
- SVN使用要求
- Spring中jdbcTemplate的用法实例
- 用Java语言实现五种常用排序
- JZOJ4848. 永恒的契约
- [Linux C编程]数据库系统与文件的系统的区别
- 朴素贝叶斯分类算法的Python实现
- java注解的用法
- 安卓短信验证功能实现 (引用MOB SDK)
- BZOJ 1111: [POI2007]四进制的天平Wag DP+高精度
- MySQL 5.7.16 Winx64 解压版,首次安装 Root 随机密码如何查找~
- Halcon中使用OCR时字符的分割以及字符粘连的处理方法
- 欢迎使用CSDN-markdown编辑器
- WebMagic(三)----抓取CSDN博客通过JDBC保存到数据库中去