Hello,
Can anyone tell me what is the difference between PouchDB and NeDB?
NeDB can be found here:
https://github.com/louischatriot/nedb/
Thanks,
I dont have experience with NeDB so only making a comparison by reading the README, but from a brief look it looks like the main differences are PouchDB does synchronisation between the server and the browser, and that PouchDB was designed with the browser in mind. NeDB looks like it has a slightly more featureful querying probably more along the lines of http://nolanlawson.github.io/pouchdb-find/
Cheers
Here is a performance bench comparing NoSQL databases written in pure javascript (finaldb, lowdb, memory, nedb, nosql, pouchdb, tingodb).
Bench source code is available here:
https://github.com/ezpaarse-project/dbbench
Here are the results of the bench with nice graphs:
https://docs.google.com/spreadsheets/d/1oU6YG_7JK6_qBuTNdkXRw6GGiX3vQpzg3f47t84rJAA/edit#gid=1556857962
Interesting stuff! What is "NoSQL" in this case?
BTW PouchDB will definitely have overhead compared to the other databases, because it stores everything in a "revision" model where the history of every document is preserved. (Think of it as git vs just overwriting files.) Hence it tends to have overhead, even for gets/puts.
Interesting stuff! What is "NoSQL" in this case?
Looks like it's https://github.com/petersirka/nosql
It's probably worth noting, at the risk of sounding quite rude, that PouchDB is significantly better maintained than NeDB as there's an actual group of people working on it. NeDB is largely a one-man project and as of my comment, the last commit (just under a year ago) was just adding a cute cat pic to the read me asking for donations. That's not to say that he doesn't deserve to be paid for creating a high-quality product, but it's certainly not the same scale of organization as PouchDB, and I think support/community is certainly an important factor to consider when choosing a dependency. At this point it seems that NeDB is mostly kept alive because electron happens to mention it on their site.
(ps I know this issue is pretty old but it does show up on google when searching for pouchdb vs nedb :P)
I think it's worth pointing out that the NeDB readme states in the Pull Request section: "Important: I consider NeDB to be feature-complete, i.e. it does everything I think it should and nothing more. As a general rule I will not accept pull requests anymore, except for bugfixes (of course) or if I get convinced I overlook a strong usecase. Please make sure to open an issue before spending time on any PR."
So, it's lack of maintenance is because, short of discovered bugs or a very strong case for an addition/modification, the developer considers the project complete and stable.
Personally, NeDB has become my go-to for most projects. The sole exception I've, thus far, had was an app that had 2.4 million rows of data. NeDB worked, but it created significant lag so I switched to SQLite and made calls to a backend handler for DB interaction.
I considered PouchDB, and it definitely looks like a better alternative for very large datasets ... but I think I'd still go with SQLite in those cases. For most things, according to the benchmarks posted by @user8614, NeDB appears to perform as well or better.
Most helpful comment
It's probably worth noting, at the risk of sounding quite rude, that PouchDB is significantly better maintained than NeDB as there's an actual group of people working on it. NeDB is largely a one-man project and as of my comment, the last commit (just under a year ago) was just adding a cute cat pic to the read me asking for donations. That's not to say that he doesn't deserve to be paid for creating a high-quality product, but it's certainly not the same scale of organization as PouchDB, and I think support/community is certainly an important factor to consider when choosing a dependency. At this point it seems that NeDB is mostly kept alive because electron happens to mention it on their site.
(ps I know this issue is pretty old but it does show up on google when searching for pouchdb vs nedb :P)