{"id":170618,"date":"2026-05-11T18:24:52","date_gmt":"2026-05-11T16:24:53","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/openzl-0-2-0"},"modified":"2026-05-11T18:24:52","modified_gmt":"2026-05-11T16:24:53","slug":"openzl-0-2-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/openzl-0-2-0","title":{"rendered":"OpenZL 0.2.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23395\/original.png\">           <img decoding=\"async\" alt=\"OpenZL 0.2.0\" src=\"\/wp-content\/uploads\/2026\/05\/5a95eacd080df4ddd86f1cc2d2af0762.jpg\" style=\"display:block;margin: 0 auto;\" \/>         <\/a>                <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23396\/original.png\">           <img decoding=\"async\" alt=\"OpenZL 0.2.0\" src=\"\/wp-content\/uploads\/2026\/05\/e654044b14efa48eb39324fa8a242458.jpg\" style=\"display:block;margin: 0 auto;\" \/>         <\/a>                                              <noindex>          <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23395\/original.png\" class=\"active\"><\/a><\/noindex>                                                      <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/images\/23396\/original.png\"><\/a>                                     <noindex><\/p>\n<p>Dup\u0103 \u0219apte luni de dezvoltare, a fost lansat\u0103 versiunea 0.2.0 a framework-ului <a rel=\"nofollow\" href=\"https:\/\/openzl.org\">OpenZL<\/a>, destinat cre\u0103rii de compresoare de date f\u0103r\u0103 pierderi.<\/p>\n<p><\/noindex> <\/p>\n<p>Framework-ul este compus dintr-o bibliotec\u0103 de baz\u0103 \u0219i instrumente pentru crearea de compresoare specializate, descrise \u00een limbajul <a rel=\"nofollow\" href=\"https:\/\/openzl.org\/sddl\">SDDL<\/a>.<br \/> Pentru a crea un bun compresor specializat, sunt dou\u0103 etape:<\/p>\n<ol>\n<li>Analiza datelor pentru extragerea structurii.<\/li>\n<li>Utilizarea unor compresoare de backend eficiente, care utilizeaz\u0103 structura ob\u021binut\u0103 pentru a atinge o compresie bun\u0103.<\/li>\n<\/ol>\n<p>OpenZL ofer\u0103 instrumente pentru ambele etape.<\/p>\n<p>Proiectul este scris \u00een limbajele C \u0219i C++ \u0219i este distribuit sub licen\u021ba BSD.<\/p>\n<h5>Principalele modific\u0103ri<\/h5>\n<p><strong>SDDL2<\/strong><\/p>\n<p>SDDL a fost complet reproiectat de la zero pentru a atinge obiectivele de proiectare stabilite. Dac\u0103 versiunea demo ini\u021bial\u0103 a fost un mediu de execu\u021bie simplificat, SDDL2 este un compilator complet: parserul trimite datele c\u0103tre analiza semantic\u0103, care la r\u00e2ndul s\u0103u transmite un arbore de sintax\u0103 abstract tipizat (AST) c\u0103tre optimizator, iar optimizatorul controleaz\u0103 generatorul de cod, care genereaz\u0103 bytecode pentru ma\u0219ina virtual\u0103.<\/p>\n<p>Rezultatul cheie este analiza sintactic\u0103 instantanee. C\u00e2nd pozi\u021bia \u00eenregistr\u0103rii poate fi determinat\u0103 complet doar din parametri \u0219i constante, motorul acceseaz\u0103 direct orice c\u00e2mp, f\u0103r\u0103 a scana byte-urile anterioare, asigur\u00e2nd acces f\u0103r\u0103 copiere \u0219i o l\u0103\u021bime de band\u0103 de c\u00e2teva GB\/s.<\/p>\n<p>\u00centregul limbaj a evoluat \u00eempreun\u0103 cu setul de instrumente. Acum, acesta suport\u0103 blocuri when pentru pozi\u021bii condi\u021bionale, \u00eenregistr\u0103ri parametrizate \u0219i anonime, acces la membri ai c\u00e2mpurilor \u00eenregistr\u0103rilor, precum \u0219i operatori pe bi\u021bi \u0219i logici.<\/p>\n<p>\u00cen ceea ce prive\u0219te confortul dezvoltatorului, etapa de analiz\u0103 semantic\u0103 identific\u0103 acum referin\u021bele indeterminate, necoresponden\u021bele de tip \u0219i erorile de aritate \u00een timpul compil\u0103rii \u2013 cu men\u021bionarea loca\u021biei \u00een codul surs\u0103 \u2013 \u0219i nu \u00een timpul execu\u021biei, iar o extensie pentru VS Code pentru eviden\u021bierea sintaxei fi\u0219ierelor .sddl a fost lansat\u0103.<\/p>\n<p><strong>Noul codec \u00eencorporat LZ<\/strong><\/p>\n<p>\u00cen OpenZL este acum inclus un codec LZ propriu, prezentat sub forma ZL_GRAPH_LZ, precum \u0219i un profil de compresie secven\u021bial\u0103 \u00een utilitarul zli. Lucr\u0103rile la codec continu\u0103: se extinde setul de func\u021bii \u0219i se \u00eembun\u0103t\u0103\u021be\u0219te performan\u021ba la procesarea datelor de intrare mici. \u00cen acest moment, acesta suport\u0103 func\u021bionalit\u0103\u021bi echivalente cu zstd nivelul 1, cu dimensiunea feronatului de compresie de 64 KB.<\/p>\n<p> <noindex><\/p>\n<p>OpenZL ofer\u0103 posibilitatea de a reproiecta fiecare etap\u0103 a conveiorului LZ pentru a cre\u0219te viteza. Arhitectura sa grafic\u0103 permite, de asemenea, combinarea etapelor de codificare a entropiei, \u00een loc de a utiliza un singur conveior, care se potrive\u0219te la fel de bine pentru toate scenariile de utilizare. Apoi, mai multe etape pot fi combinate \u00eentr-o singur\u0103 opera\u021biune pentru a spori viteza de procesare. Acest lucru permite OpenZL s\u0103 ofere o vitez\u0103 de compresie cu 10% mai mare \u0219i o vitez\u0103 de decompresie cu 70% mai mare \u00een compara\u021bie cu Zstandard nivelul 1 pe corpul Silesia \u00een <a rel=\"nofollow\" href=\"https:\/\/gist.github.com\/terrelln\/412cda99d1e54126477219cacf38c971\">teste noastre<\/a>:<\/p>\n<p><\/noindex> <\/p>\n<table>\n<thead>\n<tr>\n<th><strong>Compresor<\/strong><\/th>\n<th><strong>Raport de compresie<\/strong><\/th>\n<th><strong>Vitez\u0103 de compresie<\/strong><\/th>\n<th><strong>Vitez\u0103 de decompresie<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>OpenZL LZ nivel 1<\/td>\n<td>2.74<\/td>\n<td>466 MB\/s<\/td>\n<td>2288 MB\/s<\/td>\n<\/tr>\n<tr>\n<td>Zstd nivel 1 cu dimensiunea feronatului 64K<\/td>\n<td>2.74<\/td>\n<td>419 MB\/s<\/td>\n<td>1254 MB\/s<\/td>\n<\/tr>\n<tr>\n<td>Zstd nivel 1<\/td>\n<td>2.89<\/td>\n<td>424 MB\/s<\/td>\n<td>1345 MB\/s<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Suport pentru date de intrare foarte mari<\/strong><\/p>\n<p>zli suport\u0103 acum procesarea unor volume uriase de date de intrare (de c\u00e2\u021biva gigabytes). \u00cenainte de comprimare, aceste date sunt acum \u00eemp\u0103r\u021bite automat \u00een fragmente de dimensiuni gestionabile (de obicei, aproximativ 16MB), ceea ce permite limitarea consumului de memorie, \u00eembun\u0103t\u0103\u021birea localit\u0103\u021bii datelor \u0219i deschide posibilit\u0103\u021bi pentru procesarea paralel\u0103. SDDL2 a implementat o func\u021bie similar\u0103 de fragmentare automat\u0103 \u00een timpul lucrului cu schema. \u00cen acest proces, au fost create sau actualizate noi segmentatoare \u2013 pentru CSV, Parquet \u0219i date numerice standard \u2013 \u0219i toate segmentatoarele sunt acum serializabile \u0219i configurabile, astfel \u00eenc\u00e2t aranjamentul ales poate fi salvat \u00een compresor \u0219i reutilizat ulterior.<\/p>\n<p>Aceasta se aplic\u0103 transparent \u00een timpul compresiei. Re\u021bine\u021bi c\u0103 conveiorul de \u00eenv\u0103\u021bare este diferit \u0219i r\u0103m\u00e2ne neatins, prin urmare nu este destinat primirii de date de intrare uria\u0219e ca material de \u00eenv\u0103\u021bare.<\/p>\n<p><strong>\u00cembun\u0103t\u0103\u021biri \u00een vizualizatorul grafic online (<a rel=\"nofollow\" href=\"https:\/\/openzl.org\/tools\/trace\">testeaz\u0103<\/a>)<\/strong><br \/> Acum vizualizatorul recunoa\u0219te tras\u0103rile de compresie \u0219i decompresie de la \u00eenceput p\u00e2n\u0103 la sf\u00e2r\u0219it.<\/p>\n<p>Panoul de previzualizare a fluxului permite vizualizarea octe\u021bilor care trec efectiv prin fiecare arce, iar datorit\u0103 elementelor de control de t\u0103iere, fluxurile mari r\u0103m\u00e2n u\u0219or de gestionat.<\/p>\n<p>Panoul de set\u0103ri combin\u0103 toate op\u021biunile de vizualizare \u00eentr-un singur loc, iar setul complet de taste rapide - navigare direc\u021bional\u0103, parcurgere ordonat\u0103, desf\u0103\u0219urare \u0219i pliere, selectarea nodurilor - permite o utilizare convenabil\u0103 a instrumentului f\u0103r\u0103 mouse.<\/p>\n<p>Acum, tras\u0103rile au versiuni, comprimarea cu segmentare pe blocuri este afi\u0219at\u0103 corect, iar zli poate \u00een sf\u00e2r\u0219it s\u0103 genereze propriile tras\u0103ri cu ajutorul noilor steaguri --trace \u0219i --trace-streams-dir.<\/p>\n<p><strong>Diverse<\/strong><\/p>\n<ul>\n<li>Catalogul a fost \u00eembog\u0103\u021bit cu mai multe codecuri. Codecurile Partition \u0219i bitpack folosesc acum un decodor unic. Codec-ul Floating-point bitsplit a primit codificatori \u0219i decodificatori specializa\u021bi pentru formatele fp16, fp32, fp64 \u0219i bf16 cu acceler\u0103ri specializate. Au fost ad\u0103ugate func\u021bii de \u00eemp\u0103r\u021bire \u00een func\u021bie de interval (split_byrange), multiplexer de lungime, codec sentinel, grafic lz4 \u0219i mici func\u021bii auxiliare, cum ar fi tryParseInt \u0219i splitByParam.<\/li>\n<li>API-ul a fost ordonat.<\/li>\n<li>Testarea de fuzzing a fost \u00eembun\u0103t\u0103\u021bit\u0103.<\/li>\n<li>Procesul de construire \u0219i pachetare a fost \u00eembun\u0103t\u0103\u021bit pentru un num\u0103r mai mare de platforme.<\/li>\n<\/ul>\n<p>Sursa: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/opensource\/18286976\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0441\u0435\u043c\u0438 \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 0.2.0 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 OpenZL, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0435\u0437 \u043f\u043e\u0442\u0435\u0440\u044c. \u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 SDDL. \u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u0430 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u044d\u0442\u0430\u043f\u0430: \u0410\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0445\u043e\u0440\u043e\u0448\u0438\u0445 \u0431\u044d\u043a\u0435\u043d\u0434-\u043a\u043e\u043c\u043f\u0440\u0435\u0441\u0441\u043e\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0441\u0436\u0430\u0442\u0438\u044f. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":170619,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-170618","post","type-post","status-publish","format-standard","has-post-thumbnail","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=\".\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/openzl-0-2-0\" \/>\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\udd47OpenZL 0.2.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\".\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/openzl-0-2-0\" \/>\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=\"2026-05-11T16:24:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-05-11T16:24:53+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\udd47OpenZL 0.2.0 | ProHoster","description":".","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/openzl-0-2-0","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\udd47OpenZL 0.2.0 | ProHoster","og:description":".","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/openzl-0-2-0","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":"2026-05-11T16:24:53+00:00","article:modified_time":"2026-05-11T16:24:53+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\/170618","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\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=170618"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/170618\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/170619"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=170618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=170618"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=170618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}