{"id":106417,"date":"2023-01-19T18:48:11","date_gmt":"2023-01-19T16:48:11","guid":{"rendered":"https:\/\/prohoster.info\/?p=106417"},"modified":"2023-01-24T13:52:43","modified_gmt":"2023-01-24T11:52:43","slug":"razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi","title":{"rendered":"Dezvoltatorii SQLite dezvolt\u0103 backend-ul HC-tree cu suport pentru opera\u021biuni de scriere concurente","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dezvoltatorii proiectului SQLite au \u00eenceput testarea unui backend experimental HCtree, care suport\u0103 blocarea la nivel de r\u00e2nduri (row) \u0219i ofer\u0103 un nivel \u00eenalt de paralelizare \u00een procesarea interog\u0103rilor. Noul backend este destinat \u00eembun\u0103t\u0103\u021birii eficien\u021bei utiliz\u0103rii SQLite \u00een sistemele client-server care trebuie s\u0103 gestioneze un num\u0103r mare de interog\u0103ri simultane la baza de date pentru scriere.       <\/p>\n<p>Structurile b-tree, utilizate ini\u021bial \u00een SQLite pentru stocarea datelor, nu sunt concepute pentru un astfel de tip de \u00eenc\u0103rcare, ceea ce limiteaz\u0103 SQLite la capacitatea de a scrie doar \u00eentr-un singur fir de execu\u021bie. Ca parte a unui experiment, dezvoltatorii au \u00eenceput s\u0103 dezvolte o solu\u021bie alternativ\u0103 folosind structura HC-tree, mai potrivit\u0103 pentru paralelizarea opera\u021biunilor de scriere.      <\/p>\n<p>Pentru a organiza execu\u021bia simultan\u0103 a mai multor opera\u021biuni \u00een HCtree, \u00eenregistr\u0103rile folosesc un mecanism de separare a tranzac\u021biilor, care utilizeaz\u0103 bloc\u0103ri la nivel de pagini \u0219i este similar cu MVCC (managementul concurent al versiunilor multiple), dar folose\u0219te verific\u0103ri ale tranzac\u021biilor bazate pe chei \u0219i intervale de chei \u00een loc de seturi de pagini. Opera\u021biunile de citire \u0219i scriere se desf\u0103\u0219oar\u0103 \u00een raport cu un snapshot al bazei de date, modific\u0103rile c\u0103ruia devin vizibile \u00een baza de date principal\u0103 doar dup\u0103 finalizarea tranzac\u021biei.     <\/p>\n<p>Clien\u021bii pot utiliza trei opera\u021biuni pentru deschiderea tranzac\u021biilor:   <\/p>\n<ul>\n<li class=\"l\"> \u00abBEGIN\u00bb \u2014 tranzac\u021biile nu iau \u00een considerare datele de acces ale altor clien\u021bi. \u00cen cazul \u00een care se efectueaz\u0103 opera\u021biuni de scriere \u00een interiorul tranzac\u021biei, tranzac\u021bia poate fi confirmat\u0103 doar dac\u0103 nu au fost efectuate alte opera\u021biuni de scriere \u00een baza de date \u00een timpul desf\u0103\u0219ur\u0103rii acesteia.\n<li class=\"l\"> \u00abBEGIN CONCURRENT\u00bb \u2014 tranzac\u021biile colecteaz\u0103 informa\u021bii despre accesul altor clien\u021bi. \u00cen cazul \u00een care se efectueaz\u0103 opera\u021biuni de scriere \u00een interiorul tranzac\u021biei, tranzac\u021bia poate fi confirmat\u0103 dac\u0103, de la crearea snapshot-ului \u00een baza de date, au fost confirmate alte tranzac\u021bii.\n<li class=\"l\"> \u00abBEGIN EXCLUSIVE\u00bb \u2014 dup\u0103 deschiderea tranzac\u021biei, blocheaz\u0103 opera\u021biunile din alte tranzac\u021bii p\u00e2n\u0103 la finalizarea acesteia.    <\/ul>\n<p>HCtree suport\u0103 replicarea de tip \u00abmaster-slave\u00bb, permi\u021b\u00e2nd transferul tranzac\u021biilor \u00een alt\u0103 baz\u0103 de date \u0219i men\u021binerea bazelor de date secundare \u00eentr-o stare sincronizat\u0103 cu baza de date principal\u0103. HCtree elimin\u0103 de asemenea limita de dimensiune a bazei de date \u2014 \u00een loc de identificatori de pagini de date pe 32 de bi\u021bi, HCtree utilizeaz\u0103 identificatori pe 48 de bi\u021bi, ceea ce cre\u0219te dimensiunea maxim\u0103 a bazei de date de la 16 tebibyte la 1 exbibyte (milion de tebibyte). Se a\u0219teapt\u0103 ca performan\u021ba SQLite cu backend-ul HCtree s\u0103 nu fie inferioar\u0103 celei din backend-ul clasic pe un singur fir. Clien\u021bii SQLite care sprijin\u0103 HCtree vor putea accesa at\u00e2t baza de date bazat\u0103 pe structura HC-tree, c\u00e2t \u0219i vechile baze de date SQLite.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58508\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 SQLite \u043d\u0430\u0447\u0430\u043b\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044d\u043a\u0435\u043d\u0434\u0430 HCtree, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0442\u0440\u043e\u043a (row) \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041d\u043e\u0432\u044b\u0439 \u0431\u044d\u043a\u0435\u043d\u0434 \u043d\u0430\u0446\u0435\u043b\u0435\u043d \u043d\u0430 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f SQLite \u0432 \u043a\u043b\u0438\u0435\u043d\u0442-\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043a \u0411\u0414 \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u044c. \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b b-tree, \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0435 \u0432 SQLite \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u0435 [&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-106417","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=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 SQLite \u043d\u0430\u0447\u0430\u043b\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044d\u043a\u0435\u043d\u0434\u0430 HCtree, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0442\u0440\u043e\u043a (row) \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.\" \/>\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\/razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi\" \/>\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\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 SQLite \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442 \u0431\u044d\u043a\u0435\u043d\u0434 HC-tree \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 SQLite \u043d\u0430\u0447\u0430\u043b\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044d\u043a\u0435\u043d\u0434\u0430 HCtree, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0442\u0440\u043e\u043a (row) \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi\" \/>\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=\"2023-01-19T16:48:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-01-24T11:52:43+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\udd47Dezvoltatorii SQLite dezvolt\u0103 backend-ul HC-tree cu suport pentru opera\u021bii de scriere paralele | ProHoster","description":"Dezvoltatorii proiectului SQLite au \u00eenceput testarea unui backend experimental HCtree, care suport\u0103 blocarea la nivel de r\u00e2nd (row) \u0219i asigur\u0103 un nivel \u00eenalt de paralelism \u00een procesarea cererilor.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi","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\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 SQLite \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442 \u0431\u044d\u043a\u0435\u043d\u0434 HC-tree \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 SQLite \u043d\u0430\u0447\u0430\u043b\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044d\u043a\u0435\u043d\u0434\u0430 HCtree, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0442\u0440\u043e\u043a (row) \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0440\u0430\u0441\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u0438\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/razrabotchiki-sqlite-razvivayut-bekend-hc-tree-s-podderzhkoj-parallelnyh-operaczij-zapisi","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":"2023-01-19T16:48:11+00:00","article:modified_time":"2023-01-24T11:52:43+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/106417","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=106417"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/106417\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=106417"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=106417"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=106417"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}