{"id":37975,"date":"2019-10-31T22:20:56","date_gmt":"2019-10-31T19:20:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost\/"},"modified":"2019-10-31T22:20:56","modified_gmt":"2019-10-31T19:20:56","slug":"apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost","title":{"rendered":"Upgrade f\u00fcr Faulpelze: Wie PostgreSQL 12 die Leistung steigert","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Upgrade f\u00fcr Faulpelze: Wie PostgreSQL 12 die Leistung steigert\" src=\"\/wp-content\/uploads\/2019\/09\/59721c53412b5932a332bd6c687650e8.JPG\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/\">PostgreSQL 12<\/a><\/noindex>, die neueste Version der \u201ebesten Open-Source relationalen Datenbank der Welt\u201c, wird in ein paar Wochen ver\u00f6ffentlicht (wenn alles nach Plan l\u00e4uft). Dies entspricht dem \u00fcblichen Zeitplan \u2013 einmal im Jahr erscheint eine neue Version mit einer Vielzahl neuer Funktionen, und ganz ehrlich, das ist beeindruckend. Deshalb bin ich ein aktives Mitglied der PostgreSQL-Gemeinschaft geworden.<\/p>\n<p><\/p>\n<p>Meiner Meinung nach enth\u00e4lt PostgreSQL 12, im Gegensatz zu fr\u00fcheren Versionen, nicht ein oder zwei revolution\u00e4re Funktionen (wie zum Beispiel Partitionierung oder parallele Abfragen). Ich habe einmal scherzhaft gesagt, dass das Hauptmerkmal von PostgreSQL 12 eine h\u00f6here Stabilit\u00e4t ist. Und ist das nicht genau das, was man braucht, wenn man kritische Daten seines Unternehmens verwaltet?<\/p>\n<p><\/p>\n<p>Aber PostgreSQL 12 bleibt dabei nicht stehen: Mit neuen Funktionen und Verbesserungen werden Anwendungen besser funktionieren, <em>und Sie m\u00fcssen nur ein Upgrade durchf\u00fchren!<\/em><\/p>\n<p><\/p>\n<p>(Nun, vielleicht auch die Indizes neu aufbauen, aber bei diesem Release ist es nicht so schlimm, wie wir es gewohnt sind.)<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Es w\u00e4re gro\u00dfartig, PostgreSQL zu aktualisieren und sofort erhebliche Verbesserungen ohne viel Aufwand zu genie\u00dfen. Vor einigen Jahren habe ich das Upgrade von PostgreSQL 9.4 auf PostgreSQL 10 analysiert und gesehen, wie sich die Anwendung dank des verbesserten Parallelismus von Abfragen in PostgreSQL 10 beschleunigt hat. Und das Beste: Ich musste fast nichts tun (einfach nur die Konfigurationsparameter anpassen). <code>max_parallel_workers<\/code>).<\/p>\n<p><\/p>\n<p>Zugegeben, es ist praktisch, wenn die Anwendungen sofort nach dem Upgrade besser laufen. Wir geben unser Bestes, um die Nutzer zufriedenzustellen, denn die Zahl der PostgreSQL-Nutzer w\u00e4chst st\u00e4ndig.<\/p>\n<p><\/p>\n<p>Wie wird ein einfaches Upgrade auf PostgreSQL 12 Sie gl\u00fccklich machen? Lassen Sie es mich Ihnen erz\u00e4hlen.<\/p>\n<p><\/p>\n<h3 id=\"sereznye-uluchsheniya-indeksirovaniya\">Wesentliche Verbesserungen bei der Indizierung<\/h3>\n<p><\/p>\n<p>Ohne Indizierung kommt eine Datenbank nicht weit. Wie sonst finden wir Informationen schnell? Das fundamentale Indizierungssystem von PostgreSQL hei\u00dft <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/B-tree\">B-Baum<\/a><\/noindex>. Dieser Indextyp ist f\u00fcr Speichersysteme optimiert.<\/p>\n<p><\/p>\n<p>Wir verwenden einfach den Befehl <code>CREATE INDEX ON some_table (some_column)<\/code>, und PostgreSQL erledigt die m\u00fchsame Arbeit, um die Aktualit\u00e4t des Indexes zu gew\u00e4hrleisten, w\u00e4hrend wir st\u00e4ndig Werte einf\u00fcgen, aktualisieren und l\u00f6schen. Alles l\u00e4uft wie von selbst, fast wie zaubern.<\/p>\n<p><\/p>\n<p>PostgreSQL-Indizes haben jedoch ein Problem \u2013 sie <noindex><a rel=\"nofollow\" href=\"https:\/\/info.crunchydata.com\/blog\/checking-for-postgresql-bloat\">aufbl\u00e4hen<\/a><\/noindex> und nehmen zus\u00e4tzlichen Speicherplatz auf der Festplatte in Anspruch, wodurch die Leistung bei der Datenabfrage und -aktualisierung sinkt. Mit 'Aufbl\u00e4hen' meine ich die ineffiziente Pflege der Indexstruktur. Dies kann mit den nicht mehr ben\u00f6tigten Tupeln zusammenh\u00e4ngen, die entfernt werden <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/sql-vacuum.html\">VACUUM<\/a><\/noindex> (Danke an Peter Geoghegan f\u00fcr die Information (<noindex><a rel=\"nofollow\" href=\"https:\/\/twitter.com\/petervgeoghegan\">Peter Geoghegan<\/a><\/noindex>)). Das Aufbl\u00e4hen des Indexes ist insbesondere bei Arbeitslasten bemerkbar, in denen der Index aktiv ver\u00e4ndert wird.<\/p>\n<p><\/p>\n<p>PostgreSQL 12 verbessert die Handhabung von B-Baum-Indizes erheblich, und Experimente mit TPC-C-Tests haben gezeigt, dass der Platz jetzt im Durchschnitt um 40 % geringer genutzt wird. Jetzt verschwenden wir weniger Zeit nicht nur mit der Pflege der B-Baum-Indizes (also bei Schreibvorg\u00e4ngen), sondern auch bei der Datenabfrage, da die Indizes wesentlich kleiner geworden sind.<\/p>\n<p><\/p>\n<p>Anwendungen, die ihre Tabellen aktiv aktualisieren \u2013 in der Regel handelt es sich dabei um OLTP-Anwendungen (<noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Online_transaction_processing\">Echtzeitanlagenverarbeitung<\/a><\/noindex>) \u2013 nutzen den Speicherplatz auf der Festplatte erheblich effizienter und k\u00f6nnen Anfragen besser verarbeiten. Je mehr Platz auf der Festplatte vorhanden ist, desto mehr Raum hat die Datenbank f\u00fcr Wachstum, ohne dass eine Infrastruktur-Upgrade erforderlich ist.<\/p>\n<p><\/p>\n<p>Einige Upgrade-Strategien erfordern das Neuaufbauen von B-Baum-Indizes, um von diesen Vorteilen zu profitieren (zum Beispiel, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/pgupgrade.html\">pg_upgrade<\/a><\/noindex> stellt die Indizes nicht automatisch neu auf). In fr\u00fcheren Versionen von PostgreSQL f\u00fchrte das Neuaufbauen gro\u00dfer Indizes in Tabellen zu erheblichen Ausfallzeiten, da w\u00e4hrend dieser Zeit keine \u00c4nderungen vorgenommen werden konnten. Doch in PostgreSQL 12 gibt es ein weiteres cooles Feature: Nun k\u00f6nnen Indizes parallel mit dem Befehl <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/12\/sql-reindex.html\">REINDEX CONCURRENTLY<\/a><\/noindex>neu aufgebaut werden, um ganz auf Ausfallzeiten zu verzichten.<\/p>\n<p><\/p>\n<p>PostgreSQL 12 bietet auch andere Verbesserungen der Indexierungs-Infrastruktur. Ein weiteres St\u00fcck Magie ist das <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/wal-intro.html\">einen Journal f\u00fcr vorsorgliche Aufzeichnungen<\/a><\/noindex>, auch bekannt als WAL (Write-Ahead Log). Das Write-Ahead Log zeichnet jede Transaktion in PostgreSQL f\u00fcr den Fall eines Ausfalls und f\u00fcr die Replikation auf. Anwendungen nutzen es zur Archivierung und <noindex><a rel=\"nofollow\" href=\"https:\/\/info.crunchydata.com\/blog\/pgbackrest-point-in-time-recovery-using-crunchy-postgresql-operator\">Wiederherstellung zu einem bestimmten Zeitpunkt<\/a><\/noindex>. Nat\u00fcrlich wird das Write-Ahead Log auf die Festplatte geschrieben, was sich auf die Leistung auswirken kann.<\/p>\n<p><\/p>\n<p>In PostgreSQL 12 wurden die Kosten f\u00fcr WAL-Eintr\u00e4ge, die durch GiST-, GIN- und SP-GiST-Indizes beim Erstellen eines Indexes entstehen, reduziert. Dies bietet mehrere sp\u00fcrbare Vorteile: WAL-Eintr\u00e4ge ben\u00f6tigen weniger Speicherplatz auf der Festplatte, und die Daten k\u00f6nnen schneller wiederhergestellt werden, beispielsweise w\u00e4hrend einer Wiederherstellung nach einem Ausfall oder einer zeitbasierten Wiederherstellung. Wenn Sie solche Indizes in Ihren Anwendungen verwenden (zum Beispiel verwenden geo-r\u00e4umliche Anwendungen auf Basis von PostGIS h\u00e4ufig den GiST-Index), ist dies ein weiteres Feature, das die Leistung erheblich verbessert, ohne dass Sie daf\u00fcr zus\u00e4tzlichen Aufwand betreiben m\u00fcssen.<\/p>\n<p><\/p>\n<h3 id=\"sekcionirovanie--bolshe-luchshe-bystree\">Partitionierung \u2013 mehr, besser, schneller<\/h3>\n<p><\/p>\n<p>In PostgreSQL 10 wurde <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/ddl-partitioning.html\">deklarative Partitionierung<\/a><\/noindex>. In PostgreSQL 11 wurde die Anwendung deutlich vereinfacht. In PostgreSQL 12 kann die Gr\u00f6\u00dfe der Partitionen angepasst werden.<\/p>\n<p><\/p>\n<p>In PostgreSQL 12 wurde die Leistung des Partitionierungssystems deutlich verbessert, insbesondere wenn eine Tabelle Tausende von Partitionen enth\u00e4lt. Wenn eine Abfrage nur einige Partitionen in einer solchen Tabelle betrifft, wird sie deutlich schneller ausgef\u00fchrt. Die Leistung wurde nicht nur f\u00fcr diese Art von Abfragen verbessert.<\/p>\n<p><\/p>\n<p>Die Daten\u00fcbertragung mit <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/sql-copy.html\">COPY<\/a><\/noindex> \u2014 \u00fcbrigens, das ist eine hervorragende Methode <noindex><a rel=\"nofollow\" href=\"https:\/\/info.crunchydata.com\/blog\/fast-csv-and-json-ingestion-in-postgresql-with-copy\">f\u00fcr die Massen\u00fcbertragung von Daten<\/a><\/noindex> und hier ist ein Beispiel <noindex><a rel=\"nofollow\" href=\"https:\/\/info.crunchydata.com\/blog\/fast-csv-and-json-ingestion-in-postgresql-with-copy\">f\u00fcr das JSON-Verfahren<\/a><\/noindex> \u2014 in partitionierten Tabellen in PostgreSQL 12 ist ebenfalls effizienter geworden. Mit COPY war es bereits schnell, aber in PostgreSQL 12 ist es \u00e4u\u00dferst schnell.<\/p>\n<p><\/p>\n<p>Dank dieser Vorteile k\u00f6nnen in PostgreSQL noch gr\u00f6\u00dfere Datens\u00e4tze gespeichert werden, und die Abrufbarkeit wurde einfacher. Und das ganz ohne Aufwand Ihrerseits. Wenn Ihre Anwendung viele Partitionen hat, zum Beispiel zur Speicherung von Zeitreihendaten, wird ein einfacher Upgrade die Leistung erheblich verbessern.<\/p>\n<p><\/p>\n<p>Obwohl diese Verbesserung nicht ganz in die Kategorie \"Upgrade und freuen\" f\u00e4llt, erm\u00f6glicht PostgreSQL 12 das Erstellen von Fremdschl\u00fcsseln, die auf partitionierte Tabellen verweisen, sodass die Arbeit mit Partitionierung einfach Freude bereitet.<\/p>\n<p><\/p>\n<h3 id=\"zaprosy-with-stali-gorazdo-luchshe\">WITH-Abfragen sind deutlich verbessert worden.<\/h3>\n<p><\/p>\n<p>Wenn <noindex><a rel=\"nofollow\" href=\"https:\/\/git.postgresql.org\/gitweb\/?p=postgresql.git;a=commitdiff;h=608b167f9f9c4553c35bb1ec0eab9ddae643989b\">Ein Patch f\u00fcr eingebettete allgemeine Tabellenausdr\u00fccke wurde angewendet.<\/a><\/noindex> (auch bekannt als CTE oder WITH-Abfragen), ich konnte es kaum erwarten, einen Artikel dar\u00fcber zu schreiben, <noindex><a rel=\"nofollow\" href=\"https:\/\/info.crunchydata.com\/blog\/with-queries-present-future-common-table-expressions\">wie sehr sich die Entwickler von Anwendungen mit PostgreSQL dar\u00fcber gefreut haben.<\/a><\/noindex>Dies ist eines dieser Features, die die Anwendung beschleunigen k\u00f6nnen. Vorausgesetzt, Sie verwenden CTE.<\/p>\n<p><\/p>\n<p>Ich merke oft, dass Anf\u00e4nger in SQL gerne CTE verwenden: Wenn man sie auf eine bestimmte Weise schreibt, sp\u00fcrt man direkt, dass man ein imperatives Programm schreibt. Ich pers\u00f6nlich habe es geliebt, diese Abfragen umzuschreiben, um ohne CTE auszukommen und die Leistung zu steigern. Heute ist alles anders. <em>ohne<\/em> CTE und die Leistung steigern. Jetzt ist alles anders.<\/p>\n<p><\/p>\n<p>Mit PostgreSQL 12 lassen sich bestimmte Arten von CTE ohne Nebenwirkungen einbetten.<code>SELECT<\/code>), der nur einmal n\u00e4her am Ende der Abfrage verwendet wird. Wenn ich die Abfragen mit CTE, die ich umgeschrieben habe, nachverfolgen w\u00fcrde, w\u00fcrden die meisten davon in diese Kategorie fallen. Das hilft Entwicklern, verst\u00e4ndlichen Code zu schreiben, der jetzt auch noch schnell arbeitet.<\/p>\n<p><\/p>\n<p>Dar\u00fcber hinaus optimiert PostgreSQL 12 die Ausf\u00fchrung von SQL selbst, sodass Sie nichts tun m\u00fcssen. Und obwohl ich wahrscheinlich jetzt solche Abfragen nicht mehr optimieren muss, ist es gro\u00dfartig, dass PostgreSQL weiterhin an der Optimierung von Abfragen arbeitet.<\/p>\n<p><\/p>\n<h3 id=\"just-in-time-jit--teper-po-umolchaniyu\">Just-in-Time (JIT) \u2013 jetzt standardm\u00e4\u00dfig aktiviert<\/h3>\n<p><\/p>\n<p>In Systemen mit PostgreSQL 12 mit Unterst\u00fctzung f\u00fcr <noindex><a rel=\"nofollow\" href=\"https:\/\/llvm.org\/\">LLVM<\/a><\/noindex> ist die JIT-Kompilierung standardm\u00e4\u00dfig aktiviert. Zun\u00e4chst erhalten Sie Unterst\u00fctzung <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/current\/jit.html\">JIT<\/a><\/noindex> f\u00fcr einige interne Operationen und au\u00dferdem k\u00f6nnen Abfragen mit Ausdr\u00fccken (das einfachste Beispiel ist x + y) in den Auswahllisten (die Sie nach SELECT haben), Aggregaten, Ausdr\u00fccken mit WHERE-Klauseln und anderen JIT zur Leistungssteigerung nutzen.<\/p>\n<p><\/p>\n<p>Da JIT in PostgreSQL 12 standardm\u00e4\u00dfig aktiviert ist, wird die Leistung automatisch verbessert. Ich empfehle jedoch, die Anwendung in PostgreSQL 11 zu testen, wo JIT erstmals eingef\u00fchrt wurde, um die Abfrageleistung zu messen und herauszufinden, ob Anpassungen n\u00f6tig sind.<\/p>\n<p><\/p>\n<h3 id=\"a-kak-zhe-ostalnye-novye-fichi-postgresql-12\">Und was ist mit den anderen neuen Funktionen von PostgreSQL 12?<\/h3>\n<p><\/p>\n<p>PostgreSQL 12 bietet viele neue, interessante Funktionen \u2013 von der M\u00f6glichkeit, JSON-Daten mit den Standard-SQL\/JSON-Pfad-Ausdr\u00fccken zu durchsuchen, bis hin zur mehrstufigen Authentifizierung mit dem Parameter <code>clientcert=verify-full<\/code>, den erzeugten Spalten und vielem mehr. Das w\u00e4re einen eigenen Beitrag wert.<\/p>\n<p><\/p>\n<p>Wie schon bei PostgreSQL 10 wird PostgreSQL 12 die Gesamtleistung sofort nach dem Upgrade steigern. Nat\u00fcrlich k\u00f6nnen Sie es auf Ihre Weise machen \u2013 testen Sie die Anwendung unter \u00e4hnlichen Bedingungen in Ihrem produktiven System, bevor Sie die Verbesserungen aktivieren, so wie ich es mit PostgreSQL 10 gemacht habe. Auch wenn PostgreSQL 12 jetzt stabiler ist, als ich angenommen hatte, scheuen Sie sich nicht, Ihre Anwendungen gr\u00fcndlich zu testen, bevor Sie sie in die Produktion geben.<\/p>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/466727\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>PostgreSQL 12, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u00ab\u043b\u0443\u0447\u0448\u0435\u0439 \u0432 \u043c\u0438\u0440\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\u00bb, \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0443-\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0435\u0434\u0435\u043b\u044c (\u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0439\u0434\u0435\u0442 \u043f\u043e \u043f\u043b\u0430\u043d\u0443). \u042d\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u2014 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0443\u0439\u043c\u043e\u0439 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0437 \u0432 \u0433\u043e\u0434, \u0438, \u0447\u0435\u0441\u0442\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u044d\u0442\u043e \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u0435\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0438 \u0441\u0442\u0430\u043b \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0447\u043b\u0435\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 PostgreSQL. \u041f\u043e-\u043c\u043e\u0435\u043c\u0443, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28500,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37975","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"PostgreSQL 12, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u00ab\u043b\u0443\u0447\u0448\u0435\u0439 \u0432 \u043c\u0438\u0440\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\u00bb, \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0443-\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0435\u0434\u0435\u043b\u044c (\u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0439\u0434\u0435\u0442 \u043f\u043e \u043f\u043b\u0430\u043d\u0443). \u042d\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u2014 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0443\u0439\u043c\u043e\u0439 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0437 \u0432 \u0433\u043e\u0434, \u0438, \u0447\u0435\u0441\u0442\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u044d\u0442\u043e \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u0435\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0438 \u0441\u0442\u0430\u043b \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0447\u043b\u0435\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 PostgreSQL. \u041f\u043e-\u043c\u043e\u0435\u043c\u0443, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442\" \/>\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\/de\/blog\/administrirovanie\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\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\u0410\u043f\u0433\u0440\u0435\u0439\u0434 \u0434\u043b\u044f \u043b\u0435\u043d\u0438\u0432\u044b\u0445: \u043a\u0430\u043a PostgreSQL 12 \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"PostgreSQL 12, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u00ab\u043b\u0443\u0447\u0448\u0435\u0439 \u0432 \u043c\u0438\u0440\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\u00bb, \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0443-\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0435\u0434\u0435\u043b\u044c (\u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0439\u0434\u0435\u0442 \u043f\u043e \u043f\u043b\u0430\u043d\u0443). \u042d\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u2014 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0443\u0439\u043c\u043e\u0439 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0437 \u0432 \u0433\u043e\u0434, \u0438, \u0447\u0435\u0441\u0442\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u044d\u0442\u043e \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u0435\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0438 \u0441\u0442\u0430\u043b \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0447\u043b\u0435\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 PostgreSQL. \u041f\u043e-\u043c\u043e\u0435\u043c\u0443, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost\" \/>\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:20:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:20:56+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\udd47Upgrade f\u00fcr Faule: wie PostgreSQL 12 die Leistung steigert | ProHoster","description":"PostgreSQL 12, die neueste Version von der \"besten relationalen Open-Source-Datenbank der Welt\", wird in ein paar Wochen ver\u00f6ffentlichung (wenn alles nach Plan l\u00e4uft). Dies entspricht dem \u00fcblichen Zeitplan \u2013 einmal im Jahr wird eine neue Version mit einer Vielzahl neuer Funktionen ver\u00f6ffentlicht, und ehrlich gesagt, das ist beeindruckend. Deshalb bin ich aktives Mitglied der PostgreSQL-Community geworden. Meiner Meinung nach unterscheidet sich dies von","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","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\u0410\u043f\u0433\u0440\u0435\u0439\u0434 \u0434\u043b\u044f \u043b\u0435\u043d\u0438\u0432\u044b\u0445: \u043a\u0430\u043a PostgreSQL 12 \u043f\u043e\u0432\u044b\u0448\u0430\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c | ProHoster","og:description":"PostgreSQL 12, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u00ab\u043b\u0443\u0447\u0448\u0435\u0439 \u0432 \u043c\u0438\u0440\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c\u00bb, \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u0440\u0443-\u0442\u0440\u043e\u0439\u043a\u0443 \u043d\u0435\u0434\u0435\u043b\u044c (\u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u043f\u043e\u0439\u0434\u0435\u0442 \u043f\u043e \u043f\u043b\u0430\u043d\u0443). \u042d\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u2014 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0443\u0439\u043c\u043e\u0439 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0437 \u0432 \u0433\u043e\u0434, \u0438, \u0447\u0435\u0441\u0442\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u044d\u0442\u043e \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u0435\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0438 \u0441\u0442\u0430\u043b \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0447\u043b\u0435\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 PostgreSQL. \u041f\u043e-\u043c\u043e\u0435\u043c\u0443, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/apgrejd-dlya-lenivyh-kak-postgresql-12-povyshaet-proizvoditelnost","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:20:56+00:00","article:modified_time":"2019-10-31T19:20:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37975","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 19:59:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:17:22","updated":"2026-01-23 19:59:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=37975"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37975\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/28500"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=37975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=37975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=37975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}