Oracle Database 12c Fundamentals Exploring the Oracle Database 12c Architecture: Part 1 Timothy Warner timwarnertech.com @TechTrainerTim
Overview: Exploring the Oracle Database 12c Architecture Part 1/1 Goals of this course and learning path What is Oracle Database 12c? Understanding Oracle client/server architecture Understanding Oracle Database 12c memory structures
Goals of this Course and Learning Path Students come from a variety of backgrounds:
New to databases New to Oracle (previous experience with other platforms) New to Oracle Database 12c
Oracle Database 12c Disaster Recovery and Data Movement
Get familiar with Oracle University (education.oracle.com)
What is Oracle Database 12c? A database is an organized collection of data that is treated as a unit A relational database management system (RDBMS) is the infrastructure that supports multi-user database access
Secure data storage, quick retrieval by using SQL
Oracle is called an object-relational database
EF “Ted” Codd (1923-2003)
Key terms in relational theory:
Relation = table
Attribute = column
Tuple = row
A Bit of Oracle Version History Oracle v1 written but never officially released in 1978 Oracle 8i released in 1999 (i = Internet) Oracle 10g released in 2003 (g = grid computing) Oracle 12c released in 2014 (c = cloud)
Understanding Oracle Client/Server Architecture Client (not the user): application that communicates either through a middle-tier (middleware) application or directly with Oracle server Middle tier: Homegrown LOB, Oracle Fusion Applications/Middleware
Although the platform is capable of declarative/procedural logic
Oracle Exadata Database Machine
Database and Instance Instance: Shared memory area (system global area, or SGA) and background processes Database: Set of files, located on disk, that store data
Data files, ORL files, control files, etc.
Single instance vs. clustered (grid) instance:
Cluster involves several instances that access shared storage and a single database in an active/active configuration
Multitenant Architecture (New in 12c!)
Container database (CDB) with multiple pluggable databases (PDBs)
Updates and maintenance can be performed just once on the CDB
Oracle Database 12c Memory Structures System Global Area (SGA): Group of shared memory structures that store data and manage information for a single database instance Program Global Area (PGA): Stores data and manages information for a server process or background process
System Global Area (SGA) Components Database buffer cache: Stores copies of data blocks read from data files and waiting to be written to data files Redo log buffer: Circular buffer that stores all changes made to the DB (can reconstruct DDL or DML operations) Shared pool: “Catch all” bucket: Shared SQL, Data Dictionary cache, etc. Large pool: Stores memory allocations that are larger than the shared pool can handle (overflow) Java pool: Stores session-specific Java code within the JVM Streams pool: Used in Oracle Streams database replication Fixed SGA: Internal housekeeping area (locks, processes, etc.)
Program Global Area (PGA) Components File clerk/countertop analogy for understanding the server process and the PGA Session memory: logon information and session-related data Private SQL area: Query execution work data Restricting the PGA size (new in 12c!)
Summary Oracle Database is the back-end storage tier in a typical multi-tier client/server application architecture An Oracle “database” actually consists of two parts: the instance and the database files An Oracle instance consists of several memory structures and background processes
SGA
PGA
The Oracle database, proper, consists of the file system objects
Logical vs. physical distinction is a big deal with Oracle products
Thank you for interesting in our services. We are a non-profit group that run this website to share documents. We need your help to maintenance this website.