{"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\/lv\/blog\/news\/reliz-subd-duckdb-1-2-0","title":{"rendered":"DuckDB 1.2.0 izlai\u0161ana","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Public\u0113ts DuckDB 1.2.0 izlai\u0161ana, kas orient\u0113ta uz anal\u012btisko vaic\u0101jumu izpildi un konceptu\u0101li l\u012bdz\u012bga SQLite. DuckDB apvieno t\u0101das SQLite \u012bpa\u0161\u012bbas k\u0101 kompakts izm\u0113rs, ieb\u016bv\u0113jam\u0101s bibliot\u0113kas form\u0101 pieejam\u012bba, datu b\u0101zes glab\u0101\u0161ana vien\u0101 fail\u0101 un CLI interfeiss ar iesp\u0113j\u0101m un optimiz\u0101cij\u0101m anal\u012btisko vaic\u0101jumu izpildei, kas aptver iev\u0113rojamu da\u013cu saglab\u0101to datu, piem\u0113ram, veicot visu tabulu satura agreg\u0101ciju vai vair\u0101ku lielu tabulu apvieno\u0161anu. Projekta kods rakst\u012bts C++ valod\u0101 un izplat\u012bts saska\u0146\u0101 ar MIT licenci.     <\/p>\n<p>DuckDB nodro\u0161ina papla\u0161in\u0101to SQL valodas dialektu, iek\u013caujot papildu iesp\u0113jas \u013coti sare\u017e\u0123\u012btu un ilgu vaic\u0101jumu apstr\u0101dei. Ir iesp\u0113jama sare\u017e\u0123\u012btu tipu izmanto\u0161ana (mas\u012bvi, strukt\u016bras, apvienojumi), k\u0101 ar\u012b pa\u0161vald\u012bto un iegulto korelat\u012bvo apak\u0161vaic\u0101jumu izpilde. Atbalst\u012bts vienlaikus vair\u0101ku vaic\u0101jumu izpildes process, vaic\u0101jumu izpilde tie\u0161i no CSV un Parquet failiem. Pieejama atbalsts importam no PostgreSQL datu b\u0101z\u0113m.    <\/p>\n<p>Projekt\u0101 tiek izmantota SQLite apvalks, PostgreSQL parseris, MonetDB komponentes Date Math, savs logu funkciju realiz\u0113jums (balstoties uz Segment Tree Aggregation algoritmu), regul\u0101ro izteiksmju apstr\u0101d\u0101t\u0101js, kas balst\u012bts uz RE2 bibliot\u0113ku, savs vaic\u0101jumu optimiz\u0113t\u0101js, MVCC sist\u0113mas vienlaic\u012bgas izpildes kontrole (Multi-Version Concurrency Control), k\u0101 ar\u012b vektoriz\u0113ts vaic\u0101jumu izpildes dzin\u0113js, kas balst\u012bts uz Hyper-Pipelining Query Execution algoritmu, \u013caujot vien\u0101 oper\u0101cij\u0101 apstr\u0101d\u0101t lielas v\u0113rt\u012bbu kopas.    <\/p>\n<p>Jaunaj\u0101 versij\u0101:  <\/p>\n<ul>\n<li class=\"l\"> Realiz\u0113ta atbalsta pievieno\u0161ana jauniem kompresijas metod\u0113m, kas p\u0113c noklus\u0113juma nav iek\u013cautas, lai saglab\u0101tu sader\u012bbu ar agr\u0101k\u0101m DuckDB versij\u0101m. Lai izmantotu uzlaboto datu b\u0101zu failu form\u0101tu, ir pied\u0101v\u0101ta iesp\u0113ja piesaist\u012bt datu b\u0101zi versijas numuram \u2014 atverot failu, izmantojot parametru \u00abSTORAGE_VERSION\u00bb, tagad var nor\u0101d\u012bt minim\u0101li atbalst\u012bt\u0101 datu b\u0101zes versija (\u00abATTACH \u2018file.db\u2019 (STORAGE_VERSION \u2018v1.2.0\u2019);\u00bb). Lai konvert\u0113tu jauno form\u0101tu vecaj\u0101, var izmantot SQL komandu COPY, piem\u0113ram: ATTACH \u2018file1.db\u2019; ATTACH \u2018converted_file.db\u2019 (STORAGE_VERSION \u2018v1.0.0\u2019); COPY FROM DATABASE file1 TO converted_file;\n<li class=\"l\"> Pievienots atbalsts SQL komandai \u00abALTER TABLE \u2026 ADD PRIMARY KEY\u00bb eso\u0161\u0101s tabulas prim\u0101r\u0101 atsl\u0113ga pievieno\u0161anai.\n<li class=\"l\"> No\u0146emts ierobe\u017eojums, kas ne\u013c\u0101va atk\u0101rtoti pievienot identifikatorus, kuru unik\u0101l\u0101s izseko\u0161anas indeksu d\u0113\u013c bija nepiecie\u0161ams, ja dati par \u0161iem identifikatoriem tika dz\u0113sti pa\u0161reiz\u0113j\u0101 dar\u012bjum\u0101. Piem\u0113ram, zem\u0101k redzamais SQL kods vairs nerada k\u013c\u016bdu: CREATE TABLE students (id INTEGER PRIMARY KEY, name VARCHAR); INSERT INTO students VALUES (1, \u2018John Doe\u2019); BEGIN; DELETE FROM students WHERE id = 1; INSERT INTO students VALUES (1, \u2018Jane Doe\u2019);\n<li class=\"l\"> Pievienots atbalsts CSV failu iel\u0101dei kod\u0113jumos Latin-1 un UTF-16 (iepriek\u0161 bija atbalst\u012bts tikai UTF-8 kod\u0113jums). FROM read_csv(\u2018cities-latin-1.csv\u2019, encoding = \u2018latin-1\u2019);\n<li class=\"l\"> Pievienots atbalsts vair\u0101ku baitova separatoru izmanto\u0161anai CSV failos (l\u012bdz 4 baitiem), \u013caujot nor\u0101d\u012bt emoji k\u0101 kolonnas separatoru. a\ud83d\udc4bb hello\ud83d\udc4bworld FROM read_csv(\u2018example.dsv\u2019, sep = \u2018\ud83d\udc4b\u2019);\n<li class=\"l\"> Noklus\u0113juma re\u017e\u012bm\u0101 iesl\u0113gts stingrs CSV failu pars\u0113\u0161anas re\u017e\u012bms (\u00abstrict_mode = true\u00bb), kas p\u0101rbauda atbilst\u012bbu RFC 4180 specifik\u0101cijai. Stingr\u0101 re\u017e\u012bm\u0101 ir at\u013cauts lietot tikai vienu simbolu, lai nodal\u012btu rindas, kas rad\u012bs k\u013c\u016bdu, ja failos, kuru rindas ir nodal\u012btas, tiek izmantots ne tikai p\u0101rejas simbols, bet ar\u012b atgrie\u0161anas karte (\u00ab\r\n\u00bb).\n<li class=\"l\"> CSV pars\u0113t\u0101j\u0101 tiek izmantots jauns jaunu rindi\u0146u noteik\u0161anas algoritms, kas atbalsta oper\u0101ciju paral\u0113liz\u0101ciju. Izmantojot \u0161o jauno algoritmu, CSV pars\u0113\u0161ana ir pa\u0101trin\u0101jusies aptuveni par 15%.\n<li class=\"l\"> No\u0146emts ierobe\u017eojums CSV failu rindi\u0146as izm\u0113ram (iepriek\u0161 rindi\u0146ai nedr\u012bkst\u0113ja p\u0101rsniegt 8 MB).\n<li class=\"l\"> Eksport\u0113jot datus Parquet form\u0101t\u0101, ir ieviests atbalsts ha\u0161iem (v\u0101rdn\u012bc\u0101m) un Bloom filtra balst\u012btiem indeksiem. Ir ieviests DELTA_BINARY_PACKED saspie\u0161anas metode, kas iev\u0113rojami samazina Parquet failu izm\u0113ru.\n<li class=\"l\"> Komandrindas interfeis\u0101 pievienots dro\u0161ais re\u017e\u012bms, ko aktiviz\u0113 ar opciju \u00ab-safe\u00bb vai komandu \u00ab.safe_mode\u00bb. \u0160aj\u0101 re\u017e\u012bm\u0101 ir at\u013cauts piek\u013c\u016bt tikai s\u0101kotn\u0113ji nor\u0101d\u012btajam datu b\u0101zes failam, bet m\u0113\u0123in\u0101jums atv\u0113rt citus failus izrais\u012bs k\u013c\u016bdu.\n<li class=\"l\"> Komandu l\u012bnijas interfeis\u0101 uzlabota autom\u0101tisk\u0101 pabeig\u0161ana. Autom\u0101tisk\u0101s pabeig\u0161anas kods ir p\u0101rv\u0113rsts uz PEG (Parsing Expression Grammar) izmanto\u0161anu.\n<li class=\"l\"> Izpildot komandas komandrindas saskarn\u0113, ir ieviesta interakt\u012bva liela skait\u013ca att\u0113lo\u0161ana, piem\u0113ram, att\u0113lojot skaitli 100000000, tam tiks pievienots '(100 miljoni)'.\n<li class=\"l\"> SQL ir pievienota sintakses atbalsts, kur\u0101 sa\u012bsin\u0101to tabulu un izteiksmju nosaukumus var nor\u0101d\u012bt l\u012bdz v\u0113rt\u012bb\u0101m, uz kur\u0101m tie attiecas (nevis izmantojot sintaksi 'izteiksme AS nosaukums'): 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\"> Komand\u0101 'SELECT' ir ieviesta 'RENAME' oper\u0101cija lauku p\u0101rd\u0113v\u0113\u0161anai, izsaucot izteiksmi '*': SELECT * RENAME (col1 AS new_col1) FROM integers;\n<li class=\"l\"> Komand\u0101 'SELECT' ir at\u013cautas oper\u0101cijas 'LIKE' un 'SIMILAR TO', izmantojot '*': SELECT * LIKE 'val%' FROM key_val;\n<li class=\"l\"> Paaugstin\u0101ta pseidoizlases skait\u013cu \u0123ener\u0113\u0161anas kvalit\u0101te.\n<li class=\"l\"> Ir moderniz\u0113ts vaic\u0101jumu optimizators. Veiktsp\u0113ja TPC-H SF100 test\u0101 ir palielin\u0101jusies par 13%.\n<li class=\"l\"> Pied\u0101v\u0101ts jauns C-l\u012bdz\u012bgs API papla\u0161in\u0101jumu izstr\u0101dei, ko var izmantot, piem\u0113ram, jaunu agreg\u0101tu vai tabulu funkciju izveidei.\n<li class=\"l\"> Ir pievienots atbalsts sist\u0113m\u0101m ar standarta C bibliot\u0113ku Musl.          <\/ul>\n<p>Avots: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62712\">opennet.lv<\/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.4 - 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\/lv\/blog\/news\/reliz-subd-duckdb-1-2-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\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\/lv\/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\udd47 DuckDB 1.2.0 DB izlaidums | ProHoster","description":"Ir public\u0113ts DuckDB 1.2.0 DB izlaidums, kas ir v\u0113rsts uz anal\u012btisko vaic\u0101jumu izpildi un konceptu\u0101li atg\u0101dina SQLite.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/news\/reliz-subd-duckdb-1-2-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","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\/lv\/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\/lv\/wp-json\/wp\/v2\/posts\/121901","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=121901"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/121901\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=121901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=121901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=121901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}