什么是更快的数据库查询或文件写入/读取

时间:2011-01-15 14:54:10

标签: database file performance

我知道在正常情况下从文件读取/写入的速度更快,但如果我创建了聊天系统: 从文件写入和读取数据或在数据库中插入/选择数据和结果会更快吗?

4 个答案:

答案 0 :(得分:8)

数据库更快。对你来说很重要,处理并发访问。

答案 1 :(得分:2)

每次有人打字时,你真的想要机械磁盘动作吗?写入磁盘是一个可怕的想法。缓存内存中的消息。将消息发送给会议室中的所有用户后清除该消息。缓存将保持较小,大部分时间为空。如果您不需要历史记录日志,这是您的最佳选择。

但是如果你需要一个日志......

如果你在1遍中写入大量数据,我保证该文件将吸引数据库插入性能。数据库的批量插入功能可能与文件匹配,但它需要文件数据源才能开始。您需要在内存中排队很多消息,然后定期刷新到文件。

对于许多小写,差距将关闭,数据库将继续前进。索引将影响插入速度。如果成千上万的用户插入到索引严重的表中,您可能会遇到问题。

进行自己的测试以证明速度更快。模拟实际负载,而不是1个用户测试。

答案 2 :(得分:0)

到目前为止的数据库。

数据库针对数据存储进行了优化,并根据您的情况不断更新和更改。文件存储用于长期存储,几乎没有变化。

(即使文件更快,我仍然会使用数据库,因为它更容易开发和维护)

答案 3 :(得分:0)

由于我假设你的系统会连续写入/读取数据(当人们输入他们的信息时),因为文件处理程序,将它们写入文件需要更长的时间,即

  1. 打开文件进行编写
  2. 锁定文件
  3. 写&保存
  4. 解锁文件
  5. 我会选择db。