Looking at the benchmarks, I'm trying to rack my brain about how it outperforms redis consistently on every single benchmark for a simple associative map. I don't know if this is likely, but it looks like redis doesn't lock memory [1], which means that the benchmarks could be explained by swapping. Depending on the type of shared memory used by whitedb, it could be that its pages are locked and immune to swapping. [1…
WhiteDB – Lightweight NoSQL database written in C, operating in main memory
21–30 of 83 posts
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#22Looking at the benchmarks, I'm trying to rack my brain about how it outperforms redis consistently on every single benchmark for a simple associative map. I don't know if this is likely, but it looks like redis doesn't lock memory [1], which means that the benchmarks could be explained by swapping. Depending on the type of shared memory used by whitedb, it could be that its pages are locked and immune to swapping. [1…
[1] http://highscalability.com/blog/2013/6/19/paper-megapipe-a-n...
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#23Python bindings! Finally I can stop using dictionaries like a common peasant.
> Data is read and written directly from/to shared memory
Good luck accessing your dictionaries from another python process....
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#24Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#25One of the authors here. A few answers quickly. It does write to disk: you can either dump memory or write all changes to log (turn it on/off yourself). Sure it has a global read/write lock, with several locking strategies to select from (task-fair atomic spinlock queue or a reader-preference or a writer-preference spinlock). It is definitely meant to be a simple library. We strived to document it carefully to make u…
Can you explain-more/rationalize GPLv3 licensing w/ the conditional alternate commercial license?
Why not just BSD, MIT, or (at least) LGPL ?
GPL is more understandable on "higher level software" (ie: complete applications), but I don't understand your intent licensing a library this way.
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#26One of the authors here. A few answers quickly. It does write to disk: you can either dump memory or write all changes to log (turn it on/off yourself). Sure it has a global read/write lock, with several locking strategies to select from (task-fair atomic spinlock queue or a reader-preference or a writer-preference spinlock). It is definitely meant to be a simple library. We strived to document it carefully to make u…
Congratulations on your project and the attention it's getting! Can you explain-more/rationalize GPLv3 licensing w/ the conditional alternate commercial license? Why not just BSD, MIT, or (at least) LGPL ? GPL is more understandable on "higher level software" (ie: complete applications), but I don't understand your intent licensing a library this way.
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#27Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#28Earlier quoted context omitted.
Congratulations on your project and the attention it's getting! Can you explain-more/rationalize GPLv3 licensing w/ the conditional alternate commercial license? Why not just BSD, MIT, or (at least) LGPL ? GPL is more understandable on "higher level software" (ie: complete applications), but I don't understand your intent licensing a library this way.
Making a clean cut between free-as-in-speech on one hand and free-as-in-beer on the other.
This is why the LGPL was created, so that you can have modifications done on your library be free-as-in-speech, but still make the library as a whole useable for a wide variety of other projects, including closed-source versions.
Having a separate requirement to email you for a free-as-in-beer license is just overly complicated for this. The more hurdles you put up for people, the fewer that will adapt the library. I think that licensing is one of those cases where is doesn't pay to be clever. Plus, what happens when you decide to stop maintaining the code? Do you want to keep getting emails for licenses years from now?
Edit: in last paragraph, I said free-as-in-speech, but meant beer (see comment below).
Re: WhiteDB – Lightweight NoSQL database written in C, operating in main memory
#29One of the authors here. A few answers quickly. It does write to disk: you can either dump memory or write all changes to log (turn it on/off yourself). Sure it has a global read/write lock, with several locking strategies to select from (task-fair atomic spinlock queue or a reader-preference or a writer-preference spinlock). It is definitely meant to be a simple library. We strived to document it carefully to make u…
Congratulations on your project and the attention it's getting! Can you explain-more/rationalize GPLv3 licensing w/ the conditional alternate commercial license? Why not just BSD, MIT, or (at least) LGPL ? GPL is more understandable on "higher level software" (ie: complete applications), but I don't understand your intent licensing a library this way.