Zum Inhalt springen
_CORE
AI & Agentic Systems Core Information Systems Cloud & Platform Engineering Data Platform & Integration Security & Compliance QA, Testing & Observability IoT, Automation & Robotics Mobile & Digital Banking & Finance Insurance Public Administration Defense & Security Healthcare Energy & Utilities Telco & Media Manufacturing Logistics & E-commerce Retail & Loyalty
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

Migrace z Oracle na PostgreSQL — proč a jak

12. 02. 2014 2 Min. Lesezeit CORE SYSTEMSdata
Migrace z Oracle na PostgreSQL — proč a jak

Oracle Database nás provází od roku 2003. Spolehlivý, výkonný, prověřený. Ale taky drahý. Když jsme spočítali licenční náklady za posledních deset let, číslo nás vyděsilo. Začali jsme hledat alternativu.

Proč PostgreSQL

Na seznamu kandidátů bylo několik databází: MySQL, MariaDB, PostgreSQL. MySQL jsme vyřadili kvůli nejistotě kolem Oracle vlastnictví. PostgreSQL nás přesvědčil svou enterprise-grade sadou funkcí — window functions, CTE, partial indexes, JSONB podpora. PostgreSQL 9.3 přinesl materialized views a zlepšený JSON support. Komunita kolem PostgreSQL je aktivní a profesionální.

Co jsme migrovali

Vybrali jsme interní systém pro správu projektů — přibližně 120 tabulek, 50 stored procedures, desítky views. Ne náš největší systém, ale dostatečně komplexní na ověření proveditelnosti.

Nástroje a přechod datových typů

Použili jsme Ora2Pg pro export schématu a dat. Ruční opravy: NUMBER → NUMERIC, VARCHAR2 → VARCHAR, trigger-based auto-increment → SERIAL.

-- Oracle
CREATE TABLE projects (
    id NUMBER GENERATED BY DEFAULT AS IDENTITY,
    name VARCHAR2(200) NOT NULL,
    created_date DATE DEFAULT SYSDATE
);

-- PostgreSQL
CREATE TABLE projects (
    id SERIAL PRIMARY KEY,
    name VARCHAR(200) NOT NULL,
    created_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

PL/SQL → PL/pgSQL

Největší práce. Oracle-specifické funkce (NVL, DECODE, ROWNUM) jsme přepsali na COALESCE, CASE, ROW_NUMBER. Balíky (packages) nahrazeny schématy. Některé procedury jsme při přepisu zjednodušili — Oracle workaroundy už nebyly potřeba.

Výkon a monitoring

Na většině dotazů PostgreSQL srovnatelný s Oracle. EXPLAIN ANALYZE je fantastický nástroj — víc informací než Oracle EXPLAIN PLAN. Chybí nám Oracle Enterprise Manager a RAC clustering. pgAdmin je solidní, ale nedosahuje úrovně OEM.

Co je lepší v PostgreSQL

Cena: Nula korun za licence. Jednoduchost: Instalace za minuty, konfigurace v jednom souboru. JSONB: Ukládání a dotazování JSON dokumentů přímo v relační databázi.

Migrace se vyplatila

Po třech měsících práce běží náš projektový systém na PostgreSQL. Výkon je srovnatelný, provozní náklady výrazně nižší. Oracle zůstane pro nejkritičtější systémy, ale PostgreSQL je plnohodnotná enterprise databáze.

postgresqloraclemigraceenterprise
Teilen:

CORE SYSTEMS

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.

Brauchen Sie Hilfe bei der Implementierung?

Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.

Kontaktieren Sie uns