Files
knowledge-base/ORACLE.md
Stanislav Hubacek 95d1839f05 First batch
2026-06-11 15:27:28 +02:00

11 KiB
Raw Blame History

🏛️ Oracle Database

Přehled

Oracle Database je proprietární relační databáze s nejširší škálou enterprise funkcí — RAC clustering, Active Data Guard, partitioning, advanced compression, in-memory options a Oracle Exadata integrace. Dominantní v korporátním světě, financích, telekomunikacích a mainframe ekosystému.

Architektura

Oracle instance + database

Oracle Instance (memory + processes)
  ├── System Global Area (SGA)
  │   ├── Database Buffer Cache
  │   ├── Shared Pool (library cache, dictionary cache)
  │   ├── Redo Log Buffer
  │   ├── Java Pool
  │   ├── Large Pool (backup, parallel)
  │   └── In-Memory Column Store (option)
  ├── Program Global Area (PGA) — per session
  └── Background processes
      ├── PMON (process monitor)
      ├── SMON (system monitor)
      ├── DBWn (database writer)
      ├── LGWR (log writer)
      ├── CKPT (checkpoint)
      ├── ARCn (archiver)
      └── MMON (manageability monitor)

Multitenant architektura (12c+)

Container Database (CDB)
  ├── Root (CDB$ROOT) — metadata, system objects
  ├── Seed (PDB$SEED) — template pro nové PDB
  ├── Pluggable Database 1 (PDB1) — aplikace A
  ├── Pluggable Database 2 (PDB2) — aplikace B
  └── Pluggable Database 3 (PDB3) — aplikace C

Každé PDB vypadá jako samostatná databáze, ale sdílí SGA a background procesy. Výhoda: vyšší densita, jednodušší patchování (CDB úroveň), resource management per PDB.

Oracle RAC (Real Application Clusters)

Multi-instance architektura — více serverů přistupuje ke stejné storage:

Node 1 ─── Oracle ASM ─── Shared Storage (SAN/NFS)
Node 2 ─── Oracle ASM ─── Shared Storage (SAN/NFS)
Node 3 ─── Oracle ASM ─── Shared Storage (SAN/NFS)
              │
        Cache Fusion (private interconnect)
  • Až 64 nodů v clusteru
  • Cache Fusion — transfer dirty blocks mezi instancemi přes private interconnect (RAC-specific)
  • ASM (Automatic Storage Management) — clustered filesystem + volume manager
  • Service — workload routing (primární, report, batch)

Oracle Data Guard

Režim Ochrana Latence Use case
Maximum Protection Zero data loss (sync) Nejvyšší Kritické systémy
Maximum Availability Zero data loss (sync, fallback na async) Vysoká Enterprise standard
Maximum Performance Async Nejnižší DR na dálku
  • Active Data Guard — standby pro čtení (reporting, backup) — vyžaduje licenci
  • Far Sync — synchronní zápis na vzdálený standby přes async (kompromis)

Oracle Exadata

Hardware+software platforma pro Oracle DB:

Komponenta Popis
Database Servers x86 (Xeon), 2-8× per rack, NVMe, 1.5-6 TB RAM
Storage Servers Celková kapacita až 2.7 PB raw per rack
Smart Scan Predikátová filtrace na storage vrstvě (místo v DB serveru)
Smart Flash Cache Násobné vrstvy caching (RAM, Flash, disk)
RDMA over Converged Ethernet Nízká latence mezi DB a storage servery

Vhodné pro: největší OLTP, data warehousing, consolidation.

Klíčové enterprise funkce

Funkce Popis Konkurence
RAC Shared-everything cluster až 64 uzlů MSSQL AlwaysOn FCI (2 uzly)
Active Data Guard Standby pro čtení, far sync, automatic failover MSSQL AlwaysOn AG, PostgreSQL streaming
Partitioning Range, List, Hash, Composite, interval, reference PostgreSQL (declarative partitioning 10+)
Advanced Compression Columnar, HCC (Exadata), OLTP compression InnoDB page compression, PG TOAST
In-Memory Column store v SGA pro real-time analytics PG (no native), MSSQL (columnstore index)
Advanced Security TDE, data redaction, VPD, audit vault, database firewall PG (pgcrypto, pgaudit), MSSQL (TDE, Always Encrypted)
Flashback Dotazování na historická data (Flashback Query, Table, Database) PG (temporal tables via extension), MSSQL (system-versioned)
Sharding System-managed, composite, user-defined MongoDB (native), Vitess (MySQL), Citus (PG)
ASM Clustered filesystem + volume manager VMware VMFS, Windows CSV

Oracle licensing detail

Edice

Edice Metrika Cena (orientační) Limitace
Oracle Database Standard Edition 2 (SE2) Per core (core factor 0.5) ~$17 500/core Max 16 CPU threads (na server), max 2 sockets, žádný RAC (pouze Oracle RAC One), žádné partitioning, in-memory, compression
Oracle Database Enterprise Edition (EE) Per core (core factor 0.5) ~$47 500/core Bez omezení, všechny funkce (RAC, partitioning, in-memory, compression, Advanced Security) — ale vše jako volitelné licence
Oracle Database Enterprise Edition (RAC) Per core (EE + RAC option) ~$47 500 + $23 000/core EE + RAC clustering

Volitelné licence (options) — EE only

Option Cena (orientační / core) Use case
Real Application Clusters (RAC) ~$23 000 Multi-instance cluster
Active Data Guard ~$10 000 Standby pro čtení, far sync, automatic failover
Partitioning ~$11 500 Range, list, hash, interval, reference, system
Advanced Compression ~$11 500 OLTP compression, HCC (Exadata), JSON compression
Advanced Security ~$15 000 TDE, data redaction, database firewall
In-Memory Database ~$23 000 Column store v SGA pro real-time analytics
Database Vault ~$5 750 Separation of duties, multi-tenancy security
Multitenant (EE) Zdarma (od 21c) CDB/PDB — max 3 PDB na CDB v EE bez license. Neomezeno s Multitenant option (~$17 500)
Spatial / Graph ~$5 750 Geoprostorová data, property graph
Label Security ~$5 750 Row-level security s klasifikacemi

Oracle Cloud (OCI) licensing

Služba Model Cena Poznámka
OCI Base Database (RDS-like) BYOL nebo License Included ~$1-5/hod (BYOL levnější) Single instance nebo RAC, automatické backup, patching
OCI Exadata Database Service BYOL nebo License Included ~$5-30/hod (dle shape) Exadata X9M/X10M v OCI, elastic, full Exadata features
OCI Autonomous Database Per CPU (ECPU) ~$0.50-3.00/ECPU/hod Auto-tuning, auto-scaling, auto-patching
BYOL (Bring Your Own License) Vlastní Oracle license v OCI Jen infrastruktura Lze použít stávající perpetual license, včetně supportu

RAC sizing — licence cost

4-node RAC, každý node 2× EPYC 9654 (96C) = 192 cores per node
  Core factor 0.5 → 96 Oracle licenses per node
  4 × 96 = 384 Oracle EE licenses

EE: 384 × $47 500 = $18 240 000
RAC option: 384 × $23 000 = $8 832 000
Support 22 % ročně: ($18 240 000 + $8 832 000) × 0.22 = $5 955 840/rok

Tip: Pro RAC zvažte menší CPU (např. 64C místo 96C) — license cost často převyšuje hardware cost.

Oracle vs PostgreSQL — srovnání

Oblast Oracle PostgreSQL
Licence Proprietary (per core, ~$17.5k-47.5k/core + 22 % support ročně) Open source (PostgreSQL license, MIT-like)
RAC clustering Nativní, shared-everything Žádné (Citus = shared-nothing)
Multitenant CDB/PDB architektura Žádné (schemas per tenant)
Parallel execution Vyspělý (auto DOP, parallel index scan) Dobrý (parallel seq/index scan, join)
Storage management ASM (integrovaný) OS volume / LVM
Materialized views S refresh on commit, query rewrite Není query rewrite
Partitioning 40+ možností (interval, referential, system) Declarative (range, list, hash od 10+)
In-memory Columnar in SGA Není nativní
Standby použitek Active Data Guard (read-only, licence) Hot standby (read-only, zdarma)
Cloud OCI (Oracle Cloud), AWS RDS, Azure Všechny cloudy (native)

Doporučení — v čem je Oracle lepší

Oblast Oracle Konkurence Proč Oracle
Licence cost (4-node RAC, 384 cores) ~$50M (1. rok vč. supportu) PostgreSQL: $0 Oracle: 22 % support ročně z license fee
Vendor lock-in Vysoký (GoldenGate migrace náročná, PL/SQL specific) PostgreSQL: žádný MySQL i PG mají nástroje pro migraci z Oracle (ora2pg, AWS DMS)
Enterprise OLTP RAC + ASM, zero-downtime patching MSSQL (FCI limit 2 nodes) Shared-everything cluster, transparent failover
Finance / Banking Audit Vault, Database Vault, TDE, VPD PG (pgaudit, row-level security) Compliance certifikace (SOX, PCI, GDPR)
Consolidace Multitenant (CDB/PDB) — stovky DB na 1 instanci PG (citizen schemas) Nižší overhead, jednodušší management
Data Warehouse Exadata Smart Scan, parallel execution, in-memory ClickHouse (specializovaná) Hybrid workload (OLTP + DW v jedné DB)
High-end hardware Exadata engineered system PG (běží na čemkoliv) Full-stack optimalizace HW+SW
Partitioning Rozsah možností (reference, interval, system) PG (basic) 10+ let náskok v implementaci
Flashback / recovery Flashback Database, Table, Query — libovolný čas PG (PITR, point-in-time) Rychlejší, granularnější recovery
Ekosystém OEM, Data Pump, SQL Developer, Toad, GoldenGate PG (pgAdmin, pg_dump, Patroni) Desítky let enterprise toolingu

Kdy použít Oracle

  • Kritické OLTP systémy — banking, payment processing, trading
  • Enterprise konsolidace — stovky DB na jednom RAC clusteru (multitenant)
  • Regulované prostředí — finance, healthcare, government (audit, security, compliance)
  • Oracle ekosystém — E-Business Suite, PeopleSoft, Siebel, JD Edwards
  • Exadata zákazníci — maximální výkon pro hybrid workload (OLTP + DW)
  • GoldenGate replikace — heterogenní replikace (Oracle → Kafka, Oracle → PostgreSQL)
  • Cloud migration — OCI, AWS RDS for Oracle, Azure Oracle Database Service

Kdy použít něco jiného

  • Startup / SME → PostgreSQL (zdarma, dostatečný výkon, žádný vendor lock-in)
  • Web / LAMP stack → MySQL (jednodušší, levnější, široká podpora)
  • Cloud-native → Aurora, CockroachDB (architektura pro cloud, ne port on-prem do cloudu)
  • Potřebujete jen SQL → PostgreSQL (Oracle overhead se nevyplatí)
  • Horizontální škálování zápisů → Cassandra (RAC škáluje čtení, zápisy jdou přes jeden nod)

Zdroje

Odkazy, knihy a standardy: sources/databases/sources.md

Doporučená literatura

Kniha Autoři ISBN Popis
Oracle Database 23ai New Features Oracle Corporation Oficiální průvodce novinkami — AI Vector Search, JSON Relational Duality, property graphs, schema privileges
Expert Oracle Architecture (3rd ed.) Thomas Kyte, Darl Kuhn 978-1484249602 Komplexní výklad Oracle architektury — od storage po RAC a Data Guard

Poslední revize: 2026-06-03