nosql
我想要一个具有以下要求的最快数据库
- 它必须在 Apache 或 BSD 或其他下获得许可,但不得 GPL
- 它必须支持java
- 它应该在嵌入式模式下工作
- 应提供高性能搜索(用于单词内的字符搜索)
- 应该提供压缩选项。
如果您知道任何满足我要求的数据库,请提出建议。
不可能回答这个问题,因为“我想要最快的数据库”不够具体,无法给你答案。
数据库在某些方面可能“快”,而在其他方面可能很慢。例如,MongoDB 具有极快的读/写性能,但它不能真正进行连接,并且您的数据并不总是能保证被写入。同样,MySQL 在全文搜索方面很糟糕,但它在许多指标上提供了合理的能力水平。
根据您对它可嵌入的要求,您可能应该看一下sqlite
,它是公共域的,可嵌入的,具有 Java 绑定,支持带扩展的全文搜索,并且可以使用扩展进行压缩。(这不是 NoSQL,但你也没有提到为什么你真的需要它,我怀疑很多人只是因为它听起来很酷而选择它。)
我正在开发一个书签应用程序,我在其中存储了数百万个链接及其标题,并且我想实现类似于 Firefox 真棒栏的模式搜索,所以我认为 nosql 更好。有什么建议么。
也许偏离了主要话题,但......
我使用 Ruby on Rails 和 SQLite 为自己构建了一个书签应用程序(在我暂时无法访问美味之后 - 幸运的是我最近完成了导出并拥有了我的数据)。元搜索gem 提供了很好的搜索功能,可用于对输出结果进行排序。它很容易实现,并且在一个包含 800 多个书签的数据库中,大约一秒钟即可返回结果(感知时间,我从来没有费心对其进行基准测试)。railscasts.com 上有一个很好的教程(第 251 集)。
当然,作为 Ruby on Rails 的粉丝,我可能有偏见,但它可以快速构建并提供开箱即用的 RESTful 接口,如果您希望在 Java 应用程序中使用它以进行原生显示,它可以返回 XML。