库系统的基础观念课件.ppt

上传人(卖家):三亚风情 文档编号:3332377 上传时间:2022-08-20 格式:PPT 页数:32 大小:2.89MB
下载 相关 举报
库系统的基础观念课件.ppt_第1页
第1页 / 共32页
库系统的基础观念课件.ppt_第2页
第2页 / 共32页
库系统的基础观念课件.ppt_第3页
第3页 / 共32页
库系统的基础观念课件.ppt_第4页
第4页 / 共32页
库系统的基础观念课件.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、認識交易(transaction)的定義。了解交易與同時性控制的問題。了解資料庫系統處理交易與同時性控制的方法。交易管理(transaction management)是什麼?同時性控制(concurrency control)是什麼?這是一個腦力激盪的園地!交易管理(transaction management)並行控制(concurrency control)復原(recovery)交易(transaction)是資料庫裡頭很特別的觀念一個資料庫的交易可以看成是一連串針對資料進行的讀取與更新的作業交易可能是由使用者或是應用程式所啟動執行資料庫中的交易看起來可能像是一整個程式、程式的一部分或

2、是單一的指令 同時存取控制的程序管理資料庫的同時存取作業,確保同時進行的操作之間不會互相干擾(interfere)所謂的並行是指一項作業還沒完全完成就進行另一項作業假如把交易看成是一種邏輯上的作業單位的話,同時存取控制的目的就是要避免同時進行的交易互相干擾(READ)先取得含有資料項目的disk block的address,接著把disk block複製(copy)到主記憶體的buffer,最後把資料項目從buffer複製到程式變數(program variable)中。(WRITE)先取得含有資料項目的disk block的address,接著把disk block複製(copy)到主記憶體

3、的buffer,然後把程式變數複製到該buffer,最後把disk block存回磁碟。交易可以看成是一連串的Read與Write 交易本身應該具有所謂的獨立性或孤立性(isolation)交易應該具有所謂的單元性(Atomicity)交易應該具有所謂的一致性(consistency)資料庫系統要保障交易結果的正確性 電腦的失敗(computer failure)系統錯誤(system error)交易執行發生例外(exception)狀況同時控制(concurrency control)的要求磁碟毀壞環境災難或實際設備發生問題begin_transaction:表示交易開始進行。read/w

4、rite:交易對資料庫進行讀(read)與寫(write)的作業。end_transaction:表示交易結束,但是可能還沒有確認(commit)。commit:確定交易成功地完成了!造成的改變不會被取消(undone)。rollback/abort:表示交易沒有成功,造成的改變必須取消(undone)。start_transaction,T:表示交易T開始執行。write_item,T,X,old_value,new_value:交易T將資料庫的資料X從原來的old_value更新為new_value。read_item,T,X:交易T讀取資料庫的資料Xcommit,T:交易T成功執行完畢,

5、其效應已經永久地儲存到資料庫中。abort,T:交易T被取消(aborted)。暫時停止所有交易的進行。將所有被更新過的main memory buffer強制寫入(force-writing)磁碟中。將checkpoint記錄寫入log,通時把log強制寫入(force-writing)磁碟中。繼續開始執行交易。兩個操作屬於不同的交易。兩個操作用到(access)相同的資料。其中的一個操作是對資料進行寫入(write)。result equivalentconflict equivalent view equivalent資料的鎖定(locking)時間戳記(timestamp)多版同時控制

6、(multiversion concurrency control)資料鎖(lock)是與資料項目相關的變數(variable),用來描述資料本身與操作之間的相關性以及目前的狀態資料庫中的資料項目都有一個對應的lock,用來控制多個交易對於資料的同時存取二元鎖(binary lock)有兩種狀態:locked與unlocked,也可以分別用1與0來表示當某個資料項目的lock值是1時表示該資料項目目前無法被存取,當某個資料項目的lock值是0時則代表該資料項目可以被存取 DBMS會為交易建立一個時間戳記(timestamp),用來辨識交易通常timestamp的值是以系統開始處理交易的順序來決

7、定的,所以也可以看成是一個交易T的開始執行時間,以TS(T)來表示一般可以運用計數器(counter)或是系統的時間來產生timestamp我們可以利用timestamp來安排交易執行的順序,讓這樣安排出來的schedule有serializable的特性,這也稱為所謂的timestamp ordering 多版同時控制會保存資料多個版本的值,當有交易需要存取資料時,會在維持schedule的serializability的前提下選擇適當的版本對於read的操作來說,讀取目前的值可能會違反規則,但是讀取之前的值就不會有影響write的操作則需要連同原來的值也保存起來 在分散式的資料庫系統中,所有執行一個交易T的節點必須對於T的執行結果有一致的看法假如T確認(commit)的話,必須在所有執行T的節點上都commit。假如T取消(abort)的話,必須在所有執行T的節點上都abort我們需要確認的協定(commit protocol)來達到這樣的要求

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(库系统的基础观念课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|