MongoDB is a document-type NoSQL database written in C + + Mongo DB The biggest advantage is that all data persistence operations do not require the developer to manually write SQL statements, directly invoke the method can easily implement CRUD operations. Many people think that MongoDB does not support transactions, in fact, it is strictly said that MongoDB is not a fully transactional database, and some of his operations are transactional processes. Here I would like to recommend another and MONGO very similar database is TOKUMX, he is the open source version of Tokuek. It can be said that he has a nosql feature like MONGO, as well as the transactional nature of the relational database, supporting document-level locks. Below we simply compare their pros and cons,
1. Insert Performance Comparison
TOKUMX is a number of times higher than MongoDB, both written and read. I tested on a single machine, 1 million data insertion time, MongoDB is about three times times the TOKUMX
2.IPOS Contrast
IPOs is the number of read/write (I/O) operations per second, we know that the life of the hard disk is limited, the more frequent the IO, the shorter the lifespan, because TOKUMX uses a fractal tree index (tokumx Fractal tree (R) indexes), which is the bulk version of Btree, Can effectively reduce the number of Io, improve read and write efficiency.
3. Data compression Efficiency comparison
TOKUMX support "Quicklz", "Lzma", "zlib" three compression algorithms, in space storage than MONGO save more than 90%, this is the focus, so tokumx can be considered to do large-scale log storage.
Other features of 4.TOKUMX
* Oplog support by day partition, you can set the expiration time according to Expireoplogdays, delete the expired oplog, relieve the disk pressure
* Optimized block migration in shards, removing many global and library-level locks, simplifying and optimizing data transfer between different slices
* Document level Lock, non-DB level, non-collection level lock!
* Supports acid and thing MVCC characteristics
* Don't worry about the disk data fragmentation problem!
* Self-control memory instead of handing over to system control unlike MongoDB using MMAP memory control
* A better clustering capability than MongoDB
PS: The last point to note is why TOKUMX is so much more powerful than MongoDB, but not much to use? The reason is that the tokumx process crash the odds far higher than MONGO--#
Tokumx vs Mongodb