{"id":108630,"date":"2023-05-19T12:48:16","date_gmt":"2023-05-19T10:48:16","guid":{"rendered":"https:\/\/prohoster.info\/?p=108630"},"modified":"2023-05-19T12:52:41","modified_gmt":"2023-05-19T10:52:41","slug":"vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/news\/vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite","title":{"rendered":"SQLite 3.42 ja DuckDB 0.8.0 CG\/SQL v\u00e4ljalase, koos salvestatud protseduuride rakendamisega SQLite jaoks.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>SQLite 3.42 v\u00e4ljaanne on avaldatud, kergekaaluline andmebaasi haldustarkvara, mis on esitatud plugina. SQLite kood on avalik domeen, st seda v\u00f5ib kasutada piiranguteta ja tasuta igasugustel eesm\u00e4rkidel. SQLite arendajate rahastamist teostab spetsiaalselt loodud konsortsium, kuhu kuuluvad sellised ettev\u00f5tted nagu Adobe, Oracle, Mozilla, Bentley ja Bloomberg.     <\/p>\n<p>Peamised muudatused:  <\/p>\n<ul>\n<li class=\"l\"> FTS5 t\u00e4isteksti indeksite jaoks on rakendatud k\u00e4sk secure-delete, mis teostab k\u00f5igi kustutatud andmete t\u00e4ieliku puhastamise.\n<li class=\"l\"> JSON-vormingu andmete t\u00f6\u00f6tlemise funktsioonides on rakendatud JSON5 laiendite tugi.\n<li class=\"l\"> Parandatud p\u00e4ringute planeerija. Vaikimisi on lubatud optimeerimine \"count-of-view\". Alaotsingutesse on v\u00e4listatud kasutamata veergude t\u00f6\u00f6tlemine. Parandatud on push-down optimeerimise rakendust.\n<li class=\"l\"> K\u00e4skude liidesesse on lisatud valik \"--unsafe-testing\", mis v\u00f5imaldab kasutada teatud ohtlikke k\u00e4ske nagu \".testctrl\", mis on m\u00f5eldud testimise ajal kasutamiseks. Turvare\u017eiimis (\"--safe\") on lubatud kasutada k\u00e4ske \".log on\" ja \".log off\". Lisatud on eraldaja \"--\" argumentide jaoks, mille j\u00e4rel keelatakse valikute t\u00f6\u00f6tlemine. Lisatud on parameetrid \":inf\" ja \":nan\", mis on seotud l\u00f5pmatuse ja NaN v\u00e4\u00e4rtustega.\n<li class=\"l\"> Rakendusepoolsetel SQL-funktsioonide nimedes on lubatud ristumine v\u00f5tmes\u00f5nadega CROSS, FULL, INNER, LEFT, NATURAL, OUTER ja RIGHT.\n<li class=\"l\"> PRAGMA integrity_check funktsionaalsust on laiendatud. Lisatud on NaN v\u00e4\u00e4rtuse m\u00e4\u00e4ramise kontroll tulpades, mille tingimus on NOT NULL. Vigade teate informatiivsust on parandatud.\n<li class=\"l\"> Sessionis on lubatud tabelitest ilma ROWID muutuste haaramine.\n<li class=\"l\"> Aja ja kuup\u00e4evadega t\u00f6\u00f6tamise funktsioonidesse on lisatud modifikaator \"subsec\", et kasutada sekundi murde.\n<li class=\"l\"> JSON-massiivide ja objektide rekursside s\u00fcgavus on vaikimisi v\u00e4hendatud 2000-lt 1000-le.      <\/ul>\n<p>Lisaks sellele on v\u00e4lja antud DuckDB 0.8.0, mis arendab SQLite varianti, t\u00e4iustatud v\u00f5imalustega ja optimeerimisega anal\u00fc\u00fcsip\u00e4ringute t\u00e4itmiseks, katab olulise osa salvestatud andmetest, n\u00e4iteks kogu tabelite sisu agregatsiooni v\u00f5i mitme suure tabeli \u00fchendamise. Pakutakse laiendatud SQL keele dialekti, mis sisaldab t\u00e4iendavaid v\u00f5imalusi v\u00e4ga keerukate ja pikalt kestvate p\u00e4ringute t\u00f6\u00f6tlemiseks, samuti keerukate t\u00fc\u00fcpide (massivid, struktuurid, liidud) toetamine, mitme p\u00e4ringu samaaegne t\u00e4itmine ja p\u00e4ringute otsefailidest, nagu CSV, JSON ja Parquet, t\u00e4itmine. On olemas v\u00f5imalus importida PostgreSQL andmebaasist.     <\/p>\n<p>Lisaks SQLite-koodile kasutab projekt PostgreSQL-st eraldi teeki, Date Math komponenti MonetDB-st, enda aknafunktsioonide rakendust (Segment Tree Aggregation algoritmi p\u00f5hjal), regulaaravaldiste t\u00f6\u00f6tlejat RE2 teegi p\u00f5hjal, enda p\u00e4ringute optimeerijat, MVCC-mehhanismi (Multi-Version Concurrency Control), samuti vektoriseeritud p\u00e4ringute t\u00e4itmise mootori, mis p\u00f5hineb Hyper-Pipelining Query Execution algoritmil, mis v\u00f5imaldab \u00fches operatsioonis t\u00f6\u00f6tlema suuri v\u00e4\u00e4rtuste komplekte. Projekti kood on jaotatud MIT litsentsi alusel.       <\/p>\n<p>Uues DuckDB versioonis:    <\/p>\n<ul>\n<li class=\"l\"> Lisatud uued v\u00e4ljendid \"PIVOT\" ja \"UNPIVOT\" ridade transformeerimiseks veergudeks ja vastupidi.\n<li class=\"l\"> Andmete importimise ja eksportimise ajal on paranenud paralleelsus. Vaikimisi on rakendatud mitme l\u00f5imega lugemine CSV-failidest ja mitme l\u00f5imega kirjutamine Parquet, CSV ja JSON vormingutes.\n<li class=\"l\"> Lisatud operaator \"**\" kataloogide rekurssiivseks l\u00e4bimiseks failide teede m\u00e4\u00e4ramisel (n\u00e4iteks FROM 'data\/glob\/crawl\/stackoverflow\/**\/*.csv';).\n<li class=\"l\"> On lisatud toetamine \u00fchendamise (JOIN) operatsioonide jaoks ajasarja kujul andmete puhul (v\u00e4\u00e4rtuste l\u00f5igud m\u00e4\u00e4ratud ajavahemike kaudu), kus rekordite \u00fchendamise kriteeriumiks on mitte t\u00e4pne, vaid ligikaudne ajav\u00e4li (n\u00e4iteks saab \u00fchendada kirjeid, mille aeg erineb mitte rohkem kui 1 minut).\n<li class=\"l\"> On ellu viidud andmebaasi metaandmete viivitatud laadimine, mis on aidanud andmebaasi k\u00e4ivitamist k\u00fcmneid kordi kiirendada.\n<li class=\"l\"> Lisa toetust kasutaja m\u00e4\u00e4ratud funktsioonide \u00fchendamiseks Pythonis.\n<li class=\"l\"> Lisa ADBC (Arrow Database Connectivity) API toe andmeedastuseks Apache Arrowi kaudu.\n<li class=\"l\"> Rakendatud on sidumine Swift keele koodiga integreerimiseks.\n<li class=\"l\"> Muudetud on jagamise operaatori (\"\/\") k\u00e4itumist, mis n\u00fc\u00fcd vaikimisi sooritab arvutusi ujukomaarvudega asemele t\u00e4isarvude operatsioone. T\u00e4isarvude jagamiseks on pakutud uus operaator \"\/\/\". Varasema k\u00e4itumise saab taastada seadega \"SET integer_division=true;\".\n<li class=\"l\"> Nullide arvesse v\u00f5tmise meetod sorteerimisel on muudetud \"NULLS FIRST\"-lt \"NULLS LAST\"-le, st NULL v\u00e4\u00e4rtused kuvatakse n\u00fc\u00fcd loendi l\u00f5pus, mitte alguses. Varasema k\u00e4itumise saab taastada seadega \"SET default_null_order='nulls_first';\".  <\/ul>\n<p>Lisaks on v\u00f5imalik m\u00e4rkida Facebooki arendatavat projekti CG\/SQL, mis pakub koodigeneraatorit salvestatud protseduuride kasutamiseks SQLite'is. CG\/SQL v\u00f5imaldab vormistada salvestatud protseduure spetsiaalses T-SQL (Transact-SQL) dialektis, mis v\u00f5imaldab kutsuda esile standardse C-raamatukogu funktsioone ja suhelda andmetega SQLite'is. Loodud salvestatud protseduurid kompileeritakse C keeles koodi, mis kasutab SQLite C API-d, et t\u00e4ita m\u00e4\u00e4ratud toiminguid ja t\u00f6\u00f6delda keerulisi p\u00e4ringuid. Kompileeritud salvestatud protseduurid saavad \u00fchenduda C, Java ja Objective-C keeles programmeeritud rakendustega. Projekti kood on kirjutatud C keeles ja levitatakse MIT litsentsi alusel.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=59157\">opennet.ru<\/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 \u0440\u0435\u043b\u0438\u0437 SQLite 3.42, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a\u043e\u0434 SQLite \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (public domain), \u0442.\u0435. \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0438 \u0431\u0435\u0437\u0432\u043e\u0437\u043c\u0435\u0437\u0434\u043d\u043e \u0432 \u043b\u044e\u0431\u044b\u0445 \u0446\u0435\u043b\u044f\u0445. \u0424\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 SQLite \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0441\u043e\u0440\u0446\u0438\u0443\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0445\u043e\u0434\u044f\u0442 \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u043a\u0430\u043a Adobe, Oracle, Mozilla, Bentley \u0438 Bloomberg. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f: \u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 FTS5 [&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-108630","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.42, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a\u043e\u0434 SQLite \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (public domain), \u0442.\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\/et\/blog\/news\/vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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 \u0421\u0423\u0411\u0414 SQLite 3.42 \u0438 DuckDB 0.8.0. CG\/SQL \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0445\u0440\u0430\u043d\u0438\u043c\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440 \u0434\u043b\u044f SQLite | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.42, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a\u043e\u0434 SQLite \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (public domain), \u0442.\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/news\/vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite\" \/>\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-05-19T10:48:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-05-19T10:52:41+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\udd47SQLite 3.42 ja DuckDB 0.8.0 andmebaasis\u00fcsteemi v\u00e4ljaanne | ProHoster","description":"Ilmus SQLite 3.42, kergekaaluline andmebaasihalduss\u00fcsteem, mis on vormistatud kui laaditav teek. SQLite kood levitatakse kui avalik domeen (public domain), st.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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 \u0421\u0423\u0411\u0414 SQLite 3.42 \u0438 DuckDB 0.8.0. CG\/SQL \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0445\u0440\u0430\u043d\u0438\u043c\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440 \u0434\u043b\u044f SQLite | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0440\u0435\u043b\u0438\u0437 SQLite 3.42, \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u043e\u0439 \u0421\u0423\u0411\u0414, \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a\u043e\u0434 SQLite \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (public domain), \u0442.\u0435.","og:url":"https:\/\/prohoster.info\/et\/blog\/news\/vypusk-subd-sqlite-3-42-i-duckdb-0-8-0-cg-sql-s-realizacziej-hranimyh-proczedur-dlya-sqlite","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-05-19T10:48:16+00:00","article:modified_time":"2023-05-19T10:52:41+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\/et\/wp-json\/wp\/v2\/posts\/108630","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=108630"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/108630\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=108630"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=108630"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=108630"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}