An dàrna tagraiche fuasglaidh libmdbx v1.0 às deidh còig bliadhna de leasachadh.

leabharlainn libmdbx na shliochd ath-dhealbhaichte gu mòr bho LMDB - stòr-dàta luach-iuchrach freumhaichte fìor àrd-choileanadh.
Tha an dreach làithreach v0.5 na fhoillseachadh teignigeach, a’ comharrachadh crìochnachadh leasachaidhean sam bith agus an gluasad chun ìre de dheuchainnean deireannach poblach agus seasmhachd, le cruthachadh a’ chiad fhoillseachadh iomlan den leabharlann às deidh sin.

LMDB na DBMS luach-iuchrach stèidhichte air gnìomhachd stèidhichte air craobh B+ gun logadh for-ghnìomhach, a leigeas le grunn phròiseasan ioma-snàthainn obrachadh gu farpaiseach agus air leth èifeachdach le stòr-dàta a tha air a cho-roinn gu h-ionadail (chan e lìonra). Ann an tionndadh, tha MDBX nas luaithe agus nas earbsaiche na LMDB, fhad ‘s a chumas libmdbx prìomh fheartan a sinnsear, leithid ACID agus neo-bhacadh a’ leughadh le sgèileadh sreathach thairis air coraichean CPU, agus cuideachd a’ cur grunn fheadhainn ùra ris.

Tha tuairisgeul air na h-eadar-dhealachaidhean agus leasachaidhean ann an libmdbx an coimeas ri LMDB airidh air artaigil air leth (an dùil fhoillseachadh air Habré and Medium). An seo tha e iomchaidh iomradh a thoirt air an fheadhainn as cudromaiche agus as follaisiche:

  • Gu bunaiteach, thathas a’ toirt barrachd aire do chàileachd còd, deuchainn agus sgrùdaidhean fèin-ghluasadach.
  • Mòran a bharrachd smachd rè obrachadh, bho bhith a’ sgrùdadh pharamadairean gu sgrùdadh in-staigh air structaran stòr-dàta.
  • Auto-compacification agus riaghladh meud stòr-dàta fèin-ghluasadach.
  • Cruth stòr-dàta singilte airson co-chruinneachaidhean 32-bit agus 64-bit.
  • Tomhas air meud sampall a rèir raointean (measadh ceist raon).
  • Taic airson iuchraichean a dhà uimhir cho mòr ri pancagan agus meud duilleag stòr-dàta a ghabhas taghadh leis an neach-cleachdaidh.

Tha an tagraiche fuasglaidh libmdbx mar thoradh air a 'cho-dhùnadh (faic gu h-ìosal) na pròiseactan MDBX agus MithrilDB a sgaradh san Lùnastal 2019. Aig an aon àm, cho-dhùin libmdbx cuir às do na fiachan teicnigeach as àirde (reusanta) agus an leabharlann a dhèanamh seasmhach. Gu dearbh, chaidh 2-3 tursan a bharrachd a dhèanamh anns an stiùireadh ainmichte na chaidh a mheasadh agus a phlanadh an toiseach:

  • Chaidh taic airson Mac OS agus àrd-ùrlaran dàrna ìre a chuir an gnìomh: FreeBSD, Solaris, DragonFly BSD, OpenBSD, NetBSD. Faodar taic AIX agus HP-UX a chuir ris mar a dh ’fheumar.
  • Chaidh an còd a ghlanadh le bhith a’ cleachdadh Sanitizer Giùlan Neo-mhìnichte agus Sanitizer Seòladh, chaidh a h-uile rabhadh nuair a chaidh togail le -Wpedantic, a h-uile rabhadh Coverity Static Analyzer, msaa a chuir às.
  • Ùraich Tuairisgeul API.
  • Amalachadh còd stòr airson a bhith furasta a stèidheachadh.
  • Taic CMake.
  • Taic airson gnothaichean neadachaidh.
  • A’ cleachdadh bootid gus faighinn a-mach a bheil an OS air ath-thòiseachadh (stad stòr-dàta salach).
  • Cunntadh deireadh-gu-deireadh de dhuilleagan ùraichte/seann agus fiosrachadh malairt leudaichte.
  • Roghainn MDBX_ACCEDE airson ceangal ri stòr-dàta a tha fosgailte mar-thà ann am modh co-fhreagarrach.
  • Cleachd bacadh OFD nuair a bhios e ri fhaighinn.
  • Cùl-taic teth sa phìob.
  • Algorithm seòrsachaidh sònraichte a-staigh (suas ri 2-3 tursan nas luaithe na qsort () agus suas ri 30% nas luaithe na std :: sort()).
  • Chaidh an fhad iuchair as àirde a mheudachadh.
  • Smachd fèin-ghluasadach air leughadh air adhart (ro-innleachd tasgadan faidhle stòr-dàta mar chuimhneachan).
  • Auto-compacification nas ionnsaigheach agus nas luaithe.
  • Ro-innleachd nas fheàrr airson duilleagan craoibhe B+ a thoirt còmhla.
  • Smachd air siostaman faidhle neo-ionadail (NFS, Samba, msaa) gus casg a chuir air milleadh stòr-dàta ma thèid a chleachdadh gu ceàrr.
  • Chaidh an seata de dheuchainnean a leudachadh.

Leanaidh leasachadh air an dreach “ath” de libmdbx mar phròiseact air leth MithrilDB, fhad ‘s a tha an vectar leasachaidh den dreach“ gnàthach ”de MDBX ag amas air an seata feart a reothadh agus a dhèanamh seasmhach. Chaidh an co-dhùnadh seo a dhèanamh airson trì adhbharan:

  • Gu tur neo-fhreagarrach: feumaidh MithrilDB cruth faidhle stòr-dàta eadar-dhealaichte (neo-fhreagarrach) agus API eadar-dhealaichte (neo-fhreagarrach) gus a h-uile feart dealbhaichte a bhuileachadh.
  • Còd stòr ùr: Chaidh còd stòr MithrilDB a dhèanamh neo-eisimeileach bho LMDB, agus thathas an dùil am pròiseact fhèin fhoillseachadh fo chead eadar-dhealaichte (aontaichte le NO IF cead Apache 2.0ach chan eil Bunait OpenLDAP).
  • Bidh an dealachadh a’ seachnadh troimh-chèile, a’ toirt barrachd cinnt, agus a’ dèanamh cinnteach gu bheil slighe neo-eisimeileach air adhart aig pròiseactan.

Tha MithrilDB, mar MDBX, cuideachd stèidhichte air craobh B+ agus bidh e cuideachd a’ nochdadh coileanadh fìor àrd, agus aig an aon àm a’ cur às do ghrunn eas-bhuannachdan bunaiteach de MDBX agus LMDB. Gu sònraichte, thèid cuir às don duilgheadas “leugh fada”, a tha ga nochdadh fhèin mar “sèid” san stòr-dàta leis gu bheil làimhseachadh sgudail air a bhacadh le gnothaichean leughaidh fada. Am measg nam feartan ùra MithrilDB tha:

  • taic airson an stòr-dàta a chuir air grunn mheadhanan ioma-ghnèitheach: HDD, SSD agus cuimhne neo-luaineach.
  • ro-innleachdan as fheàrr airson dàta “luachmhor” agus “luach ìosal”, airson “teth”, “blàth” agus “fuar”.
  • cleachdadh craobh Merkle gus sùil a chumail air ionracas stòr-dàta.
  • cleachdadh roghainneil de WAL agus coileanadh gu math nas àirde ann an suidheachaidhean dian-sgrìobhaidh agus barrantasan iomlanachd dàta.
  • Ceartachadh dàta leisg air diosgan.

Source: linux.org.ru

Cuir beachd ann