NW.JS/电子最佳嵌入式数据库用于大型数据集



我试图用电子或nw.js制作simpe桌面应用程序(尚未决定)。但是我现在看到数据库一个大问题。

我需要处理大约1-200万记录的内容,因此我开始搜索和测试。Sqlite看起来还不错,它可以处理它,但是对于NW和Electron来说,它很难编译。总是有一些错误,我现在已经开始了。所以我测试了NEDB。快速,小,很好。在插入了NW.JS上的200K记录后,数据库从未得到满足,并且不可能进行计数操作。因此,我从来没有机会用数百万张记录进行测试。键/值数据库进行大量工作,需要SQL或MongoDB等集合。

您有什么想法可以使NW.JS/Electron桌面应用程序快速,嵌入式数据库?

在进行一些研究之后,我认为这只是sqlite3。对于我来说,这是不可能编译的,但是sqlite3的节点有很好的反馈。我打开了问题,几个小时后有新版本。

当您编译sqlite3的nw.js时可能遇到的几个问题:

x64或x86

检查体系结构或您拥有的每个组件。我的第一个问题是我正在使用X64,然后使用我的选项安装了节点GYP。所以我用过:

npm install --global --production windows-build-tools

最好不要做。我以前有Python,但是Windows-Build-tools还是安装了其他工具,而我的X64 Python被切换到X86。使用相同的体系结构安装您需要自己的一切,或者您会遇到问题。

sqlite3编译,我添加了新模块,无法更新

它已知的问题。因此,如果要在NW应用中添加任何模块,请删除所有Node_modules并再次编译SQLite3。

您是否尝试以在多个文件存储中分配数据的方式分解NEDB中的存储空间?我通过创建一个"根"数据库来处理NEDB中的数百万个记录,该数据库跟踪记录的存储位置,然后将我的记录分解为较小的文件,它不是很漂亮,但可以正常工作。

您可以尝试loki.js -http://lokijs.org-我还没有自己,所以我无法确定绩效的主张是诚实的。

最新更新