-1

你知道什么是速度差异:

  • 泡菜
  • 搁置
  • sqlite
  • 一些 MySQL 连接器
  • MongoDB
  • ...

如果我想存储许多字典,那将是首选方式,有什么区别?

4

2 回答 2

2

不想拖拉评论,所以我来回答。

鉴于你所说:

没有服务器,没有现有代码。我只想编写一个程序,将字符串本地存储到文件中的字符串字典或其他任何内容中。没有比这更花哨的了。

我想说,对于如此简单的事情,你最好的选择可能是JSON之类的东西。

但是,如果您需要超快,它可能不是最好的解决方案(或者它可能是 - 老实说,我不知道它的性能如何)。它很简单,而且大多数平台都有它的实现,涵盖了你想要的很多领域。如果您想要尽可能快的速度,我的建议是测试它,这是您确定的唯一方法。当然,简单通常是速度的好兆头。

您没有提供足够的信息来了解性能在这里的重要性。请记住,除非您需要性能(可证明),否则在您这样做之前不要费心优化。寻找易于阅读和维护的代码端,以及易于使用文件端的东西。这就是我推荐 JSON 的原因。

于 2012-04-24T17:01:34.573 回答
1

对于字符串字典的持久字符串,anydbm 是非常合理的。bsddb 可以在 anydbm 中使用,速度很快,但对被中断有点敏感。gdbm 可以从 anydbm 使用,速度较慢,但​​不太可能产生损坏的数据库。

此外,如果您想将整个 dict 读入内存,进行大量更改,然后将生成的 dict 写回,这里有:http ://stromberg.dnsalias.org/svn/dohdbm/trunk/ 我正在使用这个备份软件项目中的一个。如果您愿意,它会压缩您的字典,如果您的 I/O 特别慢,或者您需要进行大量修改,这可能会提高性能。

于 2012-04-24T18:24:31.590 回答