{"id":100127,"date":"2021-05-09T22:23:13","date_gmt":"2021-05-09T20:23:13","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10"},"modified":"2021-05-09T22:23:13","modified_gmt":"2021-05-09T20:23:13","slug":"vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","title":{"rendered":"Lansarea bazei de date \u00eencorporate de \u00eenalt\u0103 performan\u021b\u0103 libmdbx 0.10","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dup\u0103 trei luni de dezvoltare, a fost lansat\u0103 biblioteca libmdbx 0.10.0 (MDBX) cu implementarea unei baze de date \u00eencorporate, de tip cheie-valoare, de \u00eenalt\u0103 performan\u021b\u0103 \u0219i compact\u0103. Codul libmdbx este distribuit sub licen\u021ba OpenLDAP Public License. libmdbx reprezint\u0103 o revizuire profund\u0103 a SGBD-ului LMDB \u0219i, conform dezvoltatorilor, dep\u0103\u0219e\u0219te str\u0103mo\u0219ul s\u0103u \u00een ceea ce prive\u0219te fiabilitatea, setul de func\u021bionalit\u0103\u021bi \u0219i performan\u021b\u0103. Se afirm\u0103 c\u0103 libmdbx este cu p\u00e2n\u0103 la 20% mai rapid dec\u00e2t LMDB \u00een scenarii CRUD \u0219i cu p\u00e2n\u0103 la 30% mai rapid dac\u0103 la compilarea libmdbx se dezactiveaz\u0103 controlul intern p\u00e2n\u0103 la un nivel comparabil cu cel al LMDB.    <\/p>\n<p>Libmdbx ofer\u0103 ACID, serializare strict\u0103 a modific\u0103rilor \u0219i citire non-blocant\u0103 cu scalare liniar\u0103 pe nuclee CPU. \u00cen libmdbx, se acord\u0103 o mare aten\u021bie calit\u0103\u021bii codului, func\u021bion\u0103rii stabile a API-ului, test\u0103rii \u0219i verific\u0103rilor automate. Este suportat\u0103 auto-compac\u021bia, gestionarea automat\u0103 a dimensiunii bazei de date, un format unic pentru versiunile de 32 \u0219i 64 de bi\u021bi, estimarea volumului de interog\u0103ri pe intervale (range query estimation). Este livrat un utilitar de verificare a integrit\u0103\u021bii structurii bazei de date, cu unele func\u021bionalit\u0103\u021bi de recuperare. Din 2016, proiectul este finan\u021bat de compania Positive Technologies \u0219i, din 2017, este utilizat \u00een produsele acesteia, iar sanc\u021biunile impuse de guvernul Statelor Unite \u00eempotriva Positive Technologies nu au un impact semnificativ.     <\/p>\n<p>Principalele nout\u0103\u021bi, \u00eembun\u0103t\u0103\u021biri \u0219i corecturi, ad\u0103ugate dup\u0103 ultima lansare:  <\/p>\n<ul>\n<li class=\"l\">     Sunt disponibile leg\u0103turi pentru Ruby de la Mahlon E. Smith \u0219i o versiune de \u00eencercare a leg\u0103turilor pentru Python de la Noel Kuntze, leg\u0103turile pentru GoLang de la Alexey Sharov au fost actualizate.\n<li class=\"l\">     Pentru modul &#171;MDBX_WRITEMAP&#187;, c\u00e2nd datele bazei de date sunt modificate direct \u00een RAM, a fost implementat &#171;flush transparent&#187; pe disc pentru paginile modificate ale bazei de date. Acum, dup\u0103 finalizarea fiec\u0103rei opera\u021biuni, aceste pagini sunt imediat complet preg\u0103tite pentru scriere pe disc, iar nucleul sistemului de operare poate s\u0103 descarce singur paginile modificate pe disc, f\u0103r\u0103 a necesita modificarea acestora pentru confirmarea tranzac\u021biei. Ca urmare, \u00een scenarii cu o \u00eenc\u0103rcare mare \u0219i lips\u0103 de RAM, volumul opera\u021biunilor pe disc poate fi redus cu p\u00e2n\u0103 la 2 ori.\n<li class=\"l\">     A fost implementat\u0103 \u00eenl\u0103turarea copiilor shadow ale paginilor modificate, nefolosite de mult timp, cu preferin\u021ba pentru \u00eenl\u0103turarea paginilor cu valori mari\/lungi, care \u00een cea mai mare parte a scenariilor sunt modificate doar o singur\u0103 dat\u0103 pe tranzac\u021bie. Ca urmare, se reduce volumul de transfer cu discul \u0219i se \u00eembun\u0103t\u0103\u021be\u0219te performan\u021ba \u00een scenariile cu tranzac\u021bii foarte mari.\n<li class=\"l\">       A fost implementat un mod &#171;inteligent&#187; de \u00eemp\u0103r\u021bire a paginilor la inserarea cheilor. Acum, la inserarea secven\u021belor ordonate, se asigur\u0103 automat umplerea complet\u0103 a paginilor, iar \u00een celelalte cazuri, o balansare mai optim\u0103 a arborilor. Ca urmare, \u00een medie, paginile bazei de date sunt umplute mai optim, iar B-arborele devine mai bine echilibrat, ceea ce are un impact pozitiv asupra performan\u021bei.\n<li class=\"l\">     A fost ad\u0103ugat\u0103 statistica opera\u021biunilor cu paginile, ceea ce permite estimarea precis\u0103 a costului opera\u021biunilor de modificare a bazei de date.\n<li class=\"l\">     Au fost eliminate mai mult de zece neajunsuri \u0219i erori, inclusiv: probleme rezolvate cu compilarea utiliz\u00e2nd MinGW, utilizarea `std::filesystem::path` \u00een iOS &lt;= 13.0, compilarea viz\u00e2nd versiuni mai vechi de Windows etc.\n<li class=\"l\">     \u00cen total, au fost efectuate peste 200 de modific\u0103ri \u00een 66 de fi\u0219iere, au fost ad\u0103ugate aproximativ 6500 de linii, iar aproximativ 4500 au fost \u0219terse.  <\/ul>\n<p>Merit\u0103 men\u021bionat \u00een mod special alegerea proiectului Turbo-Geth (fork-ul Turbo al Go-Ethereum) libmdbx ca nou backend de stocare, precum \u0219i mul\u021bumirile echipei proiectului (\u00een special lui Alexey Sharov, Artem Vorotnikov \u0219i Alexey Akhunov) pentru ajutorul acordat \u00een testarea \u00een scenarii extreme. \u00cen special, a fost descoperit\u0103 \u0219i rezolvat\u0103 o defec\u021biune \u00een gestionarea citirii anticipate\/cache-ului, care ducea la degradarea performan\u021bei \u00een scenarii greu de reprodus cu baze de date mari.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=55114\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.10.0 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \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\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u041a\u043e\u0434 libmdbx \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 OpenLDAP Public License. libmdbx \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0421\u0423\u0411\u0414 LMDB \u0438 \u043f\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0440\u0435\u0432\u043e\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u0430\u0440\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u043f\u043e \u043d\u0430\u0434\u0435\u0436\u043d\u043e\u0441\u0442\u0438, \u043d\u0430\u0431\u043e\u0440\u0443 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u0417\u0430\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f, \u0447\u0442\u043e libmdbx \u0434\u043e 20% \u0431\u044b\u0441\u0442\u0440\u0435\u0435 LMDB \u0432 CRUD [&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-100127","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=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.10.0 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \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\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\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\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10\" \/>\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\u044b\u043f\u0443\u0441\u043a \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0421\u0423\u0411\u0414 libmdbx 0.10 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.10.0 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \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\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10\" \/>\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=\"2021-05-09T20:23:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-05-09T20:23:13+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\udd47Lansarea sistemului de gestionare a bazelor de date \u00eencorporate libmdbx 0.10 | ProHoster","description":"Dup\u0103 trei luni de dezvoltare, a fost lansat\u0103 biblioteca libmdbx 0.10.0 (MDBX) cu implementarea unei baze de date \u00eencorporate, de \u00eenalt\u0103 performan\u021b\u0103 \u0219i compact\u0103 de tip cheie-valoare.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","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\u044b\u043f\u0443\u0441\u043a \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0421\u0423\u0411\u0414 libmdbx 0.10 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0435\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 libmdbx 0.10.0 (MDBX) \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \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\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","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":"2021-05-09T20:23:13+00:00","article:modified_time":"2021-05-09T20:23:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"100127","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-05-10 15:37:29","updated":"2022-10-01 03:46:28","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\/100127","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=100127"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/100127\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=100127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=100127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=100127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}