Oracle多使用者並發及交易處理

來源:互聯網
上載者:User

Oracle多使用者並發及交易處理

Oracle多使用者並發訪問
事務:作用於某些資料的一個不可分割的操作
 
鎖:寫鎖、互斥鎖(僅能被一個進程使用)      讀鎖、共用鎖定(可被多個進程使用)
 
更新丟失
髒讀
不可重複讀取
幻影讀
 
隔離等級:
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
 
原子性
一致性
隔離性
持久性
 
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流複製:利用內建的複製功能提供資料冗餘

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.