🏗️ Oracle 19c Database Architecture Explained | Beginners to Advanced 🚀
Oracle Database 19c follows the multi-tenant architecture with optional pluggable databases (PDBs). It consists of several key components:
📂 1️.Physical Storage Structures
Oracle Database stores data in three types of physical files:
✅ Data Files (.dbf) – Store actual user and system data.
✅ Redo Log Files (.log) – Maintain changes for recovery.
✅ Control Files (.ctl) – Track database structure and metadata.
Additional storage components:
✔ Temp Files – Handle temporary operations like sorting.
✔ Archive Logs – Store redo logs for recovery.
🧠 2️.Memory Architecture
Oracle 19c memory is split into two major parts:
🔷 System Global Area (SGA)
SGA is shared memory used by all database sessions and contains:
🔹 Database Buffer Cache – Holds frequently accessed data blocks.
🔹 Shared Pool – Stores SQL execution plans, dictionary cache, and PL/SQL code.
🔹 Redo Log Buffer – Temporarily stores redo entries before writing to redo log files.
🔹 Large Pool & Java Pool – Used for special tasks like backup and Java execution.
🔶 Program Global Area (PGA)
PGA is private memory allocated for each user session and includes:
🔸 Sort Area – Handles sorting and joins.
🔸 Session Memory – Manages variables and cursor data.
⚙ 3️.Background Processes
Oracle 19c runs multiple background processes to handle database operations:
✅ DBWn (Database Writer) – Writes modified data from buffer cache to disk.
✅ LGWR (Log Writer) – Writes redo log buffer changes to redo log files.
✅ CKPT (Checkpoint Process) – Updates control files and data file headers.
✅ SMON (System Monitor) – Performs recovery at startup.
✅ PMON (Process Monitor) – Cleans up failed user processes.
✅ ARCn (Archiver Process) – Moves redo logs to archive storage.
✅ MMAN (Memory Manager) – Manages automatic memory tuning.
🗂 4️. Logical Storage Structures
Oracle uses logical structures to manage data within tablespaces:
🔹 Tablespaces – Logical containers for data storage.
🔹 Segments – Collection of extents for storing objects like tables & indexes.
🔹 Extents – Groups of contiguous data blocks.
🔹 Blocks – Smallest storage unit in Oracle.
🔄 5️⃣ Multi-Tenant Architecture
Oracle 19c supports CDB (Container Database) and PDB (Pluggable Databases), making database management more flexible.
✔ CDB (Container Database) – The main database that holds PDBs.
✔ PDB (Pluggable Database) – Independent databases that run inside a CDB.
🎯 Why Oracle 19c? Key Features
✔ Automatic Indexing – Uses AI to optimize performance.
✔ JSON Support – Native JSON storage and querying.
✔ SQL Quarantine – Prevents bad queries from affecting performance.
✔ Persistent Memory (PMEM) – Faster storage access.
✔ Improved Multi-Tenant Support – Up to 3 PDBs in SE2.