{"id":121901,"date":"2025-02-13T14:22:07","date_gmt":"2025-02-13T12:22:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-subd-duckdb-1-2-0"},"modified":"2025-02-13T14:22:07","modified_gmt":"2025-02-13T12:22:07","slug":"reliz-subd-duckdb-1-2-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-subd-duckdb-1-2-0","title":{"rendered":"Lansarea SGBD-ului DuckDB 1.2.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A fost publicat\u0103 versiunea SGBD-ului DuckDB 1.2.0, orientat\u0103 pe executarea interog\u0103rilor analitice \u0219i conceptual similar\u0103 cu SQLite. DuckDB combin\u0103 propriet\u0103\u021bile SQLite, cum ar fi compactitatea, conectarea sub form\u0103 de bibliotec\u0103 \u00eencorporat\u0103, stocarea bazelor de date \u00eentr-un singur fi\u0219ier \u0219i interfa\u021ba CLI, cu capabilit\u0103\u021bile \u0219i optimiz\u0103rile pentru executarea interog\u0103rilor analitice, acoperind o parte semnificativ\u0103 din datele stocate, de exemplu, execut\u00e2nd agregarea \u00eentregului con\u021binut al tabelelor sau \u00eembinarea mai multor tabele mari. Codul proiectului este scris \u00een C++ \u0219i este distribuit sub licen\u021ba MIT.     <\/p>\n<p>DuckDB ofer\u0103 un dialect extins al limbajului SQL, incluz\u00e2nd func\u021bionalit\u0103\u021bi suplimentare pentru procesarea interog\u0103rilor foarte complexe \u0219i de lung\u0103 durat\u0103. Este posibil\u0103 utilizarea tipurilor complexe (matrici, structuri, unii), precum \u0219i executarea subinterog\u0103rilor corelate arbitrare \u0219i \u00eenchise. Suportul pentru execu\u021bia simultan\u0103 a mai multor interog\u0103ri este disponibil, precum \u0219i executarea interog\u0103rilor direct din fi\u0219iere \u00een formatele CSV \u0219i Parquet. Suportul pentru import din SGBD PostgreSQL este disponibil.    <\/p>\n<p>Proiectul utilizeaz\u0103 un shell din SQLite, un parser din PostgreSQL, componenta Date Math din MonetDB, propria implementare a func\u021biilor de fereastr\u0103 (bazat\u0103 pe algoritmul Segment Tree Aggregation), un procesor de expresii regulate bazat pe biblioteca RE2, un optimizator de interog\u0103ri propriu, un mecanism MVCC de gestionare a concurrent\u0326ei sarcinilor (Multi-Version Concurrency Control), precum \u0219i un motor vectorizat de execu\u021bie a interog\u0103rilor bazat pe algoritmul Hyper-Pipelining Query Execution, permi\u021b\u00e2nd procesarea \u00eentr-o singur\u0103 opera\u021bie a unor seturi mari de valori.    <\/p>\n<p>\u00cen noua versiune:  <\/p>\n<ul>\n<li class=\"l\"> A fost implementat suportul pentru noi metode de comprimare, care nu sunt activate implicit pentru a men\u021bine compatibilitatea fi\u0219ierelor de baze de date cu versiunile anterioare ale DuckDB. Pentru a utiliza formatul \u00eembun\u0103t\u0103\u021bit al fi\u0219ierelor de baze de date, a fost propus\u0103 op\u021biunea de a asocia baza de date cu un num\u0103r de versiune \u2014 atunci c\u00e2nd se deschide un fi\u0219ier folosind parametrul \u00abSTORAGE_VERSION\u00bb, acum se poate specifica versiunea minim acceptat\u0103 a bazei de date (\u00abATTACH 'file.db' (STORAGE_VERSION 'v1.2.0');\u00bb). Pentru a converti noul format \u00een vechi, se poate folosi comanda SQL COPY, de exemplu: ATTACH 'file1.db'; ATTACH 'converted_file.db' (STORAGE_VERSION 'v1.0.0'); COPY FROM DATABASE file1 TO converted_file;\n<li class=\"l\"> A fost ad\u0103ugat suport pentru comanda SQL \u00abALTER TABLE \u2026 ADD PRIMARY KEY\u00bb pentru a ad\u0103uga o cheie primar\u0103 la o tabel\u0103 existent\u0103.\n<li class=\"l\"> A fost eliminat\u0103 restric\u021bia care nu permitea re-ad\u0103ugarea identificatorilor pentru care exist\u0103 un index de urm\u0103rire a unicita\u021bii, dac\u0103 acei identificatori au fost \u0219ter\u0219i \u00een tranzac\u021bia curent\u0103. De exemplu, urm\u0103torul cod SQL nu va mai genera o eroare: CREATE TABLE students (id INTEGER PRIMARY KEY, name VARCHAR); INSERT INTO students VALUES (1, 'John Doe'); BEGIN; DELETE FROM students WHERE id = 1; INSERT INTO students VALUES (1, 'Jane Doe');\n<li class=\"l\"> A fost ad\u0103ugat suportul pentru \u00eenc\u0103rcarea fi\u0219ierelor CSV \u00een codific\u0103rile Latin-1 \u0219i UTF-16 (anterior era suportat\u0103 doar codificarea UTF-8). FROM read_csv('cities-latin-1.csv', encoding = 'latin-1');\n<li class=\"l\"> A fost ad\u0103ugat suportul pentru utilizarea separatorilor multicelulari \u00een fi\u0219ierele CSV (de p\u00e2n\u0103 la 4 octe\u021bi), permi\u021b\u00e2nd specificarea emoji-urilor ca separatori de coloane. a\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1b hello\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1world FROM read_csv('example.dsv', sep = '\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1');\n<li class=\"l\"> Modul strict de analiz\u0103 a fi\u0219ierelor CSV este activat implicit (\u00abstrict_mode = true\u00bb), care verific\u0103 conformitatea cu formatul specifica\u021biei RFC 4180. \u00cen modul strict, este permis\u0103 utilizarea doar a unui singur caracter pentru separarea r\u00e2ndurilor, ceea ce va genera o eroare atunci c\u00e2nd se \u00eencearc\u0103 analiza fi\u0219ierelor \u00een care utilizarea separatoarelor include nu numai caracterul de sf\u00e2r\u0219it de linie, ci \u0219i caracterul de \u00eentoarcere a cursului (\u00ab\\r\\n\u00bb).\n<li class=\"l\"> Parserul CSV utilizeaz\u0103 un nou algoritm pentru determinarea unei noi linii, care suport\u0103 paralelizarea opera\u021biunilor. Folosirea noului algoritm a accelerat analiza CSV cu aproximativ 15%.\n<li class=\"l\"> A fost eliminat\u0103 restric\u021bia privind dimensiunea r\u00e2ndului \u00een fi\u0219ierele CSV (anterior, r\u00e2ndul nu trebuia s\u0103 dep\u0103\u0219easc\u0103 8 MB).\n<li class=\"l\"> La exportul datelor \u00een format Parquet a fost implementat suportul pentru hash-uri (dic\u021bionare) \u0219i indec\u0219i pe baza filtrului Bloom. A fost implementat\u0103 metoda de compresie DELTA_BINARY_PACKED, care permite reducerea semnificativ\u0103 a dimensiunii fi\u0219ierelor Parquet.\n<li class=\"l\"> \u00cen interfa\u021ba liniei de comand\u0103 a fost ad\u0103ugat modul de siguran\u021b\u0103, activat prin op\u021biunea \u00ab-safe\u00bb sau comanda \u00ab.safe_mode\u00bb. \u00cen acest mod, se permite accesul doar la fi\u0219ierul de baz\u0103 de date specificat ini\u021bial, iar \u00eencercarea de a deschide alte fi\u0219iere va genera o eroare.\n<li class=\"l\"> \u00cen interfa\u021ba de linie de comand\u0103, completarea automat\u0103 a fost \u00eembun\u0103t\u0103\u021bit\u0103. Codul pentru completare automat\u0103 a fost rescris pentru a utiliza PEG (Parsing Expression Grammar).\n<li class=\"l\"> Execut\u00e2nd comenzi \u00een interfa\u021ba liniei de comand\u0103, este implementat\u0103 o reprezentare vizibil\u0103 a numerelor mari; de exemplu, c\u00e2nd se afi\u0219eaz\u0103 num\u0103rul 100000000, se va ad\u0103uga \u00een plus &#171;(100 milioane)&#187;.\n<li class=\"l\"> \u00cen SQL a fost ad\u0103ugat\u0103 suportul pentru sintaxa prin care denumirile abridjate ale tabelor \u0219i expresiilor pot fi indicate \u00eenaintea valorilor la care se refer\u0103 (\u00een locul utiliz\u0103rii sintaxei &#171;expr AS denumire&#187;): SELECT e1: some_long_and_winding_expression, e2: t2.a_column_name FROM t1: long_schema.some_long_table_name, t2: short_s.tbl;\n<li class=\"l\"> \u00cen comanda &#171;SELECT&#187; a fost implementat\u0103 o opera\u021biune &#171;RENAME&#187; pentru redenumirea c\u00e2mpurilor afi\u015fate c\u00e2nd se indic\u0103 expresia &#171;*&#187;: SELECT * RENAME (col1 AS new_col1) FROM integers;\n<li class=\"l\"> \u00cen comanda &#171;SELECT&#187; este permis\u0103 utilizarea opera\u021biunilor &#171;LIKE&#187; \u0219i &#171;SIMILAR TO&#187; \u00een cadrul afi\u0219\u0103rii prin &#171;*&#187; : SELECT * LIKE &#8216;val%&#8217; FROM key_val;\n<li class=\"l\"> Calitatea genera\u021biei numerelor pseudo-aleatoare a fost \u00eembun\u0103t\u0103\u021bit\u0103.\n<li class=\"l\"> Optimizerul de interog\u0103ri a fost modernizat. Performan\u021ba \u00een timpul testului TPC-H SF100 a crescut cu 13%.\n<li class=\"l\"> A fost propus un nou API asem\u0103n\u0103tor cu C pentru dezvoltarea de extensii, care poate fi utilizat, de exemplu, pentru a crea func\u021bii agregate sau de tip tabel.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru sisteme cu biblioteca standard C Musl.          <\/ul>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62712\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 DuckDB 1.2.0, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0435\u0439 SQLite. DuckDB \u0441\u043e\u0447\u0435\u0442\u0430\u0435\u0442 \u0442\u0430\u043a\u0438\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 SQLite, \u043a\u0430\u043a \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e\u0441\u0442\u044c, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432 \u0444\u043e\u0440\u043c\u0435 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0411\u0414 \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u0438 CLI-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u043e\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0445 \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u0438\u043b\u0438 \u0441\u043b\u0438\u044f\u043d\u0438\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 [&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-121901","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=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 DuckDB 1.2.0, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0435\u0439 SQLite.\" \/>\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\/reliz-subd-duckdb-1-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\udd47\u0420\u0435\u043b\u0438\u0437 \u0421\u0423\u0411\u0414 DuckDB 1.2.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 DuckDB 1.2.0, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0435\u0439 SQLite.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-subd-duckdb-1-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=\"2025-02-13T12:22:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-02-13T12:22:07+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\udd47Lansare DBMS DuckDB 1.2.0 | ProHoster","description":"A fost publicat\u0103 versiunea DBMS DuckDB 1.2.0, orientat\u0103 spre execu\u021bia interog\u0103rilor analitice \u0219i care aminte\u0219te conceptual de SQLite.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-subd-duckdb-1-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\udd47\u0420\u0435\u043b\u0438\u0437 \u0421\u0423\u0411\u0414 DuckDB 1.2.0 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 DuckDB 1.2.0, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0449\u0435\u0439 SQLite.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-subd-duckdb-1-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":"2025-02-13T12:22:07+00:00","article:modified_time":"2025-02-13T12:22:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"121901","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":"default","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-23 10:33:44","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 10:33:44","updated":"2026-01-23 10:33:44","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\/121901","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=121901"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/121901\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=121901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=121901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=121901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}