{"id":143994,"date":"2025-09-22T17:11:59","date_gmt":"2025-09-22T15:11:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd"},"modified":"2025-09-22T17:11:59","modified_gmt":"2025-09-22T15:11:59","slug":"reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd","title":{"rendered":"Utgivningen av databasystemet DuckDB 1.4.0 med st\u00f6d f\u00f6r databasen kryptering.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Utg\u00e5van av databashanteraren DuckDB 1.4.0 har publicerats, som \u00e4r inriktad p\u00e5 att utf\u00f6ra analytiska fr\u00e5gor och konceptuellt liknar SQLite. DuckDB kombinerar s\u00e5dana egenskaper som SQLite, inklusive kompakt storlek, inb\u00e4ddad bibliotekskoppling, lagring av databaser i en fil och CLI-gr\u00e4nssnitt, med kapacitet och optimeringar f\u00f6r att hantera analytiska fr\u00e5gor som omfattar en betydande del av de lagrade datan, till exempel genom att utf\u00f6ra aggregering av allt inneh\u00e5ll i tabeller eller kombinera flera stora tabeller. Projektets kod \u00e4r skriven i C++ och distribueras under MIT-licens.     <\/p>\n<p>DuckDB erbjuder en ut\u00f6kat SQL-dialekt som inkluderar ytterligare funktioner f\u00f6r att hantera mycket komplexa och tidskr\u00e4vande fr\u00e5gor. Det st\u00f6der komplexa datatyper (arrayer, strukturer, unioner) samt m\u00f6jlighet till att utf\u00f6ra arbitr\u00e4ra och inb\u00e4ddade korrelerade underfr\u00e5gor. Samtidig k\u00f6rning av flera fr\u00e5gor st\u00f6ds, liksom direkt k\u00f6rning av fr\u00e5gor fr\u00e5n filer i formaten CSV och Parquet. St\u00f6d f\u00f6r import fr\u00e5n PostgreSQL-databaser finns ocks\u00e5.    <\/p>\n<p>Projektet anv\u00e4nder en skal\u00e4r fr\u00e5n SQLite, en parser fr\u00e5n PostgreSQL, Date Math-komponenten fr\u00e5n MonetDB, egen implementering av f\u00f6nsterfunktioner (baserat p\u00e5 Segment Tree Aggregation-algoritmen), en regulj\u00e4ra uttrycksbehandlare baserad p\u00e5 RE2-biblioteket, egen fr\u00e5geoptimerare, MVCC-mekanism f\u00f6r hantering av samtidiga uppgiftsk\u00f6rningar (Multi-Version Concurrency Control), samt en vektoriserad fr\u00e5geutf\u00f6rande motor baserad p\u00e5 Hyper-Pipelining Query Execution-algoritmen, som till\u00e5ter att stora v\u00e4rdesets bearbetas i en enda operation.    <\/p>\n<p>I den nya versionen:  <\/p>\n<ul>\n<li class=\"l\"> St\u00f6d f\u00f6r att lagra databaser i krypterad form har lagts till. AES-256-algoritmen i GCM-l\u00e4ge anv\u00e4nds f\u00f6r kryptering. Inte bara huvudfilen med data krypteras, utan \u00e4ven WAL-loggar och tempor\u00e4ra filer. Nycklar f\u00f6r databaskryptering anges med kommandot ATTACH via parametern ENCRYPTION_KEY. ATTACH &#8216;encrypted.db&#8217; AS enc_db (ENCRYPTION_KEY &#8216;quack_quack&#8217;);\n<li class=\"l\"> St\u00f6d f\u00f6r kommandot &#171;MERGE INTO&#187; har lagts till, vilket kan anv\u00e4ndas som ett alternativ till uttrycket &#171;INSERT &#8230; ON CONFLICT&#187;, utan att kr\u00e4va prim\u00e4rnyckel och fungerar med godtyckliga sammanslagningsvillkor. Kommandot &#171;MERGE INTO&#187; g\u00f6r det m\u00f6jligt att skapa villkorliga SQL-uttryck som kombinerar INSERT, UPDATE och DELETE-operationer i ett enda uttryck. Till exempel kan MERGE anv\u00e4ndas f\u00f6r att sl\u00e5 samman tv\u00e5 tabeller genom att inf\u00f6ra saknade poster och uppdatera befintliga. WITH deletes(item_id, delete_threshold) AS (VALUES (10, 3000))   MERGE INTO Stock USING deletes USING (item_id) WHEN MATCHED AND balance &lt; delete_threshold THEN DELETE RETURNING merge_action, *;        \n\n<li class=\"l\"> St\u00f6d f\u00f6r skrivoperationer med tabeller i Apache Iceberg-format har lagts till. Tidigare st\u00f6ddes endast l\u00e4sning, vilket g\u00f6r det m\u00f6jligt att \u00f6verf\u00f6ra data mellan Iceberg och DuckDB.\n<li class=\"l\"> I kommandoradsklienten har en progressindikator f\u00f6r operationens genomf\u00f6rande lagts till, med en prognos f\u00f6r den \u00e5terst\u00e5ende tiden tills slutf\u00f6rande.\n<li class=\"l\"> En f\u00f6nsterfunktion &#171;FILL&#187; har lagts till, som kan anv\u00e4ndas f\u00f6r att interpolera saknade v\u00e4rden i ordnade f\u00f6nster. FROM (VALUES (1, 1), (2, NULL), (3, 42)) t(c1, c2) SELECT fill(c2) OVER (ORDER BY c1) f; 1 21 42\n<li class=\"l\"> Till\u00e4gget Teradata Connector har implementerats f\u00f6r att ansluta till Teradata-databaser. Till\u00e4gget m\u00f6jligg\u00f6r manipulation av tabeller, utf\u00f6rande av fr\u00e5gor och k\u00f6rning av SQL-kommandon direkt i Teradata, med hj\u00e4lp av DuckDB.\n<li class=\"l\"> St\u00f6d f\u00f6r att bekr\u00e4fta tillst\u00e5ndet (checkpoint) f\u00f6r tabeller som lagras i minnet har lagts till, vilket m\u00f6jliggjorde support f\u00f6r komprimering. Dessutom g\u00f6rs en rensning av borttagna rader och frig\u00f6r plats efter borttagningsoperationer vid tillst\u00e5ndsbevakning. ATTACH &#8216;:memory:&#8217; AS memory_compressed (COMPRESS);\n<li class=\"l\"> Flera prestandaoptimeringar har f\u00f6reslagits: Implementeringen av sortering har \u00f6verg\u00e5tt till att anv\u00e4nda algoritmen f\u00f6r flervegsammanslagning (k-way merge sort), vilket minskar dataflyttningen. Generella tabelluttryck (Common Table Expression, CTE) materialiseras nu som standard.          <\/ul>\n<p>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63922\">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 \u0432\u044b\u043f\u0443\u0441\u043a \u0421\u0423\u0411\u0414 DuckDB 1.4.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-143994","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.4.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\/sv\/blog\/news\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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.4.0 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0411\u0414 | 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.4.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\/sv\/blog\/news\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd\" \/>\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-09-22T15:11:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-09-22T15:11:59+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\udd47Release av databashanteraren DuckDB 1.4.0 med st\u00f6d f\u00f6r databas kryptering | ProHoster","description":"Utg\u00e5van av databashanteraren DuckDB 1.4.0 har publicerats, som \u00e4r inriktad p\u00e5 att utf\u00f6ra analytiska fr\u00e5ga och konceptuellt liknar SQLite.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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.4.0 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0411\u0414 | 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.4.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\/sv\/blog\/news\/reliz-subd-duckdb-1-4-0-s-podderzhkoj-shifrovaniya-bd","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-09-22T15:11:59+00:00","article:modified_time":"2025-09-22T15:11:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"143994","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 14:55:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 14:55:19","updated":"2026-01-23 14:55:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/143994","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=143994"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/143994\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=143994"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=143994"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=143994"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}