PostgreSQL 8.3

Authors

  • Pavel Stěhule Department of Mapping and Cartography, Faculty of Civil Engineering Czech Technical University in Prague

DOI:

https://doi.org/10.14311/gi.2.12

Keywords:

Database systems, Open Source, PostgreSQL 8.3

Abstract

Práce na Open Source databázích pokračují nezadržitelným tempem. Vývojáři se musí vyrovnat s rostoucími požadavky uživatelů na objem dat ukládaných do databází, na náročnější požadavky na odezvu atd. Zatím nedostižnou metou je implementace celého standardu ANSI SQL 200x. Všechny databáze z velké trojky (Firebird, MySQL a PostgreSQL) používají multigenerační architekturu, cenově orientované hledání optimálního prováděcího plánu, write ahead log atd. MySQL se profiluje jako SQL databáze schopná používat specializované databázové backendy schopné maximální efektivity pro určité konkrétní prostředí. PostgreSQL je široce použitelná databáze, těžící z vynikající stability, s perfektní rozšiřitelností a komfortním prostředím. Konečně Firebird je vynikající embeded databáze, která se osvědčuje v tisících instalacích na desktopech.
Podle původního plánu mělo dojít k uvolnění verze 8.3 koncem léta - mělo jít o verzi obsahující patche dokončené pro 8.2, ale v té době nedostatečně otestované. Nakonec se ukázalo, že ty nejdůležitější patche je třeba dopracovat. Jednalo se o tak atraktivní vlastnosti, že se rozhodlo s vydáním nové verze počkat. 8.3 obsahuje integrovaný fulltext, podporu opožděného potvrzování (asynchronní commit), synchronizované sekvenční čtení datových souborů, úspornější ukládání dynamických datových typů (kratších 256byte), HOT updates a sofistikovanější aktualizaci indexů (hot indexes). Z patchů připravených pro 8.2 se v 8.3 neobjeví podpora bitmapových indexů a podpora aktualizovatelných pohledů. Původní řešení založené na pravidlech (rules) bylo příliš komplikované. 8.3 obsahuje podporu aktualizovatelných kurzorů, a je docela dobře možné, že aktualizovatelné pohledy budou ve verzi 8.4 implementovány právě s pomocí této třídy kurzorů.
Vývoj pokračuje implementací dalších modulů SQL. Ve verzi 8.3 je to konkrétně SQL/XML (rozšíření ANSI SQL), která umožňuje operace s XML dokumenty přímo v databázi a zjednodušuje generování XML dokumentů. Zásadní (interní) změnou je zkrácení hlavičky řádku z 28 bajtů na 24 bajtů. Další změnou, která by měla vést k minimalizaci velikosti uložených dat je diverzifikace typu varlena. Tento typ se v PostgreSQL používá pro serializaci hodnot všech typů s variabilní délkou. Trochu připomíná string v Pascalu. První byty nesou informaci o délce, další nesou obsah. Starší verze PostgreSQL znaly jen typ varlena s 4byte informací o délce. 8.3 podporuje také typ varlena s 1byte záhlavím. Úspora by se měla projevit hlavně u typu NUMERIC a krátkých řetězců. K překladu PostgreSQL lze počínaje touto verzí použít jak gcc, MINGW tak Microsoft Visual C++ (na platformě Microsoft Windows).

Downloads

Published

2007-12-19

Issue

Section

Articles