基本上,我还在开发一个与拼图相关的网站(真的是微网站),我正在制作一个工具,让你输入一个单词模式(例如“r ?? n”)并得到所有匹配单词(在这种情况下:rain,rein,ruin等)。我应该将这些单词存储在本地文本文件中(例如words5.txt,它有一个包含5个字母单词的返回分隔列表),或者存储在数据库中(例如表格Words5,它会再次存储5个字母的单词) )?
我正在考虑数据检索速度和CPU服务器负载方面的问题。我绝对可以尝试两种方式,并用两种方法记录几次运行所花费的时间,但我宁愿从那些可能有过这方面经验的人那里听到它。
哪种方法总体上更好?
答案 0 :(得分:6)
数据库将以最少的工作量为您提供最佳性能。内置的索引支持和查询分析器将为您提供免费的良好性能,而文本文件可以为您提供出色的工作性能。
在短期内,我建议创建一个通用接口,隐藏数据库和平面文件之间的差异。稍后,您可以对哪一个将提供最佳性能进行基准测试,但我认为数据库将为您提供每小时开发的最佳效果。
答案 1 :(得分:1)
对于快速检索,您当然需要某种索引。如果您不想自己编写索引代码,那么使用数据库肯定是最简单的。
如果您正在为您的应用使用Java或.NET,请考虑查看db4o。它只使用一行代码存储任何对象,并且创建表没有设置成本。
答案 2 :(得分:0)
将数据存储在本地文本文件中(当您将新记录添加到文件末尾时)总是更快,然后存储在数据库中。因此,如果您创建高负载应用程序,则可以将数据保存在文本文件中,稍后将数据复制到数据库。但是在大多数应用程序中,您应该使用数据库而不是文本文件,因为数据库方法有许多好处。