ืืกืคืจืืื libmdbx ืืื ืฆืืฆื ืฉืขืืฆื ืืืืฉ ืืืืคื ืืฉืืขืืชื ืฉื LMDB - ืืกื ื ืชืื ืื ืงืืืคืงืื ืืฉืืืฅ ืืคืชื-ืขืจื ืืขื ืืืฆืืขืื ืืืืืื ืืืืืื.
ืืืจืกื ืื ืืืืืช v0.5 ืืื ืืืืืจื ืืื ืืช, ืืกืื ืช ืืช ืืฉืืืช ืื ืฉืืคืืจืื ืืืช ืืืขืืจ ืืฉืื ืฉื ืืืืงืืช ืกืืคืืืช ืฆืืืืจืืืช ืืืืฆืื, ืขื ืืืืืฆืจืืช ืฉืืืืจ ืืื ืืืืืืจื ืืืืื ืืจืืฉืื ื ืฉื ืืกืคืจืืื.
LMDB ืืื DBMS ืืืืจ ืืืื ืฉื ืขืกืงืืืช ืืืืืขืืช ืืคืชื-ืขืจื ืืืืืกืก ืขื ืขืฅ B+ ะฑะตะท ืจืืฉืื ืืืื, ืืืืคืฉืจ ืื ืืื ืฉื ืชืืืืืื ืืจืืื ืืืืื ืืขืืื ืืฆืืจื ืชืืจืืชืืช ืืืขืืื ืืืืืื ืขื ืืกื ื ืชืื ืื ืืฉืืชืฃ ืืงืืื (ืื ืจืฉืช). ืืชืืจื, MDBX ืืืืจ ืืืืื ืืืชืจ ื-LMDB, ืืขืื ืฉ-libmdbx ืฉืืืจ ืขื ืื ืชืืื ืืช ืืืคืชื ืฉื ืืื ืืงืืืื ืฉืื, ืืืื ACID ืืงืจืืื ืื ืืืกืืช ืขื ืงื ื ืืืื ืืื ืืืจื ืขื ืคื ื ืืืืืช CPU, ืืื ืืืกืืฃ ืืื ืืืฉืื.
ืชืืืืจ ืฉื ืืืืืืื ืืืฉืืคืืจืื ืฉื libmdbx ืืืืก ื-LMDB ืจืืื ืืืืืจ ื ืคืจื (ืืชืืื ื ืืืชืคืจืกื ื-Habrรฉ ืื-Medium). ืืื ืจืืื ืืฆืืื ืืช ืืืฉืื ืืืืืื ืืืืชืจ:
- ืืขืืงืจืื, ืชืฉืืืช ืื ืจืื ืืืชืจ ืืืงืืฉืช ืืืืืืช ืืงืื, ืืืืืงืืช ืืืืืืงืืช ืืืืืืืืืช.
- ืืืชืจ ืฉืืืื ืืฉืืขืืชืืช ืืืืื ืืคืขืืื, ืืืืืงืช ืคืจืืืจืื ืืขื ืืืงืืจืช ืคื ืืืืช ืฉื ืืื ื ืืกื ื ืชืื ืื.
- ืงืืืคืงืฆืื ืืืืืืืืช ืื ืืืื ืืืื ืืกื ื ืชืื ืื ืืืืืืื.
- ืคืืจืื ืืกื ื ืชืื ืื ืืืื ืืืืืืืื ืฉื 32 ืกืืืืืช ื-64 ืกืืืืืช.
- ืืืืื ืืืื ืืืืื ืืคื ืืืืืื (ืืขืจืืช ืฉืืืืชืช ืืืื).
- ืชืืืื ืืืคืชืืืช ืืืืืื ืคื ืฉื ืืื ืืคื ืงืืืงืื ืืืืื ืขืืื ืืกื ื ืชืื ืื ืืืืืจืช ืืืฉืชืืฉ.
ืืืืขืื ืืฉืืจืืจ libmdbx ืืื ืชืืฆืื ืฉื ืืืืืื (ืจืื ืืืื) ืืืคืจืื ืืื ืคืจืืืงืื MDBX ื-MithrilDB ืืืืืืกื 2019. ืืืงืืื, libmdbx ืืืืืื ืืืื ืืช ืืืื ืืืื ื ืืืงืกืืืื (ืืจืฆืืื ืื) ืืืืืฆื ืืช ืืกืคืจืืื. ืืืขืฉื, ื ืขืฉื ืืืืืื ืืืืืขื ืคื 2-3 ืืืชืจ ืืื ืฉืืืขืจื ืืืชืืื ื ืืชืืืื:
- ืืืืืขื ืชืืืื ืขืืืจ Mac OS ืืคืืืคืืจืืืช ืืืืจื ืืฉื ื: FreeBSD, Solaris, DragonFly BSD, OpenBSD, NetBSD. ื ืืชื ืืืืกืืฃ ืชืืืื ื-AIX ื-HP-UX ืืคื ืืฆืืจื.
- ืืงืื ืขืืจ ืืืืื ืืืืฆืขืืช Undefined Behavior Sanitizer ื-Address Sanitizer, ืื ืืืืืจืืช ืืขืช ืื ืืื ืขื -Wpedantic, ืื ืืืืืจืืช ืฉื Coverity Static Analyzer ืืื' ืืืืื.
- ืขืืืื ืชืืืืจื API.
- ืืืืื ืงืื ืืงืืจ ืืืงืื ืขื ืืืืืขื.
- ืชืืืืช CMake.
- ืชืืืื ืืขืกืงืืืช ืืงืื ื ืืช.
- ืฉืืืืฉ ื-bootid ืืื ืืงืืืข ืื ืืขืจืืช ืืืคืขืื ืืืชืืื (ืขืฆืืจื ืฉื ืืกื ื ืชืื ืื ืืืืืื).
- ืกืคืืจื ืืงืฆื ืืงืฆื ืฉื ืืคืื ืืขืืืื ืื/ืืฉื ืื ืืคืจืื ืขืกืงื ืืืจืืืื.
- ืืคืฉืจืืช MDBX_ACCEDE ืืืืืืจ ืืืกื ื ืชืื ืื ืฉืืืจ ืคืชืื ืืืฆื ืชืืื.
- ืืืฉืชืืฉ ืืกืืืช OFD ืืฉืืืื.
- ืืืืื ืื ืืฆืื ืืจ.
- ืืืืืจืืชื ืืืื ืคื ืืื ืืืชืื ืืืืื (ืืืืจ ืขื ืคื 2-3 ื-qsort() ืืขื 30% ืืืจ ืืืชืจ ื-std::sort()).
- ืืืจื ืืืคืชื ืืืจืื ืืืืื.
- ืฉืืืื ืืืืืืืืช ืืงืจืืื ืงืืืื (ืืกืืจืืืืืช ืืืกืื ืงืืฆื ืืกื ื ืชืื ืื ืืืืืจืื).
- ืงืืืคืงืฆืื ืืืืืืืืช ืืืจืกืืืืช ืืืืืจื ืืืชืจ.
- ืืกืืจืืืื ืืืคืืืืืืช ืืืชืจ ืืืืืื ืืคื ืขืฅ B+.
- ืฉืืืื ืืืขืจืืืช ืงืืฆืื ืื ืืงืืืืืช (NFS, Samba ืืื') ืืื ืืื ืืข ื ืืง ืืืกื ืื ืชืื ืื ืื ื ืขืฉื ืฉืืืืฉ ืื ื ืืื.
- ืืขืจื ืืืืื ืื ืืืจืื.
ืคืืชืื ืืืจืกื "ืืืื" ืฉื libmdbx ืืืฉืื ืืคืจืืืงื ื ืคืจื MithrilDB, ืืขืื ืืงืืืจ ืืคืืชืื ืฉื ืืืจืกื ื"ื ืืืืืช" ืฉื MDBX ืืืืื ืืืงืคืื ืืช ืืขืจื ืืคืืฆ'ืจืื ืืืืืฆื ืืืชื. ืืืืื ืื ืืชืงืืื ืืฉืืืฉ ืกืืืืช:
- ืืืืืืื ืื ืชืืื: MithrilDB ืืืจืฉ ืคืืจืื ืงืืืฅ ืืกื ื ืชืื ืื ืฉืื ื (ืื ืชืืื) ืืืืฉืง API ืฉืื ื (ืื ืชืืื) ืืื ืืืืฉื ืืช ืื ืืชืืื ืืช ืืืชืืื ื ืืช.
- ืงืื ืืงืืจ ืืืฉ: ืงืื ืืืงืืจ MithrilDB ืงืืื ืจืืฉืืื ืขืฆืืื ื-LMDB, ืืืคืจืืืงื ืขืฆืื ืืชืืื ื ืืืชืคืจืกื ืืจืืฉืืื ืืืจ (ืืืืฉืืจ ืื ืื ืจืืฉืืื Apache 2.0ืืื OpenLDAP Foundation).
- ืืืคืจืื ืืื ืขืช ืืืืื ืคืืื ืฆืืืื, ืืกืคืงืช ืืืชืจ ืืืืืช ืืืืืืื ืฉืืคืจืืืงืืื ืืฉ ืืจื ืขืฆืืืืช ืงืืืื.
MithrilDB, ืืื MDBX, ืืืืกืกืช ืื ืขื ืขืฅ B+ ืืืฆืื ืื ืืืฆืืขืื ืืืืืื ืืืืืื, ืชืื ืืืืื ืืกืคืจ ืืกืจืื ืืช ืืกืืกืืื ืฉื MDBX ื-LMDB. ืืคืจื, ืชืืืื ืืขืืืช "ืงืจืืื ืืจืืื", ืืืชืืืืช ื"ื ืคืืืืช" ืฉื ืืกืืก ืื ืชืื ืื ืืฉื ืืขืืืื ืฉืขืืืื ืืืฉืคื ื ืืกื ืขื ืืื ืขืกืงืืืช ืงืจืืื ืืจืืืืช. ืชืืื ืืช MithrilDB ืืืฉืืช ืืืืืืช:
- ืชืืืื ืืืฆืืช ืืกื ืื ืชืื ืื ืขื ืืกืคืจ ืืืื ืืืจืืื ืืช: HDD, SSD ืืืืืจืื ืื ื ืืืฃ.
- ืืกืืจืืืืืช ืืืคืืืืืืืช ืื ืชืื ืื "ืืขืื ืขืจื" ื"ืขืจื ื ืืื", ืื ืชืื ืื "ืืืื", "ืืืื" ื"ืงืจืื".
- ืฉืืืืฉ ืืขืฅ Merkle ืื ืืืืจ ืฉืืืืช ืืกื ืื ืชืื ืื.
- ืฉืืืืฉ ืืืคืฆืืื ืื ื-WAL ืืืืฆืืขืื ืืืืืื ืืฉืืขืืชืืช ืืชืจืืืฉืื ืขืชืืจื ืืชืืื ืืืืืืืช ืฉืืืืช ื ืชืื ืื.
- ืงืืืืข ืขืฆืื ืฉื ื ืชืื ืื ืขื ืืืกืงืื.
ืืงืืจ: linux.org.ru