ΠΡΠΎΠ΅ΠΊΡ libmdbx ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ» Π½ΠΎΠ²ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ, ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΠ² ΠΎ ΡΠΌΠ΅Π½Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ libmdbx ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈ Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈΡΡ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΠΎΠ»ΡΠΊΠΎ Π² Π°ΠΌΠ°Π»ΡΠ³Π°ΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠ΅. Π‘ΡΡΠ°ΡΠ΅Π³ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ Π΄Π΅ΠΊΠ»Π°ΡΠΈΡΡΠ΅Ρ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΊ Π΄Π°Π²Π½ΠΎ Π°Π½ΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ MithrilDB, Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ² ΠΠ ΠΏΠΎΠ΄ ΡΠ°ΡΠ°Π΄ΠΎΠΌ ΠΎΠ±ΡΠ΅Π³ΠΎ API. Π―Π²Π½ΠΎ Π·Π°ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΡΠ°ΡΡΡ ΠΠ, ΠΏΠΎΠΊΠ° ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ.
ΠΡΠ»ΠΈ ΡΠ°Π½ΡΡΠ΅ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ΅ Π±ΡΠ» Π²Π΅ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ ΡΡΠ΅ΠΉΠΌΡΠΎΡΠΊ ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π°ΠΌΠ°Π»ΡΠ³Π°ΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ±Π΅ΡΠ°Π½ΠΎ, ΡΡΠΎ Π²ΡΠΊΠΎΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ C++ API, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΡΠΌ smoke-ΡΠ΅ΡΡΠΎΠΌ. ΠΡΠΈΡΠΈΠ½Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Ρ ΠΎΠ±ΡΡΡΠ½Π΅Π½Ρ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ Π² ΡΠ»Π°ΠΉΠ΄Ρ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΈ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π΄Π΅ΠΊΠ»Π°ΡΠΈΡΡΠ΅ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π² ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π³ΠΎΡΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π±Π΅Π· Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΡΠΎΠΌΠ΅ ΡΠ°ΡΠΊΡΡΡΠΈΡ ΡΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΡ ΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ libmdbx, Π² ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π°Π½ΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ° ΠΠ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:
Π Ρ ΠΎΠ΄Π΅ ΠΎΡΠ½ΠΎΠΉ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠΈ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ»ΠΎ Π·Π°ΡΠ²Π»Π΅Π½ΠΎ ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ Π²Π½ΡΡΡΠΈ MithrilDB Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ , Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ C, Π‘++ ΠΈ Rust, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ² ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΡΡΡΡΠ½ΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ (ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π‘/Π‘++ ΡΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Rust ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ).
ΠΠ· ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΡΡ
ΡΠ΅ΠΉΡΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°Π½ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Β«ΠΠΎΠΈΡΠΊ Ρ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌΒ». Π‘ΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π² Ρ
ΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π²Π½ΡΡΡΡ ΠΠ, Ρ ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈΡ
Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΠΎΠΈΡΠΊ ΠΎΡ ΠΊΠΎΡΠ½Ρ Π΄Π΅ΡΠ΅Π²Π° ΠΊ Π»ΠΈΡΡΠΎΠ²ΡΠΌ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΡ
ΠΎΠ΄ΠΈΡ Π΄ΠΎ ΡΡΡΠ°Π½ΠΈΡΡ, Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΡΡΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ B-tree, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΠ± ΠΎΠ±ΡΡΠΌΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
. ΠΡΡ Π²ΠΌΠ΅ΡΡΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΡΡΡΡ ΡΠ°Π·. Π Ρ
ΡΠ΄ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ»ΡΡΠ°Π΅ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠΈΡΠΊ Ρ Β«ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌΒ» Π½Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
