{"id":54919,"date":"2020-01-08T00:00:00","date_gmt":"2020-01-07T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki"},"modified":"2020-02-18T14:02:59","modified_gmt":"2020-02-18T11:02:59","slug":"vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki","title":{"rendered":"Al doilea candidat pentru versiunile libmdbx v1.0 dup\u0103 cinci ani de dezvoltare.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <\/p>\n<p>Biblioteca <a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-yuriev\/libmdbx\">libmdbx<\/a> este un descendant semnificativ \u00eembun\u0103t\u0103\u021bit al LMDB \u2014 o baz\u0103 de date \u00eencorporat\u0103, extrem de performant\u0103 \u0219i compact\u0103, de tip cheie-valoare.<\/noindex><br \/>\nVersiunea actual\u0103 v0.5 este o lansare tehnic\u0103, marc\u00e2nd finalizarea oric\u0103ror modific\u0103ri \u0219i trecerea la faza de testare public\u0103 final\u0103 \u0219i stabilizare, urmat\u0103 de formarea primei versiuni complete a bibliotecii.<\/p>\n<p><noindex><\/p>\n<p><a rel=\"nofollow\" href=\"https:\/\/ru.bmstu.wiki\/LMDB_(Lightning_Memory-Mapped_Database)\">LMDB<\/a> este o baz\u0103 de date \u00eencorporat\u0103 tranzac\u021bional\u0103 cunoscut\u0103 de tip \u201echeie-valoare\u201d bazat\u0103 pe <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/B%E2%81%BA-%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE\">arborele B+<\/a> f\u0103r\u0103 <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A3%D0%BF%D1%80%D0%B5%D0%B6%D0%B4%D0%B0%D1%8E%D1%89%D0%B0%D1%8F_%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F\">jurnalizarea anticipat\u0103<\/a>, care permite unui grup de procese multi-thread s\u0103 lucreze concurent \u0219i extrem de eficient cu o baz\u0103 de date local partajat\u0103 (nu re\u021bea). \u00cen acest sens, MDBX este mai rapid \u0219i mai fiabil dec\u00e2t LMDB, p\u0103str\u00e2nd \u00een acela\u0219i timp toate capabilit\u0103\u021bile cheie ale predecesorului s\u0103u, cum ar fi <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/ACID\">ACID<\/a> \u0219i citirea non-blocant\u0103 cu scalare liniar\u0103 pe nucleele CPU, ad\u0103ug\u00e2nd \u00een acela\u0219i timp c\u00e2teva nout\u0103\u021bi.<\/p>\n<p><\/noindex><\/p>\n<p>Descrierea diferen\u021belor \u0219i \u00eembun\u0103t\u0103\u021birilor libmdbx fa\u021b\u0103 de LMDB merit\u0103 un articol separat (se preconizeaz\u0103 publicarea pe \u201eHabr\u201d \u0219i \u201eMedium\u201d). Aici este oportun s\u0103 men\u021bion\u0103m cele mai importante \u0219i notabile:<\/p>\n<ul>\n<li>O aten\u021bie semnificativ mai mare este acordat\u0103 calit\u0103\u021bii codului, test\u0103rii \u0219i verific\u0103rilor automate.<\/li>\n<li>Compactarea automat\u0103 \u0219i gestionarea automat\u0103 a dimensiunii Bazei de Date.<\/li>\n<li>Format unic de Baza de Date pentru build-uri de 32 \u0219i 64 de bi\u021bi.<\/li>\n<li>Estimarea volumului interog\u0103rilor pe intervale (range query estimation).<\/li>\n<li>Estimarea volumului interog\u0103rilor pe intervale (estimarea interog\u0103rilor pe intervale).<\/li>\n<li>Suport pentru chei de dou\u0103 ori mai mari \u0219i dimensiunea paginii bazei de date aleas\u0103 de utilizator.<\/li>\n<\/ul>\n<p>Lansarea candidatului libmdbx este rezultatul deciziei (vezi mai jos) de a separa proiectele MDBX \u0219i MithrilDB \u00een august 2019. \u00cen acest context, s-a decis s\u0103 se elimine (rational) maximum de datorii tehnice \u0219i s\u0103 se stabilizeze biblioteca. \u00cen fapt, \u00een direc\u021bia men\u021bionat\u0103 s-a realizat de 2-3 ori mai mult dec\u00e2t a fost estimat \u0219i planificat ini\u021bial:<\/p>\n<ul>\n<li>A fost implementat suportul pentru Mac OS \u0219i platformele de \u201eal doilea nivel\u201d: FreeBSD, Solaris, DragonFly BSD, OpenBSD, NetBSD. Suportul pentru AIX \u0219i HP-UX poate fi ad\u0103ugat la nevoie.<\/li>\n<li>S-a efectuat o cur\u0103\u021bare a codului cu ajutorul Undefined Behavior Sanitizer \u0219i Address Sanitizer, elimin\u00e2nd toate avertiz\u0103rile \u00een timpul compil\u0103rii cu -Wpedantic, toate avertiz\u0103rile analizei statice Coverity etc.<\/li>\n<li>Actualizarea <a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-yuriev\/libmdbx\/blob\/master\/mdbx.h\">descrierii API<\/a>.<\/li>\n<li>Amalgamarea codului surs\u0103 pentru a facilita integrarea.<\/li>\n<li>Suport pentru CMake.<\/li>\n<li>Suport pentru tranzac\u021bii imbricate.<\/li>\n<li>Utilizarea bootid pentru a determina existen\u021ba unei reporniri a sistemului de operare (oprirea murdar\u0103 a bazei de date).<\/li>\n<li>Contorizarea total\u0103 a paginilor actualizate\/vechi \u0219i informa\u021bii extinse despre tranzac\u021bii.<\/li>\n<li>Op\u021biunea MDBX_ACCEDE pentru conectarea la o baz\u0103 de date deja deschis\u0103 \u00een modul compatibil.<\/li>\n<li>Utilizare <a rel=\"nofollow\" href=\"https:\/\/www.gnu.org\/software\/libc\/manual\/html_node\/Open-File-Description-Locks.html\">bloc\u0103ri OFD<\/a> \u00een cazul \u00een care sunt disponibile.<\/li>\n<li>Backup la cald \u00een pipe.<\/li>\n<li>Un algoritm specializat optimizat pentru sortare intern\u0103 (de p\u00e2n\u0103 la 2-3 ori mai rapid dec\u00e2t qsort() \u0219i cu p\u00e2n\u0103 la 30% mai rapid dec\u00e2t std::sort()).<\/li>\n<li>Lungimea maxim\u0103 a cheii a fost extins\u0103.<\/li>\n<li>Gestionarea automat\u0103 a citirii anticipate (strategia de caching a fi\u0219ierului bazei de date \u00een memorie).<\/li>\n<li>Compac\u021bie automat\u0103 mai agresiv\u0103 \u0219i rapid\u0103.<\/li>\n<li>O strategie de \u00eembinare a paginilor B+ mai optim\u0103.<\/li>\n<li>Controlul sistemelor de fi\u0219iere non-locale (NFS, Samba etc.) pentru prevenirea deterior\u0103rii bazei de date \u00een cazul unei utiliz\u0103ri incorecte.<\/li>\n<li>Setul de teste a fost extins.<\/li>\n<\/ul>\n<p><noindex><\/p>\n<p>Dezvoltarea versiunii \u201eurm\u0103toare\u201d a libmdbx va continua \u00een cadrul unui proiect separat. <a rel=\"nofollow\" href=\"https:\/\/github.com\/leo-yuriev\/MithrilDB\">MithrilDB<\/a>, \u00een timp ce vectorul de dezvoltare al versiunii \u201ecurente\u201d MDBX este orientat spre \u00eenghe\u021barea setului de func\u021bionalit\u0103\u021bi \u0219i stabilizare. Aceast\u0103 decizie a fost luat\u0103 din trei motive:<\/p>\n<p><\/noindex><\/p>\n<ul>\n<li>Incompatibilitate total\u0103: pentru implementarea tuturor func\u021bionalit\u0103\u021bilor planificate \u00een MithrilDB este necesar un format de fi\u0219ier al bazei de date diferit (incompatibil) \u0219i un API diferit (incompatibil).<\/li>\n<li>Noul cod surs\u0103: codul surs\u0103 al MithrilDB va avea independen\u021b\u0103 de licen\u021b\u0103 fa\u021b\u0103 de LMDB, iar proiectul va fi publicat sub o alt\u0103 licen\u021b\u0103 (aprobat\u0103 <a rel=\"nofollow\" href=\"https:\/\/opensource.org\/\">OSI<\/a> licen\u021ba <a rel=\"nofollow\" href=\"https:\/\/opensource.org\/licenses\/Apache-2.0\">Apache 2.0<\/a>, nu <a rel=\"nofollow\" href=\"https:\/\/www.openldap.org\/software\/release\/license.html\">OpenLDAP Foundation<\/a>).<\/li>\n<li>Divizarea permite evitarea confuziilor poten\u021biale, oferind mai mult\u0103 claritate \u0219i asigur\u00e2nd independen\u021ba \u00een dezvoltarea proiectelor.<\/li>\n<\/ul>\n<p><noindex><\/p>\n<p>MithrilDB, ca \u0219i MDBX, se bazeaz\u0103 \u0219i pe <a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/B%E2%81%BA-%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE\">arborele B+<\/a> \u0219i se va distinge printr-o performan\u021b\u0103 extrem de \u00eenalt\u0103, elimin\u00e2nd \u00een acela\u0219i timp o serie de defecte fundamentale ale MDBX \u0219i LMDB. \u00cen special, va fi rezolvat\u0103 problema \u201electurilor \u00eendelungate\u201d, care se manifest\u0103 ca o \u201eumflare\u201d a bazei de date din cauza faptului c\u0103 procesarea de cur\u0103\u021bare este blocat\u0103 de tranzac\u021biile de citire lungi. Printre noile func\u021bionalit\u0103\u021bi ale MithrilDB se num\u0103r\u0103:<\/p>\n<p><\/noindex><\/p>\n<ul>\n<li>suport pentru g\u0103zduirea bazelor de date pe suporturi heterogene: HDD, SSD \u0219i memorie non-volatile.<\/li>\n<li>strategii optime pentru datele \u201evaloroase\u201d \u0219i \u201enon-valoroase\u201d, pentru datele \u201efierbin\u021bi\u201d, \u201ec\u0103ldu\u021be\u201d \u0219i \u201ereci\u201d.<\/li>\n<li>utilizarea Merkle tree pentru a controla integritatea bazelor de date.<\/li>\n<li>utilizarea op\u021bional\u0103 a WAL \u0219i o performan\u021b\u0103 semnificativ mai mare \u00een scenariile cu scriere intens\u0103 \u0219i garan\u021bii de integritate a datelor.<\/li>\n<li>fixarea lene\u0219\u0103 a datelor pe discuri.<\/li>\n<\/ul>\n<p>Sursa: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"http:\/\/www.linux.org.ru\/news\/opensource\/15450965\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 libmdbx \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c LMDB \u2014 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u0422\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f v0.5 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0440\u0435\u043b\u0438\u0437\u043e\u043c, \u043e\u0442\u043c\u0435\u0447\u0430\u0435\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043e\u043a \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u0444\u0430\u0437\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u043b\u0438\u0437\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. LMDB \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0421\u0423\u0411\u0414 \u043a\u043b\u0430\u0441\u0441\u0430 \u00ab\u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u00bb \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0435\u0440\u0435\u0432\u0430 B+ [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-54919","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 libmdbx \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c LMDB \u2014 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u043e\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u0442\u043e\u0440\u043e\u0439 \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442 \u0432 \u0440\u0435\u043b\u0438\u0437\u044b libmdbx v1.0 \u043f\u043e\u0441\u043b\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 libmdbx \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c LMDB \u2014 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u043e\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-07T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:02:59+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Al doilea candidat pentru lans\u0103rile libmdbx v1.0 dup\u0103 cinci ani de dezvoltare. | ProHoster","description":"Biblioteca libmdbx este un descendent semnificativ reproiectat al LMDB \u2014 o baz\u0103 de date \u00eencorporat\u0103 extrem de performant\u0103 \u0219i compact\u0103.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u0442\u043e\u0440\u043e\u0439 \u043a\u0430\u043d\u0434\u0438\u0434\u0430\u0442 \u0432 \u0440\u0435\u043b\u0438\u0437\u044b libmdbx v1.0 \u043f\u043e\u0441\u043b\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. | ProHoster","og:description":"\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 libmdbx \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c LMDB \u2014 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0430\u0437\u043e\u0439.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/vtoroj-kandidat-v-relizy-libmdbx-v1-0-posle-pyati-let-razrabotki","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-07T21:00:00+00:00","article:modified_time":"2020-02-18T11:02:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54919","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 13:11:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:55:36","updated":"2026-01-24 13:11:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/54919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=54919"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/54919\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=54919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=54919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=54919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}