Answer the question
In order to leave comments, you need to log in
Answer the question
In order to leave comments, you need to log in
When describing the task of choosing a database (in the general case), key-value in particular, what exactly is stored is the _last_ most important factor. And the following factors should be taken into account:
1. The level of distribution/parallelism: do you need a distributed database, or is everything on the same server? Within one (or each) server, do you need concurrent access, or all in one thread? Do you need simultaneous access from different processes?
2. What _guarantees_ do you want from the base. Durable, persistent or volatile (in-memory)? What guarantees are needed for transaction isolation? Are transactions with multiple key updates necessary?
3. Is a base license right for you? If the base is proprietary, are you willing to pay for it, and how much?
4. Technology maturity, how stable is the latest branch.
5. Presence of monitoring, integration with analytical and SQl-like add-ons like presto, etc.
6. Popularity of the base, community size, how many answers to Stack overflow, etc.
And only now
7. Speed/efficiency by memory, which may (and may not necessarily be affected) by a particular type of keys and values.
Items can change in priority depending on the task.
Bottom line: according to your introductory it is impossible _even approximately_ to advise anything.
In general, REDIS is just what the doctor ordered.
If the task and the language allows, then you can play around with judy array
Of the most popular, for which there are tons of documentation, including in Russian: MongoDB and CouchDB .
Mongo is more popular, there are a bunch of drivers for any environment, and Couch is, in my opinion, simpler and friendlier.
All other diversity is either for more complex tasks, or highly specialized solutions, or another attempt to achieve perfection in experiments.
For quick mastering, I recommend "Litle Mongo Book" for MongoDB (there is a Russian version on the Web, look on GitHub), and CouchDB has its own primer and web interface with which you can play around.
Both systems are available for both Windows and LINUX. Both have socket and web gateways. Both can work as independent HTTP servers, ie. easy to create a web application and a lot of interesting things. A special feature of both is the ability to create stored procedures in Javascript .
Cassandra is a redundant solution for your task, which can be justified only if the development is done in Java and for the Java environment, and everything except Java is not "it's not Java" :).
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question