libmdbx 0.9.1 የታመቀ የተከተተ የውሂብ ጎታ መለቀቅ

ተለቋል የቤተ-መጽሐፍት ስሪት 0.9.1 libmdbx (ኤምዲቢኤክስ) ከፍተኛ አፈጻጸም ያለው፣ የታመቀ የተከተተ ቁልፍ እሴት ዳታቤዝ ትግበራ። የlibmdbx ኮድ በፍቃድ ስር ተሰራጭቷል። ክፍት LDAP የህዝብ ፈቃድ.

የአሁኑ ስሪት ለረጅም ጊዜ የተረጋጋ ስሪት 1.0 ከሙሉ C++ ድጋፍ ጋር ለመልቀቅ እና አዲሱን C++ ኤፒአይ ለማቀዝቀዝ ዝግጁ ባለመሆኑ ልቀቶችን ለማዘግየት ባለው ፍላጎት መካከል ያለ ስምምነት ነው። የቀረበው ልቀት ቤተ መፃህፍቱን ለማረጋጋት እና አጠቃቀሙን ለማሻሻል ያለመ የ9 ወራት ስራ ውጤት ነው፣ እና እንዲሁም የመጀመሪያ እትም ያካትታል C++ ኤፒአይ.

የlibmdbx ቤተ-መጽሐፍት “ሹካ” ብቻ አይደለም፣ ነገር ግን ሥር ነቀል በሆነ መልኩ በአዲስ መልክ የተነደፈ ዘር ነው። LMDB - በገንዘብ ላይ የተመሰረተ የ"ቁልፍ እሴት" ክፍል ግብይት የተካተተ DBMS ዛፍ B+ ያለ ንቁ ምዝግብ ማስታወሻ, ይህም ባለብዙ-ክር ሂደቶች ያለ ልዩ አገልጋይ ሂደት በውድድር እና በብቃት ከአካባቢው የጋራ (ከአውታረ መረብ ውጪ) የውሂብ ጎታ ጋር እንዲሰሩ ያስችላቸዋል። libmdbx በመሠረቱ ያሰፋል የአባቶቹን አቅም በአንድ ጊዜ በማስወገድ ወይም በመቀነስ. በተመሳሳይ ጊዜ, እንደ ገንቢዎች, libmdbx ከ LMDB ትንሽ ፈጣን እና የበለጠ አስተማማኝ ነው.

libmdbx ይጠቁማል አሲድበሲፒዩ ኮሮች ላይ ከመስመር ሚዛን ጋር የለውጦች ጥብቅ ተከታታይነት እና ንባብ የማያግድ። የአፈጻጸም ሙከራ ውጤቶች (ትይዩ የንባብ/የፍለጋ ጥያቄዎችን በ1-2-4-8 ክሮች ውስጥ በሲፒዩ i7-4600U ላይ ባለ 2 ፊዚካል ኮሮች ባለ 4-ክር HyperThread ሁነታ መላክ):

libmdbx 0.9.1 የታመቀ የተከተተ የውሂብ ጎታ መለቀቅ

በ MDBX እና LMDB መካከል በጣም አስፈላጊዎቹ ልዩነቶች፡-

  • በመሠረቱ፣ ለኮድ ጥራት፣ ለኤፒአይ ወጥነት፣ ለሙከራ እና አውቶማቲክ ፍተሻዎች የበለጠ ትኩረት ተሰጥቷል።
  • በሚሠራበት ጊዜ የበለጠ ቁጥጥር ፣ መለኪያዎችን ከመፈተሽ እስከ የውሂብ ጎታ መዋቅሮች ውስጣዊ ኦዲት ድረስ።
  • ራስ-መጠቅለል እና ራስ-ሰር የውሂብ ጎታ መጠን አስተዳደር.
  • ነጠላ የውሂብ ጎታ ቅርጸት ለ 32-ቢት እና 64-ቢት ስብሰባዎች።
  • የናሙና ጥራዞች በየክልሎች ግምት (የክልል መጠይቅ ግምት)።
  • በእጥፍ ረጅም ቁልፎች ድጋፍ እና በተጠቃሚ ሊመረጥ የሚችል የውሂብ ጎታ ገጽ መጠን።
  • የውሂብ ጎታውን መዋቅር ከአንዳንድ የመልሶ ማግኛ ችሎታዎች ጋር ትክክለኛነት ለመፈተሽ መገልገያ።

ዋና ፈጠራዎች እና ማሻሻያዎች በኋላ የቀድሞ ዜናዎች በጥር 0.5 ከስሪት 2020 መግቢያ ጋር፡-

  • ለፈጣን ድጋፍ እና ለጥያቄዎች መልስ ክፍት ስርዓት ተፈጥሯል። የቴሌግራም ቡድን.
  • ከደርዘን በላይ ስህተቶች እና ድክመቶች ተወግደዋል (ተመልከት. መዝገብ ይቀይሩ).
  • ብዙ የፊደል አጻጻፍ እና የፊደል ስህተቶች ተስተካክለዋል, እና በርካታ የመዋቢያዎች ማሻሻያዎች ተደርገዋል.
  • የሙከራ ሁኔታዎች ተዘርግተዋል።
  • ለ iOS ፣ Android ድጋፍ ፣ buildroot, ሙስሉ, uClibc, WSL1 и የወይን ጠጅ.
  • የC++ ኤፒአይ ቅድመ እይታ ተለቋል አንድ ራስጌ ፋይል.
  • አብሮገነብ ሰነዶች በ Doxygen ቅርጸት እና አውቶማቲክ ማመንጨት የመስመር ላይ ሰነዶች.
  • በራስ ሰር የማህደር ማመንጨት ከተዋሃዱ ምንጭ ጽሑፎች ጋር ቀርቧል።
  • ግብይቶችን እና ጠቋሚዎችን ለማዘጋጀት፣ ለግብይቶች እና ጠቋሚዎች የተጠቃሚ አውዶች ድጋፍ ታክሏል።
  • በB+ ዛፍ MVCC ቅጽበተ-ፎቶዎች ውስጥ የማጣቀሻ ትክክለኛነትን ለመቆጣጠር ተጨማሪ ዘዴዎች ተተግብረዋል።
  • ለማገገም የመቀየር ችሎታ ባለው በማንኛውም የሜታ ገጽ ተደራሽ የሆነ የውሂብ ጎታውን የ MVCC ቅጽበታዊ እይታ ለመፈተሽ ተጨማሪ ድጋፍ።
  • የውሂብ ጎታውን ከአንድ ሂደት እንደገና ለመክፈት ለሙከራ ዓላማ ወዘተ የተተገበረ ድጋፍ።
  • የውሂብ ጎታ ሲከፍቱ የ MDBX_NOSUBDIR አማራጭን በራስ ሰር ማቀናበርን ተግባራዊ አድርጓል።
  • የኢንቲጀር ቁልፎችን ከተንሳፋፊ ነጥብ እሴቶች እና የጃቫስክሪፕት “ሁለንተናዊ” ቁጥሮች ለማመንጨት የታከሉ ተግባራት።
  • በአጠቃላይ በ 430 ፋይሎች ላይ 93 ለውጦች ተደርገዋል, ከ 25 ሺህ በላይ መስመሮች ተጨምረዋል, ከ 8.5 ሺህ በላይ መስመሮች ተሰርዘዋል.

ቀጣይ የlibmdbx እድገት በመጨረሻው C++ ኤፒአይ ላይ ያተኩራል፣ የመሠረት ኮድ ተጨማሪ ማረጋጊያ፣ የቤተ-መጻህፍት አጠቃቀምን ማሻሻል እና ለታዋቂ የሊኑክስ ስርጭቶች ማሸግ። ከታቀዱት ማሻሻያዎች መካከል, በቅርጸቱ ውስጥ ለቁልፎች ድጋፍ መስጠት ተገቢ ነው መልእክት ፓክ.

ምንጭ: opennet.ru

አስተያየት ያክሉ