PostgreSQL je výkonný a pokročilý open-source relační databázový systém, který je oblíbený pro svou stabilitu, škálovatelnost a podporu pokročilých funkcí. Byl vyvinut jako nástupce systému Ingres a poprvé uveden v roce 1996. Na rozdíl od jednodušších databází podporuje komplexní dotazy, transakce, uložené procedury, datové typy a integritu dat. Díky své otevřené licenci je často využíván jak ve startupech, tak ve velkých korporacích pro náročné aplikace, kde je klíčová spolehlivost a bezpečnost práce s daty.
PostgreSQL najde uplatnění v celé řadě scénářů. Mezi nejběžnější případy použití patří:
Webové aplikace – Díky své spolehlivosti a kompatibilitě s mnoha programovacími jazyky (např. PHP, Python, Node.js) je PostgreSQL často využíván jako hlavní databáze pro dynamické weby a e-shopy.
Podnikové informační systémy (ERP, CRM) – PostgreSQL zvládá složité datové struktury, transakce a vysoké zatížení, což z něj dělá vhodnou volbu pro robustní interní systémy firem.
Geografické informační systémy (GIS) – S rozšířením PostGIS nabízí PostgreSQL výkonné nástroje pro práci s prostorovými daty, což je ideální pro mapové a geolokační aplikace.
Analytické a datové sklady – Díky podpoře replikace, indexování a paralelního zpracování dotazů se PostgreSQL často používá pro business intelligence a analýzu velkých objemů dat.
Mobilní a IoT aplikace – V kombinaci s cloudovými službami slouží jako backend pro aplikace sbírající a analyzující data z různých zařízení.
Finanční a účetní systémy – Silná podpora transakcí a datové integrity zaručuje, že PostgreSQL dobře obstojí i v prostředí s vysokými nároky na přesnost a bezpečnost.
Celkově je PostgreSQL vhodný všude tam, kde je potřeba flexibilní, bezpečná a výkonná databáze.
Typ | Popis | Příklad |
---|---|---|
Základní typy | ||
INTEGER |
Celé číslo (32bit) | 42 |
BIGINT |
Velké celé číslo (64bit) | 9223372036854775807 |
SMALLINT |
Malé celé číslo (16bit) | 32000 |
NUMERIC(p,s) |
Číslo s pevnou přesností | 12345.67 |
REAL |
Desetinné číslo (float) | 3.14 |
DOUBLE PRECISION |
Vyšší přesnost než REAL | 3.1415926535 |
BOOLEAN |
Logická hodnota | TRUE / FALSE |
CHAR(n) |
Pevná délka textu | 'ABC' |
VARCHAR(n) |
Text s maximální délkou | 'Dlouhý text' |
TEXT |
Libovolně dlouhý text | 'Popis článku' |
Datum a čas | ||
DATE |
Datum | 2025-07-08 |
TIME |
Čas bez data | 14:30:00 |
TIMESTAMP |
Datum a čas | 2025-07-08 14:30:00 |
TIMESTAMPTZ |
Datum a čas s časovou zónou | 2025-07-08 14:30:00+02 |
INTERVAL |
Časový úsek | 1 day 2 hours |
Pole (Arrays) | ||
INTEGER[] |
Pole celých čísel | {1,2,3} |
TEXT[] |
Pole textových hodnot | {'a','b','c'} |
Strukturované a pokročilé typy | ||
JSON |
Textová JSON data | { "jméno": "Petr" } |
JSONB |
Binární (efektivní) JSON | { "aktivní": true } |
UUID |
Unikátní identifikátor | 550e8400-e29b-41d4-a716-446655440000 |
XML |
Strukturovaná XML data | <name>Karel</name> |
HSTORE |
Klíč–hodnota formát | 'klíč' => 'hodnota' |
ENUM |
Výčet povolených hodnot | 'male', 'female' |
Síťové typy | ||
INET |
IP adresa | 192.168.1.1 |
CIDR |
IP síť | 192.168.0.0/24 |
MACADDR |
MAC adresa | 08:00:2b:01:02:03 |
Binární typy | ||
BYTEA |
Binární data (např. soubory) | \xDEADBEEF |
Geografické / prostorové typy (PostGIS) | ||
POINT |
Bod (x,y) | (10, 20) |
LINE |
Přímka | {(1,2),(3,4)} |
POLYGON |
Polygon (mnohoúhelník) | ((0,0),(1,1),(2,0)) |
GEOMETRY |
Obecná prostorová data | geometry(POINT, 4326) |
GEOGRAPHY |
Geografická data s geodézií | geography(POINT) |
Fulltext a indexace | ||
TSVECTOR |
Text pro fulltext index | 'webový článek' |
TSQUERY |
Dotaz do fulltextového indexu | 'web' & 'článek' |
© Josef Novotný 2025