我想开发一个桌面应用程序,允许用户搜索json文件。 这些文件(大约50.000)是预定义的。它们应随应用程序本身一起提供。
我的问题是,使用该应用程序发送这些文档的最佳方式是什么,同时允许用户搜索包含某些值的文档,例如在sql术语中:显示文档中某些json值的所有文档,如%Example%。
我考虑过使用某种NoSQL解决方案,将文件预加载到数据库并将其与应用程序捆绑在一起。我已经看了一些解决方案,但我不确定哪一个最适合我的需求,或者它是否是最好的方法。
底线是,我不能让我的用户在他们的系统上安装db,这太复杂了。
我更喜欢适合java或python的解决方案。
感谢您的帮助!
答案 0 :(得分:1)
You can use an embedded database,基于内存的数据库(如hsql)或基于文件的数据库,如sqlite。
既不需要最终用户的任何安装。您只需将库打包为应用程序安装包的一部分(当然还有引擎本身)。
如果你正在寻找一个k / v商店,那么好的'Berkeley DB
就足够了。如果您真的在寻找“嵌入式NoSQL解决方案”,请尝试MooDB。
答案 1 :(得分:0)
Mongo DB有一个嵌入版本:https://github.com/flapdoodle-oss/embedmongo.flapdoodle.de
我已将它用于集成测试(模拟Mongo服务器)并且它的效果非常好!
每当我阅读文档和搜索时,我也会想到Solr:http://lucene.apache.org/solr/