MySQL vs二进制文件的速度

时间:2014-03-23 14:10:36

标签: c++ mysql c binaryfiles

哪种更好的方法可以在c ++中保存数据? 二进制文件(.dat)或Mysql 。 Wil二进制文件执行速度更快还是Mysql?

2 个答案:

答案 0 :(得分:2)

MySQL(以及大多数其他数据库管理系统)实际上是stores its data in binary files。这很常见,因为如果文件的内容是最佳结构的,那么从二进制文件(而不是纯文本)读取和写入可能会非常快。

因此,从技术上讲,如果您将数据存储在MySQL中,则需要将其存储在二进制文件中。但是,这并不意味着二进制文件总是提供比数据库更快的数据访问。

数据库管理系统是底层数据的abstraction(例如,二进制文件)。因此,它可以提供额外的好处,包括(但不限于):

  • 缓存频繁访问的数据(从内存中读取比从二进制文件中读取要快得多)
  • 支持更精细的安全模型(例如,允许某些用户读取数据,同时允许其他人修改数据)
  • 数据的简化视图(无需担心数据实际上是如何保留的)

最终,MySQL和二进制文件只是填补了不同的角色,但有些重叠。

如果您只想存储应用程序数据(例如,用户首选项)供以后使用,那么您应该更喜欢使用二进制文件。数据库可以工作,但是会有点过分。

如果您要存储大量数据或具有内部关系的数据,那么您应该考虑使用数据库管理系统(如MySQL)。二进制文件可以工作,但很难使用。

答案 1 :(得分:0)

取决于你在做什么。对于纯读/写速度,二进制文件将是最快的(mmap为最大速度)。如果你要做任何数据库操作,那么Mysql更容易使用。