DBMS与文件系统。哪个更快?

时间:2013-11-02 20:53:27

标签: filesystems database-performance database

毫无疑问,DBMS在今天的开发人员生活中发挥着至关重要的作用,这是检索数据的简便方法,特别是在我们不需要JOINS时。但除了容易因素,哪个更快?文件或数据库?

1 个答案:

答案 0 :(得分:3)

取决于具体情况。有人可能会认为文件系统更快,因为DBMS必须使用文件系统来存储其数据,因此只添加一层缓冲区。这并不严格,因为某些DBMS(例如Oracle)实现并可以使用自己的文件系统。可以得出结论,文件系统更快,因为系统调用(例如fread()和fwrite())比SQL调用(例如SELECT *)具有更少的开销。这也不完全正确,因为读取多个文件和连接多个文件的开销可能不如DBMS数据存储实现(例如文件中的btree)。

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