layout: post
title: 文件服务器、数据库服务器的区别
subtitle:
date: 2022-01-27
author: dex0423
header-img: img/post-bg-os-metro.jpg
catalog: true
tags:
- 硬件网络
文件服务器
文件服务器的作用
文件系统把数据组织成相互独立的数据文件,实现了记录内的结构性,但整体无结构;而数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。在文件系统中,数据冗余度大,浪费存储空间,容易造成数据的不一致;数据库系统中,数据是面向整个系统,数据可以被多个用户、多个应用共享使用,减少了数据冗余。
文件系统中的文件是为某一特定应用服务的,当要修改数据的逻辑结构时,必须修改应用程序,修改文件结构的定义,数据和程序之间缺乏独立性。数据库系统中,通过DBMS的两级映象实现了数据的物理独立性和逻辑独立性,把数据的定义从程序中分离出去,减少了应用程序的维护和修改。文件系统和数据库系统均可以长期保存数据,由数据管理软件管理数据,数据库系统是在文件系统基础上发展而来。
数据库系统主要管理数据库的存储、事务以及对数据库的操作。文件系统是操作系统管理文件和存储空间的子系统,主要是分配文件所占的簇、盘块或者建立FAT、管理空间空间等。一般来说数据库系统会调用文件系统来管理自己的数据文件,但也有些数据库系统能够自己管理数据文件,甚至在裸设备上。文件系统是操作系统必须的,而数据库系统只是数据库管理和应用所必需的。
文件服务器 VS 数据库服务器
文件系统和数据库系统之间的区别
- 文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;
- 文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;
- 文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;
- 文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。
文件系统和数据库系统之间的联系
- 均为数据组织的管理技术;
- 均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;
- 数据库系统是在文件系统的基础上发展而来的。
数据库服务器
数据库服务器的作用
数据库其实本质上也是文件,使用数据库的主要目的是便于检索,图片和视频除了标题之类的文字信息外,本身内容中没有需要检索的数据,所以用数据库存储完全没有必要。 所以一般数据库中只会存储图片、视频的基本信息和路径,再通过路径找到文件。
在文件服务器数据库中,数据存放在文件之中,数据的各个用户直接从文件中取得他们所需的东西.当有修改发生时,应用程序打开文件并写入新数据.当需要显示现有数据时,应用程序打开文件并读取数据.如果一个数据库有20个不同的用户,那么所有20个用户均读取和写入这个相同的文件.
在数据库服务器中,情况同文件服务器的情形相反。虽然数据仍然存放在文件中,但文件访问由一个统一的主程序控制。当一个应用程序需要利用现有数据时,这个应用程序向服务器发送一个请求。服务器查找相应的数据,并将这个数据发回到应用程序.当一个应用程序需要向数据库中写入新数据时,它将该数据发送到服务器,然后由服务器执行实际的写入操作。只有一个统一的程序对数据文件执行读取和写入操作.
一般说来,面向单用户桌面的数据库(比如Acess\Foxpro)都是文件服务器,而面向部门、公司或企业用户的数据库(Oracle\sybase\sql)都是数据库服务器。
数据库服务器在大型环境中的优势
由于只有一个统一的程序读取和写入数据,所以破坏关键数据的意外修改或瘫痪的可能性更小。
这个统一的服务器程序可以充当一个监视所有客户的看门人,从而使安全政策的建立和执行变得更容易。
由于线路上只有请求流和结果流,所以客户/服务器数据库会比文件服务器数据库更有效的利用网络带宽。
由于只有所有的读取和写入都由一台统一的计算机来完成,所以升级这台计算机来提高数据库性能变得更容易。
客户/服务器数据库往往提供保护数据的特性,比如日志事务和磁盘或网络错误的恢复。严格地说,文件服务器数据库也会提供这些特性
如何选择数据库服务器
高性能
确保所选服务器既能满足操作系统和业务处理的需求,又能满足一定时期内业务量的增长。通常,所需的服务器TpmC值可以根据经验公式来计算(Tpmc是用于测量计算机系统的事务处理能力的程序),然后可以比较由各种服务器制造商和TPC组织公布的TpmC值来选择相应的模型。同时,从服务器的市场价格/报价中去除计算出的TpmC值,得到每单位TpmC值的价格,然后选择性价比高的服务器。
结论:服务器处理器的性能非常关键。CPU的主频率应该很高,并且应该有一个大的缓存。
可靠性
可靠性原则是所有设备和系统选择的首要考虑因素,特别是在具有大处理要求和长期运行的大型系统中。考虑到服务器系统的可靠性,不仅是服务器单个节点的可靠性或稳定性,还包括服务器与相关辅助系统(如网络系统、安全系统、远程打印系统等)之间连接的整体可靠性。必要时,关键服务器也应考虑集群技术,如双机热备份或集群并行访问技术,甚至可能的完全容错机器。
结论:服务器应该有冗余技术。同时,硬盘、网卡、内存、电源等设备应主要稳定耐用,性能次之。
可扩展性
确保所选服务器具有出色的可扩展性原则。因为服务器是所有系统处理的核心,所以需要有大的数据吞吐率,包括:输入输出速率和网络通信速率。此外,服务器需要能够处理一定时间内业务发展带来的数据量,并且需要能够根据相应时间的业务发展需要进行自我升级,如:升级中央处理器型号、内存扩展、硬盘扩展、更换网卡、增加终端数量、磁盘阵列连接或集群系统与其他服务器并发访问集中数据等。这一切都要求所选服务器总体上具有良好的可扩展性。在大型计费系统的设计中,通用数据库和计费应用服务器将采用集群的方法来提高可靠性。根据数据量和投资考虑,连接的磁盘存储系统可以采用DAS、NAS或SAN等实施技术。
结论:服务器的输入输出应该是高的,否则当CPU和内存都是高性能时,就会出现瓶颈。此外,服务器具有更好的可扩展性,以满足未来企业发展的需要。
安全
大多数服务器处理相关系统的核心数据,关键事务和重要数据存储在这些系统上并运行。这些交易和数据是所有者的重要资产,其安全性非常敏感。服务器的安全性与系统的整体安全性密切相关,如网络系统的安全性、数据加密、密码系统等。服务器本身,包括软件和硬件,应该从安全的角度来设计和考虑。在外部安全设施的帮助下,服务器应该确保自身的高安全性。结论:首先,服务器的材料应具有高硬度、高防护性等条件。第二,服务器的冷却系统及其对环境的适应性应该很强,以满足服务器在硬件上的安全性要求。
可管理性
服务器不仅是整个系统的核心,也是节点的一部分。正如网络系统需要管理和维护一样,它也需要服务器的有效管理。这要求服务器的软件和硬件支持标准管理系统,尤其是其上的操作系统,并且还包括一些重要的系统组件。
结论:试着选择支持更多系统的服务器,因为服务器的系统越兼容,你就有越多的选择。
概要:首先,数据库服务器的性能要求很高,所以对CPU、内存、硬盘等都有很高的要求。第二,存储,存储应该有良好的稳定性,以满足长期运行的服务器在任何时候的读写操作没有错误。