Simple, fast and reliable database (NoSQL) [closed] - database

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I'm looking for a solution to add persistence to my native-code application. It should be simple (no SQL), fast, and most-importantly reliable.
The best approach I can think of is using memory-mapped files. It's as simple and fast as it can get - you simply store the values in plain-data arrays in "memory". However, I don't think it's very reliable - a power failure could leave the database in an inconsistent or corrupted state. Being able to transactionally sync a group of memory-mapped files to disk would solve this, but I don't think it's possible. Also, unless the filesystem supports snapshots or COW cloning (e.g. Brtfs), backups would mean having to stop the application completely while the files are being copied.
Does anyone have better ideas?

Tokyo Cabinet
http://fallabs.com/tokyocabinet/
Berkeley DB
http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html

Your list of requirements sounds like Redis. See http://redis.io/ for more.
Another possibility is Cassandra. See http://cassandra.apache.org/ for more on that.

RocksDB or levelDB are other great options.

Related

any alternative SQL for flutter rather than sqflite [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
I was wonder if there any alternative way to store offline data in dependencies database rather than using sqflite!!
if any one knows any SQL or even nosql libraries for flutter that's is not complicated like sqflite please mention it!
This is a alternative, use a NoSql database.
Sembast
Yet another NoSQL persistent store database solution for single process io applications. The whole document based database resides in a single file and is loaded in memory when opened. Changes are appended right away to the file and the file is automatically compacted when needed.
Works on Dart VM and Flutter (no plugin needed, 100% Dart). Inspired from IndexedDB, DataStore, WebSql, NeDB, Lawndart...
Supports encryption using user-defined codec.
This is a link when you can get the library:
https://pub.dev/packages/sembast

Looking for a key-value database that is not in-memory, and have "list,set" datatypes [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I am using redis to store highly requested info, but I want to store less-requested stuff in a list/set on the disk. I have been looking around with no luck. Memcached, Riak etc. don't seem to have list/set datatypes. Is there a database that have those features?
Thanks.
Run another Redis instance and configure it with AOF on. Append-only file.
You can read more about it here:
http://redis.io/topics/persistence
Scroll half way down, there is alot of good information on it.
Append-only file
Snapshotting is not very durable. If your computer
running Redis stops, your power line fails, or you accidentally kill
-9 your instance, the latest data written on Redis will get lost. While this may not be a big deal for some applications, there are use
cases for full durability, and in these cases Redis was not a viable
option. The append-only file is an alternative, fully-durable strategy
for Redis. It became available in version 1.1. You can turn on the AOF
in your configuration file: appendonly yes From now on, every time
Redis receives a command that changes the dataset (e.g. SET) it will
append it to the AOF. When you restart Redis it will re-play the AOF
to rebuild the state.

Looking for a cross platform small footprint database [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I have the following scenario. I need a db to store XML messages that have been created by a reader. I then want to use a transport (wcf) to read the db external to the populating app and send the messages to a central db Generally the db needs to run on mono, and windows.
I did look at sqlite3, and it seemed to fit all my requirements, but i'm reading its not so good on multi process access and t's moving away from my sweet spot, these last couple of days.
Thanks.
Have you considered just using XML to store the data? It doesn't get any more portable than that and will work fine as long your client-side storage needs are simple. E.g. not a large amount of many domain objects that need to be stored.
Additionally using an XML data store solves a lot of setup and installation headaches. You simply reference a file (or files) relative to your executable. You don't need to worry about installing db engines for a variety of platforms and then worry about upgrading.
WOuld it be feasible to give each process their own sqlite3 database? They all ultimately use the central database anyway, right?
Have a look at Firebird.
You can use it as an embedded engine just like SQLite, but it can scale to a full blown server as well.
The only drawback is, that the documentation is a mess

Are there any databases that support protocol buffers? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
Are there any databases, in either the SQL or NoSQL worlds, that support protocol buffers? (Support could mean various things, but hopefully would include being able to index on fields in protocol buffers.)
ProfaneDB: http://profanedb.gitlab.io
"ProfaneDB is a gRPC interface between Protocol Buffers and RocksDB"
P.S:
Though the question was asked 10 years ago I still find it very relevant, specially with the ascension of gRPC. Hope that can be of help.
I am not aware of any (not that they don't exist, I just don't know about them), but perhaps it is worth discussing an alternate strategy and the pros and cons.
Typically you would want to store a serialized version of your protocol buffer, indexed by some particular key (a unique identifier, perhaps). You could then build secondary indexes for other interesting fields that point to that unique identifier. The idea is that you would want explicit indexes like this to scale beyond what a system that provides arbitrary indexes. This obviously opens up a world of new problems (such as stale arbitrary indexes).
Here is a project I found: https://github.com/google/mysql-protobuf
It's sql that speaks protobuf, looks promising but last commit was in mid March 2016.
ClickHouse lately added support for protobuf messages.
Cloud Spanner would provide native support for protobufs.
https://cloud.google.com/spanner/

Opensource Object Database? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Is there any open source Object Database available? I would like to have a look at the source code and see how stuffs are implemented.
http://www.zope.org/Wikis/ZODB is the first coming to mind, but here's a list of both commercial and open source object databases:
http://www.odbms.org/vendors.html
db4o is my favorite.
You probably want to take a look at Magma, a Smalltalk OODB inspired by Gemstone.
Magma is an OODB with full source in Squeak Smalltalk. See http://wiki.squeak.org/squeak/2665. Even if you want to use a different implementation language, reading the code should be helpful. There is an active mailing list, where questions are answered quickly.
Gemstone is probably the largest OODB company, with the best track-record. It used to be very expensive, but they introduced a free but not open source version for small (4GB) databases recently in their GLASS (Gemstone, Linux, Apache and Seaside) offering.
Prevayler is one of them.
CouchDB is a document database, much the same thing as an object one.

Resources