解析Oracle Database Concepts 12c(4)
Oracle資料庫體系結構(Oracle Database Architecture
)
結合第四大章和第五大章,個人認為這是非常重要的章節,值得反覆的研讀。什麼都不說,先上圖:
這是一張值的每天都去看一眼的圖,就像武林秘籍中的總綱,把Oracle資料庫的精髓都已包含在內。要掌握Oracle Database,首先要理解兩個基本概念:資料庫和例項。
■ 資料庫
所謂資料庫就是磁碟上一系列檔案的集合,主要包括資料檔案、線上日誌、控制檔案等。
■ 資料庫例項
所謂資料庫例項就是記憶體中的程式映像,用來管理資料庫。其中最主要的一塊記憶體區域叫做SGA(System Global Area)和一系列後臺程式。
資料庫和例項是互不依賴的,它們可以分別單獨存在。
資料庫的儲存結構
物理儲存結構
■ 資料檔案(Data files)
每個資料庫包含一個或多個資料檔案,這是真正儲存資料的地方,像表、索引等資料都是儲存在資料檔案裡。
■ 控制檔案(Control files)
控制檔案儲存了資料庫的後設資料,包括資料庫名、建立時間、資料檔案路徑、重做日誌路徑、當前重做日誌的序號、檢查點資訊等等。由於控制檔案很重要,因此控制檔案可以有多份複製。
■ 線上重做日誌檔案(Online redo log files)
線上重做日誌是由2個或更多的檔案組成的,用來記錄資料庫中的所有變更,以重做記錄(redo entries,或者redo log records)的形式記錄到檔案中。
當然,除了以上3類主要的檔案外,資料庫還包含其它也很重要的檔案,如引數檔案(parameter file),歸檔日誌檔案(archived redo log file)、備份檔案(backup files)等。
邏輯儲存結構
■ 塊(Data blocks)
塊是Oracle資料庫的最小分配單元,一個塊對應特定的位元組,預設是8K。
■ 區(Extents)
區是多個邏輯上連續的塊組成的儲存區域。
■ 段(Segments)
段是多個區組成的儲存區域,資料庫建立物件(user objects)後就會為其分配相應的段,如表、索引等。
■ 表空間(Tablespaces)
一個資料庫就是由多個表空間組成的,一個表空間可以包含1個或多個資料檔案。
簡單點說,多個物理儲存區(如扇區)組織成塊,塊再組織成區,區再組織成段,段再組織成表空間,表空間由1個或多個資料檔案組成,透過這樣的設計來達到高效、靈活的儲存管理的目的。
例項結構
資料庫程式
■ 客戶端程式(Client processes)
如應用程式,SQL*Plus等,通常執行在單獨的客服機上。
■ 後臺程式(Background processes)
用來完成各種維護工作,如髒資料寫入磁碟、寫重做日誌、清理異常終止的程式等等。
■ 伺服器程式(Server processes)
和客戶端程式進行互動,完成客戶端的請求。
記憶體結構
Oracle資料庫例項的記憶體區域主要分為兩大塊:
■ SGA(System Global Area)
SGA是資料庫例項最大的一塊記憶體區域,包含資料庫的資料(快取)和控制資訊。SGA由眾多的元件構成,如資料快取(buffer cache),共享池(share pool)等,12.1.0.2以後,還可以包含記憶體列儲存(In-Memory Column Store)。
■ PGA(Program Global Areas)
是一個程式專享的記憶體區域,其它程式不能訪問。後臺程式也有PGA,由於後臺程式的PGA一般都很小,所以我們講PGA時,通常指的是伺服器程式的PGA。
應用和網路架構
應用架構
支援兩種常見的應用架構:
C/S架構(client/server architecture)
多層架構(multitier architecture)
網路結構
應用程式或者其它客戶端透過Oracle Net Service來與Oracle資料庫進行互動。Oracle Net Service包含兩大元件:
■ Oracle Net
建立客戶端和資料庫間的會話,會話建立後提供客戶端和資料庫之間的資料交換。
■ Oracle Net Listener
監聽並分配連線請求,當連線建立後,就沒它什麼事了。
Oracle網路服務方式有專用伺服器連線和共享伺服器連線兩種。
多租戶架構
Oracle 12c引入的一個很重要的新特性是多租戶,關於多租戶我們後續詳細討論。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13885898/viewspace-2145779/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 解析Oracle Database Concepts 12c(2)OracleDatabase
- 解析Oracle Database Concepts 12c(1)OracleDatabase
- 解析Oracle Database Concepts 12c(5)OracleDatabase
- 解析Oracle Database Concepts 12c(3)OracleDatabase
- Oracle 19c Concepts(00):Changes in This Release for Oracle Database ConceptsOracleDatabase
- Oracle 19c Concepts(19):Concepts for Database DevelopersOracleDatabaseDeveloper
- Oracle 19c Concepts(18):Concepts for Database AdministratorsOracleDatabase
- Oracle Database Concepts 10.2 reader planOracleDatabase
- Oracle 19c Concepts(13):Oracle Database InstanceOracleDatabase
- Oracle 19c Concepts(01):Introduction to Oracle DatabaseOracleDatabase
- Oracle Database 12C New FeatureOracleDatabase
- Database System Concepts(Fourth Edition)Database
- Oracle 12C Database File Mapping for Oracle ASM FilesOracleDatabaseAPPASM
- Oracle 19c Concepts(17):Topics for Database Administrators and DevelopersOracleDatabaseDeveloper
- 【OH】Deprecated and Desupported Features for Oracle Database 12cOracleDatabase
- Oracle 12C pluggable database自啟動OracleDatabase
- Oracle 12c Enterprise Manager Database ExpressOracleDatabaseExpress
- Oracle Database 12c十二大新特性OracleDatabase
- Oracle 20C Concepts(Part V-4)Oracle
- 小丸子學Oracle 12c系列之——Oracle Pluggable DatabaseOracleDatabase
- Oracle Appliactions 11i concepts(三) - Application Database Organization(1)OracleAPPDatabase
- Oracle 12c RMAN Duplicating a Subset of the Source Database TablespacesOracleDatabase
- Oracle Database 12c可插拔資料庫案例OracleDatabase資料庫
- Seed Database (pdb$seed) - Read Write OR Read Only Mode in Oracle Database 12cDatabaseOracle
- Oracle 12c In-Memory Option - 4Oracle
- Oracle 12C Transport a Database to a Different Platform Using Backup SetsOracleDatabasePlatform
- Oracle Database 12c新特性 In-Database Archiving資料庫內歸檔OracleDatabase資料庫
- 12c in-database archiveDatabaseHive
- 12c EM Database ExpressDatabaseExpress
- ORACLE-1Z0-060題庫(Upgrade to Oracle Database 12c)OracleDatabase
- Types of Oracle Database Users : Application Developers (4)OracleDatabaseAPPDeveloper
- Oracle Appliactions 11i concepts(四) - Database Features and Release 11i(1)OracleAPPDatabase
- Oracle Concepts - pfile and spfileOracle
- 嚐鮮Oracle Database 12c的十二大新特性VKOracleDatabase
- Oracle Database 12C 新功能 rman RECOVER TABLE (文件 ID 2047644.1)OracleDatabase
- Oracle Database 12c Release 2 (12.2) RAC On Oracle Linux 7 Using VMwareOracleDatabaseLinux
- Oracle Database 12c RAC損壞ocr和votedisk恢復實驗OracleDatabase
- Oracle 12c DG備庫啟動報錯standby database requires recoveryOracleDatabaseUI