MDBX පුස්තකාලය සැලකිය යුතු ලෙස සංශෝධිත දෙබලකි
MDBX සහ LMDB අතර වඩාත්ම වැදගත් වෙනස්කම්:
- මූලික වශයෙන්, කේතයේ ගුණාත්මකභාවය, පරීක්ෂා කිරීම සහ ස්වයංක්රීය චෙක්පත් කෙරෙහි වැඩි අවධානයක් යොමු කෙරේ.
- පරාමිති පරීක්ෂා කිරීමේ සිට දත්ත සමුදා ව්යුහයන්ගේ අභ්යන්තර විගණනය දක්වා ක්රියාත්මක වන විට සැලකිය යුතු ලෙස වැඩි පාලනයක්.
- ස්වයංක්රීය සංයුක්තකරණය සහ ස්වයංක්රීය දත්ත සමුදා ප්රමාණය කළමනාකරණය.
- 32-bit සහ 64-bit එකලස් කිරීම් සඳහා තනි දත්ත සමුදා ආකෘතියක්.
- පරාසයන් අනුව නියැදි වෙළුම් ඇස්තමේන්තු කිරීම (පරාස විමසුම් ඇස්තමේන්තුව).
- පෑන්කේක් මෙන් දෙගුණයක් විශාල යතුරු සඳහා සහය සහ පරිශීලක-තෝරාගත හැකි දත්ත සමුදා පිටු ප්රමාණය.
libmdbx නිකුතු අපේක්ෂකයා MDBX සහ MithrilDB ව්යාපෘති වෙන් කිරීමට 2019 අගෝස්තු මාසයේ ගත් තීරණයක ප්රතිඵලයකි. ඒ සමගම, libmdbx (තාර්කික) උපරිම තාක්ෂණික ණය ඉවත් කිරීමට සහ පුස්තකාලය ස්ථාවර කිරීමට තීරණය කළේය. ඇත්ත වශයෙන්ම, මුලින් ඇස්තමේන්තු කර සැලසුම් කරන ලද ප්රමාණයට වඩා 2-3 ගුණයක් නම් කරන ලද දිශාවට සිදු කර ඇත:
- MacOS සහ දෙවන පෙළ වේදිකා සඳහා සහය ක්රියාත්මක කර ඇත: FreeBSD, Solaris, DragonFly BSD, OpenBSD, NetBSD. AIX සහ HP-UX සහාය අවශ්ය පරිදි එකතු කළ හැක.
- මෙම කේතය නිර්වචනය නොකළ චර්යා සනීපාරක්ෂාව සහ ලිපින සනීපාරක්ෂක භාවිතයෙන් විෂබීජහරණය කරන ලදී, "-Wpedantic" සමඟ ගොඩනඟන විට සියලුම අනතුරු ඇඟවීම්, සියලු ආවරණ ස්ථිතික විශ්ලේෂක අනතුරු ඇඟවීම් ආදිය ඉවත් කරන ලදී.
- යාවත්කාලීන කරන්න
API විස්තර . - කාවැද්දීමේ පහසුව සඳහා මූල කේතය ඒකාබද්ධ කිරීම (ඒකාබද්ධ කිරීම).
- CMake සහාය.
- කැදලි ගනුදෙනු සඳහා සහාය.
- මෙහෙයුම් පද්ධතිය නැවත ආරම්භ කර තිබේද යන්න තීරණය කිරීමට bootid භාවිතා කිරීම (අපිරිසිදු දත්ත සමුදා නැවතුම).
- යාවත්කාලීන කරන ලද/පැරණි පිටු සහ විස්තීරණ ගනුදෙනු තොරතුරු අවසානයේ සිට අවසානය දක්වා ගණන් කිරීම.
- MDBX_ACCEDE විකල්පය දැනටමත් විවෘතව ඇති දත්ත ගබඩාවකට ගැළපෙන ආකාරයෙන් සම්බන්ධ වීමට.
- භාවිතා කරන්න
OFD අවහිර කිරීම පවතින විට. - පයිප්පයේ උණුසුම් උපස්ථය.
- විශේෂිත ප්රශස්ත අභ්යන්තර වර්ග කිරීමේ ඇල්ගොරිතම (“qsort()” ට වඩා 2-3 ගුණයක් දක්වා වේගවත් සහ “std::sort()” ට වඩා 30% දක්වා වේගවත්).
- උපරිම යතුරු දිග වැඩි කර ඇත.
- ඉදිරි කියවීමේ ස්වයංක්රීය පාලනය (මතකයේ දත්ත සමුදා ගොනු හැඹිලි උපාය).
- වඩාත් ආක්රමණශීලී සහ වේගවත් ස්වයංක්රීය සංයුක්ත කිරීම.
- B+ ගස් පිටු ඒකාබද්ධ කිරීම සඳහා වඩාත් ප්රශස්ත උපාය මාර්ගයක්.
- වැරදි ලෙස භාවිතා කළහොත් දත්ත සමුදායට හානි වීම වැළැක්වීම සඳහා දේශීය නොවන ගොනු පද්ධති (NFS, Samba, ආදිය) පාලනය කිරීම.
- පරීක්ෂණ කට්ටලය පුළුල් කර ඇත.
libmdbx හි "ඊළඟ" අනුවාදයේ සංවර්ධනය වෙනම ව්යාපෘතියක් ලෙස දිගටම පවතිනු ඇත
- සම්පුර්ණයෙන්ම නොගැලපේ: MithrilDB හට සියලු සැලසුම් කළ විශේෂාංග ක්රියාත්මක කිරීමට වෙනස් (නොගැලපෙන) දත්ත සමුදා ගොනු ආකෘතියක් සහ වෙනස් (නොගැලපෙන) API අවශ්ය වේ.
- නව මූල කේතය: MithrilDB මූලාශ්ර කේතය LMDB වෙතින් ස්වාධීනව බලපත්ර ලබාගෙන ඇති අතර, ව්යාපෘතියම වෙනත් බලපත්රයක් යටතේ ප්රකාශයට පත් කිරීමට සැලසුම් කර ඇත (අනුමත
හෝ IF Apache 2.0 බලපත්රය, නැතOpenLDAP පොදු බලපත්රය ). - වෙන්වීම විභව ව්යාකූලත්වය මඟහරවා, වඩාත් නිශ්චිතභාවයක් හඳුන්වා දීම සහ ව්යාපෘති සඳහා ස්වාධීන මාර්ගයක් සහතික කරයි.
MDBX වැනි MithrilDB ද පදනම් වේ
- විෂමජාතීය මාධ්ය කිහිපයක දත්ත සමුදාය තැබීම සඳහා සහාය: HDD, SSD සහ වාෂ්පශීලී නොවන මතකය.
- "වටිනා" සහ "අඩු අගය", "උණුසුම්", "උණුසුම්" සහ "සීතල" දත්ත සඳහා ප්රශස්ත උපාය මාර්ග.
- දත්ත සමුදායේ අඛණ්ඩතාව නිරීක්ෂණය කිරීමට මර්කල් ගස භාවිතා කිරීම.
- WAL හි විකල්ප භාවිතය සහ දත්ත අඛණ්ඩතා සහතික සහිත ලිවීමේ-දැඩි අවස්ථා වලදී සැලකිය යුතු ලෙස වැඩිදියුණු කළ කාර්ය සාධනය.
- තැටි වෙත දත්ත ලබා දීම අලස අල්ලා ගැනීම.
මූලාශ්රය: opennet.ru