事务存储引擎 SimpleDBM
fmms
13年前
SimpleDBM是一个多线程的事务性存储引擎,用Java编写的。它有一个非常小的footprint,可嵌入到地址空间的申请。它提供了一个简单的编程API ,可以非常快学到。 SimpleDBM支持ACID事务,steal/no-force 缓冲管理,锁的并发性,行级锁, B -树索引,表格,收件领先日志,崩溃恢复,并死锁检测。 <ol> <li><b>Transactional</b> - SimpleDBM fully supports ACID transactions. SimpleDBM uses a STEAL/NO-FORCE buffer management strategy for transactions. </li> <li><b>Multi-threaded</b> - SimpleDBM is multi-threaded and supports concurrent reads and writes of data. </li> <li><b>Write Ahead Log</b> - SimpleDBM uses a write ahead log to ensure transaction recovery in the event of system crashes. </li> <li><b>Lock based concurrency</b> - SimpleDBM uses shared, update and exclusive locks to manage concurrency. Row locks are used. </li> <li><b>Multiple Isolation Levels</b> - SimpleDBM supports read-committed, repeatable-read, and serializable isolation levels. </li> <li><b>B-Tree Indexes</b> - SimpleDBM implements B-plus Tree indexes, that fully support concurrent reads, inserts and deletes. SimpleDBM B-Trees continually re-balance themselves, and do not suffer from fragmentation. </li> <li><b>Tables</b> - SimpleDBM supports tables, but for maximum flexibility, treats table rows as blobs of data. Table rows can have any internal structure as you like, and can span multiple disk pages. </li> <li><b>Latches and Locks</b> - SimpleDBM uses latches for internal consistency, and locks for concurrency. Latches are more efficient locking mechanisms that do not suffer from deadlocks. </li> <li><b>Deadlock detection</b> - SimpleDBM has support for deadlock detection. A background thread periodically checks the lock table for deadlocks and aborts transactions to resolve deadlocks. </li> <li><b>Network API</b> - A network client/server API is being developed and will be released soon!</li> </ol> <p><strong>项目主页:</strong><a href="http://www.open-open.com/lib/view/home/1323582235281" target="_blank">http://www.open-open.com/lib/view/home/1323582235281</a></p>