




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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複製(cop
3、y)到主記憶體的buffer,然後把程式變數複製到該buffer,最後把disk block存回磁碟。 交易可以看成是一連串的Read與Write 交易本身應該具有所謂的獨立性或孤立性(isolation) 交易應該具有所謂的單元性(Atomicity) 交易應該具有所謂的一致性(consistency) 資料庫系統要保障交易結果的正確性 電腦的失敗(computer failure) 系統錯誤(system error)交易執行發生例外(exception)狀況同時控制(concurrency control)的要求磁碟毀壞環境災難或實際設備發生問題begin_transaction : 表
4、示交易開始進行。read/write : 交易對資料庫進行讀(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,
5、 T, X : 交易T讀取資料庫的資料Xcommit, T : 交易T成功執行完畢,其效應已經永久地儲存到資料庫中。abort, T : 交易T被取消(aborted) 。暫時停止所有交易的進行。將所有被更新過的main memory buffer強制寫入(force-writing)磁碟中。將checkpoint記錄寫入log,通時把log強制寫入(force-writing)磁碟中。繼續開始執行交易。兩個操作屬於不同的交易。兩個操作用到(access)相同的資料。其中的一個操作是對資料進行寫入(write) 。 result equivalentconflict equivalent vi
6、ew equivalent資料的鎖定(locking)時間戳記 (timestamp)多版同時控制(multiversion concurrency control) 資料鎖(lock)是與資料項目相關的變數(variable) ,用來描述資料本身與操作之間的相關性以及目前的狀態資料庫中的資料項目都有一個對應的lock,用來控制多個交易對於資料的同時存取二元鎖(binary lock)有兩種狀態 : locked與unlocked,也可以分別用1與0來表示當某個資料項目的lock值是1時表示該資料項目目前無法被存取,當某個資料項目的lock值是0時則代表該資料項目可以被存取 DBMS會為交易建
7、立一個時間戳記 (timestamp) ,用來辨識交易通常timestamp的值是以系統開始處理交易的順序來決定的,所以也可以看成是一個交易T的開始執行時間,以TS(T)來表示一般可以運用計數器(counter)或是系統的時間來產生timestamp我們可以利用timestamp來安排交易執行的順序,讓這樣安排出來的schedule有serializable的特性,這也稱為所謂的timestamp ordering 多版同時控制會保存資料多個版本的值,當有交易需要存取資料時,會在維持schedule的serializability的前提下選擇適當的版本對於read的操作來說,讀取目前的值可能會違反規則,但是讀取之前的值就不會有影響write的操作則需要連同原來的值也保存起來 在分散式的資料庫系統中,所有執行一個交易T的節點必須對於T
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东工程职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年广东南方职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年山西建筑职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年山东电子职业技术学院高职单招语文2019-2024历年真题考点试卷含答案解析
- 2025年山东圣翰财贸职业学院高职单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析
- 2025年安徽粮食工程职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年宁夏警官职业学院高职单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析
- 2025年天津现代职业技术学院高职单招(数学)历年真题考点含答案解析
- HIV母婴传播预防知识课件
- crrt相关知识课件
- 湖南省长沙市麓山国际实验学校2024-2025学年高二下学期第一次学情检测化学试卷(图片版含答案)
- 行政管理本科毕业论文-中国逆城市化现象的成因及启示
- xx地块房地产项目可行性研究报告(参考)
- 知识产权法自考考点
- 2024-2025学年第二学期天域全国名校协作体高三3月联考 语文试卷(含答案)
- 2025光伏发电站绿色拆除技术规范
- 爱眼护眼知识竞赛题及答案
- 幼儿园消防安全责任人名单范文
- 道路运输企业安全风险辨识分级管控清单
- HSF目标指标和方案削减计划管理程序
- 零星维修服务方案
评论
0/150
提交评论