事務:作用于某些資料的一個不可分割的操作
鎖:寫鎖、互斥鎖(僅能被一個程序使用) 讀鎖、共享鎖(可被多個程序使用)
更新丢失
髒讀
不可重複讀
幻影讀
隔離級别:
1 READ COMMITTED 每個語句得到完整的視圖
2 SERIALIZABLE 事務級别實施串行化
Oracle并發特性
1 復原段:存儲“撤銷”資訊的資料結構
redo日志用來記錄資料庫的所有事務;復原段用于提供事務復原和讀一緻性
2 系統改變号 SCN:保證事務執行的順序
3 資料塊中的鎖:每個鎖隻影響資料塊的一行
沖突寫過程:
1 A更新操作
2 擷取SCN,讀取目标資料塊
3 記錄行鎖資訊
4 修改寫入redo日志緩存
5 寫入復原段
6 B更新操作
7 擷取SCN,讀取資料塊
8 發現上鎖,如果是READ COMMITTED 等待執行完成後繼續;如果是SERIALIZABLE,傳回錯誤
9 A送出事務
10 如果B READ COMMITTED,繼續執行
工作空間:與資料的變動分離,建立特定時間版本的資料空間
原子性
一緻性
隔離性
持久性
OLTP通用特性:
1 事務吞吐量大而且并發使用者量大
2 明确的性能需求
3 高可用性
4 可擴充性
通用并發與性能:
1 非更新行鎖技術:隻對事務處理的行加鎖,不将鎖的級别更新到也級别或者表級别
2 多版本讀操作一緻性:在不加讀鎖的情況下保證語句級和事務級的資料一緻性
3 共享SQL:将經過分析和優化的SQL存放在共享記憶體池中的共享SQL區 内
4 存儲概要:支援執行計劃的穩定性
可擴充性:
多線程伺服器MTS
Oracle Net連接配接池:允許用戶端共享一個實體網絡連接配接池
Oracle Net連接配接管理器:為多個客戶配置設定一條網絡連接配接。沒有“逾時”
實時應用程式叢集:
高速緩存熔合:将所有的資料存放在實時應用叢集中的每台主機的每個緩存内,這些資料對于急群衆的其他任意主機都是可用的。
高可用性:
1 備用資料庫:
2 透明故障遷移TAF:主機執行個體失敗時,自動連接配接到另一個oracle執行個體
3 oracle 流/進階隊列 AQ:一種異步或者延期的系統間通信方法
4 Oracle流複制:利用内置的複制功能提供資料備援