Closed. This question is opinion-based。它当前不接受答案。
想要改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
对于我正在编写的小型PHP应用程序,我们需要存储大量具有哈希键和一些简单字段值(“主机”,“路径”)的记录。例如:
这样的数据最好的持久存储是什么? MySQL将是最佳选择,还是对如此简单的数据而言过于矫?过正?什么会带来最佳性能?
想要改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
对于我正在编写的小型PHP应用程序,我们需要存储大量具有哈希键和一些简单字段值(“主机”,“路径”)的记录。例如:
'4420ffb32a' => array(
'host' => '127.0.0.1',
'path' => 'path/to/resource',
);
这样的数据最好的持久存储是什么? MySQL将是最佳选择,还是对如此简单的数据而言过于矫?过正?什么会带来最佳性能?
最佳答案
简短答案: Membase。
长答案:
基本上,您有三个选择:关系数据库,文件存储或其他内容。
就像您说的那样,关系数据库肯定是过大了。就是说,如果这是已经具有MySQL或其他数据库的应用程序的一部分,我会同意的。同样,文件存储有时可能很方便(例如,写入一堆XML文件),但是磁盘I/O可能很慢。
现在在另一个类别中,您可以使用一些很棒的NoSQL选项,例如CouchDB或Memcached。
如果您不太担心数据的持久性,建议您使用内存缓存。它是轻量级的,易于运行,并且有一个Memcache PHP extension使它易于使用。它是用于像这样存储键值的。
memcache的一个缺点是,memcache服务停止后,所有数据都会丢失。这是Membase出现的地方。它是memcache的开源分支,与协议(protocol)兼容,这意味着它将与所有现有的客户端库一起使用。但是,它可以保留您的数据,并实际上提供一致性和可靠性,而内存缓存本身不能做到这一点。
注意:这个答案与问题本身一样,都是其时代的遗物。请不要从字面上看。