{"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\/fr\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","title":{"rendered":"Publication de la base de donn\u00e9es embarqu\u00e9e haute performance libmdbx 0.10","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Apr\u00e8s trois mois de d\u00e9veloppement, la biblioth\u00e8que libmdbx 0.10.0 (MDBX) a \u00e9t\u00e9 publi\u00e9e, avec une impl\u00e9mentation d'une base de donn\u00e9es embarqu\u00e9e cl\u00e9-valeur compacte et haute performance. Le code de libmdbx est distribu\u00e9 sous la licence OpenLDAP Public License. libmdbx est une r\u00e9\u00e9criture approfondie de la base de donn\u00e9es LMDB et, selon les d\u00e9veloppeurs, surpasse son pr\u00e9d\u00e9cesseur en termes de fiabilit\u00e9, de fonctionnalit\u00e9s et de performance. Il est affirm\u00e9 que libmdbx est jusqu'\u00e0 20 % plus rapide que LMDB dans les sc\u00e9narios CRUD et jusqu'\u00e0 30 % plus rapide si le contr\u00f4le interne est d\u00e9sactiv\u00e9 lors de la compilation de libmdbx \u00e0 un niveau comparable \u00e0 celui de LMDB.    <\/p>\n<p>Libmdbx propose ACID, une s\u00e9rialisation stricte des modifications et une lecture non bloquante avec une mise \u00e0 l'\u00e9chelle lin\u00e9aire sur les c\u0153urs CPU. Dans libmdbx, une grande attention est accord\u00e9e \u00e0 la qualit\u00e9 du code, \u00e0 la stabilit\u00e9 de l'API, aux tests et aux v\u00e9rifications automatiques. La compactification automatique, la gestion automatique de la taille de la base de donn\u00e9es et un format unique pour les versions 32 bits et 64 bits sont pris en charge, ainsi que l'estimation du volume d'\u00e9chantillons par intervalles (range query estimation). Un utilitaire de v\u00e9rification de l'int\u00e9grit\u00e9 de la structure de la base de donn\u00e9es est fourni, avec certaines capacit\u00e9s de r\u00e9cup\u00e9ration. Depuis 2016, le projet est financ\u00e9 par Positive Technologies et est utilis\u00e9 dans ses produits depuis 2017, et les sanctions impos\u00e9es par le gouvernement am\u00e9ricain contre Positive Technologies n'ont pas d'impact significatif.     <\/p>\n<p>Principales innovations, am\u00e9liorations et corrections ajout\u00e9es depuis la derni\u00e8re publication :  <\/p>\n<ul>\n<li class=\"l\">     Des liaisons pour Ruby par Mahlon E. Smith et une version d'essai des liaisons pour Python par Noel Kuntze sont disponibles, ainsi que des liaisons mises \u00e0 jour pour GoLang par Alexey Sharov.\n<li class=\"l\">     Pour le mode \u00ab MDBX_WRITEMAP \u00bb, lorsque les donn\u00e9es de la base de donn\u00e9es sont modifi\u00e9es directement en RAM, un \u00ab d\u00e9bordement transparent \u00bb des pages de la base de donn\u00e9es modifi\u00e9es sur le disque a \u00e9t\u00e9 mis en \u0153uvre. Ainsi, apr\u00e8s la fin de chaque op\u00e9ration, ces pages sont imm\u00e9diatement pr\u00eates \u00e0 \u00eatre \u00e9crites sur le disque, et le noyau du syst\u00e8me d'exploitation peut lui-m\u00eame d\u00e9charger les pages modifi\u00e9es, sans que la validation de la transaction n\u00e9cessite leur modification. En cons\u00e9quence, dans des sc\u00e9narios charg\u00e9s avec un manque de RAM, le volume des op\u00e9rations sur disque peut \u00eatre r\u00e9duit jusqu'\u00e0 deux fois.\n<li class=\"l\">     L'\u00e9limination des instantan\u00e9s d'anciennes pages modifi\u00e9es a \u00e9t\u00e9 mise en \u0153uvre, avec une pr\u00e9f\u00e9rence pour l'\u00e9limination des pages ayant de grandes longueurs de valeurs, qui dans la grande majorit\u00e9 des cas, ne changent qu'une seule fois par transaction. Cela r\u00e9duit le volume des \u00e9changes avec le disque et am\u00e9liore les performances dans des sc\u00e9narios avec de tr\u00e8s grandes transactions.\n<li class=\"l\">       Un mode \u00ab intelligent \u00bb de s\u00e9paration des pages lors de l'insertion de cl\u00e9s a \u00e9t\u00e9 mis en place. D\u00e9sormais, lors de l'insertion de s\u00e9quences ordonn\u00e9es, le remplissage complet des pages est automatiquement garanti, et dans les autres cas, un meilleur \u00e9quilibrage de l'arbre est r\u00e9alis\u00e9. En cons\u00e9quence, en moyenne, les pages de la base de donn\u00e9es sont remplies de mani\u00e8re plus optimale, et l'arbre B est plus \u00e9quilibr\u00e9, ce qui am\u00e9liore les performances.\n<li class=\"l\">     Des statistiques sur les op\u00e9rations des pages ont \u00e9t\u00e9 ajout\u00e9es, ce qui permet d'\u00e9valuer pr\u00e9cis\u00e9ment le co\u00fbt des op\u00e9rations de modification sur la base de donn\u00e9es.\n<li class=\"l\">     Plus d'une dizaine de d\u00e9fauts et erreurs ont \u00e9t\u00e9 corrig\u00e9s, y compris : des probl\u00e8mes avec la compilation via MinGW, l'utilisation de `std::filesystem::path` sur iOS &lt;= 13.0, compilation ciblant d&#039;anciennes versions de Windows, etc.\n<li class=\"l\">     Au total, plus de 200 modifications ont \u00e9t\u00e9 apport\u00e9es dans 66 fichiers, ajoutant environ 6500 lignes et en supprimant environ 4500.  <\/ul>\n<p>Il convient de souligner que le projet Turbo-Geth (fork turbo de Go-Ethereum) a choisi libmdbx comme nouvelle solution de stockage, et de remercier l'\u00e9quipe du projet (en particulier Alexei Sharov, Artem Vorotnikov et Alexei Akhunov) pour leur aide pr\u00e9cieuse dans les tests dans des sc\u00e9narios d'utilisation extr\u00eames. En particulier, cela a permis de d\u00e9couvrir et de corriger un d\u00e9faut dans la gestion de la lecture anticip\u00e9e\/caching, qui entra\u00eenait une d\u00e9gradation des performances dans des sc\u00e9narios difficiles \u00e0 reproduire avec de grandes bases de donn\u00e9es.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=55114\">opennet.ru<\/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 - 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\/fr\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\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\/fr\/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\udd47 Sortie de SGBD int\u00e9gr\u00e9 haute performance libmdbx 0.10 | ProHoster","description":"Apr\u00e8s trois mois de d\u00e9veloppement, la biblioth\u00e8que libmdbx 0.10.0 (MDBX) a \u00e9t\u00e9 publi\u00e9e avec la mise en \u0153uvre d'une base de donn\u00e9es int\u00e9gr\u00e9e, compacte et hautes performances de type cl\u00e9-valeur.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-vysokoproizvoditelnoj-vstraivaemoj-subd-libmdbx-0-10","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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\/fr\/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\/fr\/wp-json\/wp\/v2\/posts\/100127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=100127"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/100127\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=100127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=100127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=100127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}