0

毫无疑问,DBMS 在当今开发人员的生活中起着至关重要的作用,它是检索数据的简便方法,尤其是当我们不需要 JOINS 时。但除了简单的因素,哪个更快?文件还是数据库?

4

1 回答 1

3

视情况而定。人们可能会认为文件系统更快,因为认为 DBMS 必须使用文件系统来存储其数据,因此只添加了一层缓冲区。这并不是严格意义上的,因为某些 DBMS(例如 Oracle)实现并且可以使用它们自己的文件系统。人们可能会认为文件系统更快,因为系统调用(例如 fread() 和 fwrite())的开销低于 SQL 调用(例如 SELECT *)。这也不完全正确,因为读取多个文件和连接多个文件的开销可能不如数据存储的 DBMS 实现(例如文件中的 btree)有效。

唯一知道的方法是选择一个场景并对其进行基准测试。与任何设计一样,必须权衡取舍:DBMS 的复杂性与文件系统的易用性、DBMS 选择的容易性与文件系统读取的复杂性等。

于 2013-11-02T21:01:11.447 回答