{"id":38636,"date":"2019-10-31T22:24:58","date_gmt":"2019-10-31T19:24:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/reliz-subd-postgresql-12\/"},"modified":"2019-10-31T22:24:58","modified_gmt":"2019-10-31T19:24:58","slug":"reliz-subd-postgresql-12","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-subd-postgresql-12","title":{"rendered":"Udgivelsen af databasen PostgreSQL 12","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Efter et \u00e5rs udvikling <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/about\/news\/1976\/\">offentliggjort<\/a><\/noindex> en ny stabil gren af database management systemet PostgreSQL 12. Opdateringer til den nye gren <noindex><a rel=\"nofollow\" href=\"http:\/\/www.postgresql.org\/support\/versioning\/\">vil blive udgivet<\/a><\/noindex> i l\u00f8bet af fem \u00e5r frem til november 2024. <\/p>\n<p>Vigtige <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/static\/release-12.html\">nyheder<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> Underst\u00f8ttelse af &#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/ddl-generated-columns.html\">genererede kolonner<\/a><\/noindex>&#171;, hvis v\u00e6rdier beregnes ud fra et udtryk, der d\u00e6kker v\u00e6rdierne fra andre kolonner i den samme tabel (som repr\u00e6sentationer, men for enkelte kolonner). De genererede kolonner kan v\u00e6re af to typer &#8212; gemte og virtuelle. I det f\u00f8rste tilf\u00e6lde beregnes v\u00e6rdien, n\u00e5r data tilf\u00f8jes eller \u00e6ndres, mens den i det andet tilf\u00e6lde beregnes ved hver l\u00e6sning baseret p\u00e5 den aktuelle tilstand af andre kolonner. I \u00f8jeblikket underst\u00f8tter PostgreSQL kun gemte genererede kolonner;\n<li class=\"l\"> Tilf\u00f8jet mulighed for at udf\u00f8re dataforesp\u00f8rgsler fra JSON-dokumenter ved hj\u00e6lp af <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/functions-json.html#FUNCTIONS-SQLJSON-PATH\">Path-udtryk<\/a><\/noindex>, der minder om <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/XPath\">XPath<\/a><\/noindex> og defineret i standarden SQL\/JSON. For at forbedre effektiviteten ved behandling af s\u00e5danne udtryk for dokumenter, der er gemt i JSONB-format, anvendes eksisterende indekseringsmekanismer;\n<li class=\"l\"> JIT-kompilatoren (Just-in-Time) er som standard aktiveret baseret p\u00e5 LLVM, for at fremskynde udf\u00f8relsen af visse udtryk under behandlingen af SQL-foresp\u00f8rgsler. For eksempel er JIT anvendeligt til at fremskynde udf\u00f8relsen af udtryk indenfor &#171;WHERE&#187;, i m\u00e5lmapper (target lists), aggregerede udtryk og nogle interne operationer;\n<li class=\"l\"> Ydelsen ved indeksering er blevet v\u00e6sentligt forbedret. B-tree indekser er optimeret til at arbejde under forhold med hyppige \u00e6ndringer af indekserne &#8212; i TPC-C testene observeres der en generel forbedring i ydelsen og en reduktion af diskpladsforbruget med i gennemsnit 40%. Omkostningerne ved generering af WAL-loggen (Write-Ahead Logging) for GiST, GIN og SP-GiST indeks typer er blevet reduceret. For GiST er der tilf\u00f8jet mulighed for at skabe indeksindpakninger (gennem udtrykket INCLUDE), der inkluderer ekstra kolonner. I operationen <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/sql-createstatistics.html\">CREATE STATISTICS<\/a><\/noindex> er der tilvejebragt support for statistik om de mest typiske v\u00e6rdier (MCV), hvilket muligg\u00f8r generering af mere optimale foresp\u00f8rgselsplaner ved brug af uj\u00e6vnt fordelte kolonner;\n<li class=\"l\"> Implementeringen af partitionering er optimeret til foresp\u00f8rgsler, der d\u00e6kker tabeller med tusinder af sektioner, men som er begr\u00e6nset til at udv\u00e6lge et begr\u00e6nset datas\u00e6t. Ydelsen ved at tilf\u00f8je data til partitionerede tabeller via INSERT og COPY er blevet forbedret, og der er skabt mulighed for at tilf\u00f8je nye sektioner gennem &#171;ALTER TABLE ATTACH PARTITION&#187; uden at blokere udf\u00f8relsen af foresp\u00f8rgsler;\n<li class=\"l\"> Der er tilf\u00f8jet underst\u00f8ttelse af automatisk inline-udrulning af generiske tabeludtryk (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/queries-with.html\">Common Table Expression<\/a><\/noindex>, CTE), som g\u00f8r det muligt at bruge midlertidige navngivne resultats\u00e6t defineret med operatoren WITH. Inline-udrulningen kan forbedre ydeevnen af de fleste foresp\u00f8rgsler, men anvendes i \u00f8jeblikket kun til ikke-rekursive CTE;\n<li class=\"l\"> Tilf\u00f8jet support for <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/collation.html#COLLATION-NONDETERMINISTIC\">ikke-deterministiske<\/a><\/noindex> Locale egenskaber &#171;Collation&#187;, der muligg\u00f8r fasts\u00e6ttelse af sorteringsregler og metoder til sammenligning med hensyn til symbolernes betydning (f.eks. ved sortering af numeriske v\u00e6rdier tages der h\u00f8jde for tilstedev\u00e6relsen af minus og punktum f\u00f8r tallet samt forskellige former for skrivning, og ved sammenligning tages der ikke hensyn til tegns registreringsstatus og tilstedev\u00e6relsen af akcenttegn);\n<li class=\"l\"> Der er tilf\u00f8jet underst\u00f8ttelse af multifaktor-godkendelse for klienter, hvor autentificering kan kombineres i pg_hba.conf ved brug af SSL-certifikat (clientcert=verify-full) med en yderligere autentificeringsmetode, s\u00e5som scram-sha-256;\n<li class=\"l\"> Der er tilf\u00f8jet underst\u00f8ttelse af kryptering af kommunikationskanalen ved autentificering gennem <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/gssapi-auth.html\">GSSAPI<\/a><\/noindex>, b\u00e5de p\u00e5 klientsiden og serversiden;\n<li class=\"l\"> Der er tilf\u00f8jet support til at definere LDAP-servere baseret p\u00e5 &#171;DNS SRV&#187; poster, hvis PostgreSQL er bygget med OpenLDAP;\n<li class=\"l\"> En operation er tilf\u00f8jet &#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/sql-reindex.html#SQL-REINDEX-CONCURRENTLY\">REINDEX CONCURRENTLY<\/a><\/noindex>\u00bb til at ombygge indekser uden at blokere skriveoperationer til indekset;\n<li class=\"l\"> Der er tilf\u00f8jet en kommando <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/app-pgchecksums.html\">pg_checksums<\/a><\/noindex>, som g\u00f8r det muligt at aktivere og deaktivere kontrolsummekontrol af datablade for en eksisterende database (tidligere blev denne operation kun underst\u00f8ttet under initialisering af databasen);\n<li class=\"l\"> Der er tilvejebragt en visning af en progressindikator for udf\u00f8relsen af operationer som CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL og pg_checksums;\n<li class=\"l\"> Der er tilf\u00f8jet kommandoen \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/tableam.html\">CREATE ACCESS METHOD<\/a><\/noindex>\u00bb til at tilslutte h\u00e5ndtere for nye lagringsmetoder til tabeller, der er optimeret til forskellige specifikke opgaver. I \u00f8jeblikket er den eneste indbyggede adgangsmetode til tabeller \u00abheap\u00bb;\n<li class=\"l\"> Konfigurationsfilen recovery.conf er blevet sammenf\u00f8rt med postgresql.conf. Nu bruges recovery.signal og standby.signal som indikatorer for at skifte til en tilstand af genopretning efter fejl. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/runtime-config-wal.html#RUNTIME-CONFIG-WAL-ARCHIVE-RECOVERY\">you should<\/a><\/noindex> Brug recovery.signal og standby.signal filer.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Kilde: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51604\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0421\u0423\u0411\u0414 PostgreSQL 12. \u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0442\u043a\u0438 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u0445\u043e\u0434\u0438\u0442\u044c \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u044f\u0442\u0438 \u043b\u0435\u0442 \u0434\u043e \u043d\u043e\u044f\u0431\u0440\u044f 2024 \u0433\u043e\u0434\u0430. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u043e\u0432\u0448\u0435\u0441\u0442\u0432\u0430: \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 &#171;\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432&#171;, \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f, \u043e\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u0442\u043e\u0439 \u0436\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 (\u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0439, \u043d\u043e \u0434\u043b\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432). \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0434\u0432\u0443\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-38636","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0421\u0423\u0411\u0414 PostgreSQL 12.\" \/>\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\/da\/blog\/news\/reliz-subd-postgresql-12\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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 PostgreSQL 12 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0421\u0423\u0411\u0414 PostgreSQL 12.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/reliz-subd-postgresql-12\" \/>\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=\"2019-10-31T19:24:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:24:58+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\udd47Udgivelse af databasesystemet PostgreSQL 12 | ProHoster","description":"Efter et \u00e5rs udvikling er den nye stabile version af databasesystemet PostgreSQL 12 blevet offentliggjort.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-subd-postgresql-12","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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 PostgreSQL 12 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0433\u043e\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0442\u043a\u0430 \u0421\u0423\u0411\u0414 PostgreSQL 12.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/reliz-subd-postgresql-12","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":"2019-10-31T19:24:58+00:00","article:modified_time":"2019-10-31T19:24:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38636","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":null,"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 22:52:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:06:23","updated":"2026-01-23 22:52:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/38636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=38636"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/38636\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=38636"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=38636"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=38636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}