分布式數據庫總結1600字_第1頁
分布式數據庫總結1600字_第2頁
分布式數據庫總結1600字_第3頁
分布式數據庫總結1600字_第4頁
分布式數據庫總結1600字_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

分布式數據庫總結1600字

分布式數據庫介紹自學、整理、備忘它和集中式操作系統的區(qū)別在于資源管理、進程通信和系統結構等方面。分布式程序設計語言用于編寫運行于分布式計算機系統上的分布式程序。一個分布式程序由若干個可以獨立執(zhí)行的程序模塊組成,它們分布于一個分布式處理系統的多臺計算機上被同時執(zhí)行。它與集中式的程序設計語言相比有三個特點:分布性、通信性和穩(wěn)健性。分布式文件系統具有執(zhí)行遠程文件存取的能力,并以透明方式對分布在網絡上的文件進行管理和存取。分布式數據庫系統由分布于多個計算機結點上的若干個數據庫系統組成,它提供有效的存取手段來操縱這些結點上的子數據庫。分布式數據庫在使用上可視為一個完整的數據庫,而實際上它是分布在地理分散的各個結點上。當然,分布在各個結點上的子數據庫在邏輯上是相關的。主要特點:????多數處理就地完成各地的計算機由數據通信網絡相聯系克服了中心數據庫的弱點:降低了數據傳輸代價提高了系統的可靠性,局部系統發(fā)生故障,其他部分還可繼續(xù)工作?各個數據庫的位置是透明的,方便系統的擴充?為了協調整個系統的事務活動,事務管理的性能花費高體系結構:分布式數據庫系統抽象為4層的結構模式,4層模式劃分為全局外層、全局概念層、局部概念層和局部內層,在各層間還有相應的層間映射。這種4層模式適用于同構型分布式數據庫系統,也適用于異構型分布式數據庫系統數據分片類型:1)水平分片:按一定的條件把全局關系的所有元組劃分成若干不相交的子集,每個子集為關系的一個片段。(2)垂直分片:把一個全局關系的屬性集分成若干子集,并在這些子集上作投影運算,每個投影稱為垂直分片。(3)導出分片:又稱為導出水平分片,即水平分片的條件不是本關系屬性的條件,而是其他關系屬性的條件。(4)混合分片:以上三種方法的混合。可以先水平分片再垂直分片,或先垂直分片再水平分片,或其他形式,但他們的結果是不相同的。條件:(1)完備性條件:必須把全局關系的所有數據映射到片段中,決不允許有屬于全局關系的數據卻不屬于它的任何一個片段。(2)可重構條件:必須保證能夠由同一個全局關系的各個片段來重建該全局關系。對于水平分片可用并操作重構全局關系;對于垂直分片可用聯接操作重構全局關系。(3)不相交條件:要求一個全局關系被分割后所得的各個數據片段互不重疊(對垂直分片的主鍵除外)。數據分配方式:(1)集中式:所有數據片段都安排在同一個場地上。(2)分割式:所有數據只有一份,它被分割成若干邏輯片段,每個邏輯片段被指派在一個特定的場地上。(3)全復制式:數據在每個場地重復存儲。也就是每個場地上都有一個完整的數據副本。(4)混合式:這是一種介乎于分割式和全復制式之間的分配方式。目前分布式數據庫分配的設計,越來越多的采用尋找最優(yōu)解的算法,比如遺傳算法、退火機制等查詢優(yōu)化:指在執(zhí)行分布式查詢時選擇查詢執(zhí)行計劃的方法和關系運算符的實現算法。根據系統環(huán)境的不同,查詢優(yōu)化所使用的算法也有所不同,通常分為遠程廣域網環(huán)境和高速局域網環(huán)境,其區(qū)別主要在網絡的帶寬。對于一元運算符可以采用集中式數據庫中的查詢優(yōu)化方法。而對于二元運算符,由于涉及場地間的數據傳輸,因此必須考慮通信代價。分布式查詢中常見的連接運算執(zhí)行策略包括:(1)半連接方法:利用半連接運算的轉換方法R∞S=(RµS)∞S。假設場地1和場地2上分別有關系R和關系S,首先在S上執(zhí)行連接屬性上的投影并將結果傳輸至場地1,在場地1上執(zhí)行關系R與投影的連接操作,再將結果傳輸至場地2與關系S執(zhí)行連接操作。這種方法能夠降低執(zhí)行連接運算時的網絡通信代價,主要適用于帶寬較低的遠程廣域網絡。(2)枚舉法方法:指枚舉關系運算符的物理執(zhí)行計劃,通過對比執(zhí)行計劃的代價選擇執(zhí)行算法的方法。其中,連接運算符的物理執(zhí)行計劃包括嵌套循環(huán)方法、哈希連接法和歸并連接法。枚舉法主要適用于以磁盤IO代價為主的高速局域網環(huán)境。------------------完--------------------------

第二篇:分布式數據庫總結6700字分布式數據庫系統及其應用復習大綱第一章分布式數據庫系統概述1、理解分布式數據庫系統的特點分布式數據庫系統的定義:分布式數據庫系統,通俗地說,是物理上分散而邏輯上集中的數據庫系統。分布式數據庫系統使用計算機網絡將地理位置分散而管理和控制又需要不同程度集中的多個邏輯單位(通常是集中是數據庫系統)連接起來,共同組成一個統一的數據庫系統。分布式數據庫系統的特點:1物理分布性:數據不是存放在一個站點上2邏輯整體性:是與分散式數據庫系統的區(qū)別3站點自治性:是與多處理機系統的區(qū)別4數據分布透明性5集中與自治相結合的控制機制6存在適當的數據冗余度7事務管理的分布性2、能夠按照不同標準描述分布式數據庫系統的分類按局部數據庫管理系統的數據模型分類:同構性(homogeneous)(分為同構同質型和同構異質型)DDBS和異構性(heterogeneous)DDBS按分布式數據庫系統的全局控制系統類型分類:全局控制集中型DDBS,全局控制分散型DDBS,全局控制可變型DDBS。3、理解分布式數據庫中數據的獨立性和分布透明性所謂數據獨立性是指用戶或用戶程序使用分布式數據庫如同使用集中式數據庫那樣,不必關心全局數據的分布情況,包括全局數據的邏輯分片情況、邏輯片段站點位置的分配情況,以及各站點上數據庫的數據模型等。也就是說,全局數據的邏輯分片、片段的物理位置分配,各站點數據庫的數據模型等情況對用戶和用戶程序透明。所以,在分布式數據庫中分布獨立性也稱為分布透明性。分布透明性包括三個層次:分片透明性(完全分布透明性):映像2位置透明性(中級分布透明性):映像3局部數據模型透明性(低級分布透明性):映像4無分布透明性:異構數據第二章分布式數據庫系統設計1、理解分布式數據庫的設計目標分布式數據庫設計的目標1分布式數據庫的本地性或近地性2控制數據的適當冗余3工作負荷分布4存儲的能力和費用2、理解水平分片的定義、分類和應用水平分片是對全局關系執(zhí)行“選擇操作”,把具有相同性質的元組進行分組,構成若干個不相交的子集。水平分片的方法可歸為初級分片和導出分片兩類。初級分片:以關系自身的屬性性質為基礎,執(zhí)行“選擇”操作,將關系分為若干個不相交的片段。例子2.1S(S#,SNAME,AGE,SEX)DefinefragmentS1asselect*fromwheresex=’M’DefinefragmentS2asselect*fromwheresex=’F’導出分片:全局關系的導出分片不是以其自身的屬性性質為基礎,而是從另一個關系的屬性性質或水平片段推導出來的。采用導出分片可片可使片段與片段之間的“連接”變得更容易。例2.3設全局關系SC(S#,C#,GRADE),S(S#,SNAME,AGE,SEX)若要將SC劃分為男生的各門課成績和女生的各門課成績,這就不可能從SC本身的屬性性質來執(zhí)行選擇,必須從關系S的屬性性質或水平片段來導出。DefinefragmentSC1asselectSC.S#,C#,GRADEfromSC,SwhereSC.S#=S.S#andSEX=’M’DefinefragmentSC2asselectSC.S#,C#,GRADEfromSC,SwhereSC.S#=S.S#andSEX=’F’如果S已經進行水平分片,分為SF和SM,分別為男生全體和女生全體,則上述的片段定義可以基于片段SF和SM導出:DefinefragmentSC1asselect*fromSCwhereS#in(selectSF.S#fromSF)DefinefragmentSC2asselect*fromSCwhereS#in(selectSM.S#fromSM)3、理解垂直分片的定義和應用一個全局關系的垂直分片是通過“投影”操作把它的屬性分為若干組。確定一個全局關系R的垂直分片需要根據應用以“同樣方式”(例如具有相同的使用頻率)訪問的屬性來進行分組。例2.4全局關系EMP(E#,NAME,SAL,TEL,MAGNUM,DEPT),主碼為E#。主要應用有:集中在站點3上的管理性應用要求查詢雇員的:NAME,SAL,TEL;和從其他站點發(fā)出的應用要求查詢雇員的:NAME,DEPT,MAGNUM。解:如果使用垂直分片:EMP1(E#,NAME,SAL,TEL)和EMP2(E#,MAGNUM,DEPT)則NAME屬性只屬于一個片段,對于上述的應用,必須進行連接操作和非本地訪問。如果使用垂直群集:EMP1(E#,NAME,SAL,TEL)和EMP2(E#,NAME,MAGNUM,DEPT)則對于上述應用,不需要執(zhí)行連接操作,且可實現較好的本地性。4、能夠描述分片的基本原則完備性原則:要把所有的數據映射到各個片斷中可重構原則:關系分片后的各個片斷可重構整個關系不相交原則:關系分片后的各個片斷不能重疊5、掌握數據片斷分配的分類和常用方法分配的簡化模型有:讀代價、寫代價、存儲代價和目標函數。常用方法:非冗余分配設計方法(包含最佳適應法和其他方法)和冗余分配的設計方法(包含所有得益站點法和附加復制法)6、掌握最佳適應法和所有得益站點法的基本特點最佳適應法是對每一種分配方式進行估算,然后選擇最佳的站點。這種方法不考慮把一個片段與一個相關片段放在同一站點的“相互”影響。特點:將片斷Ri分配到訪問Ri次數最多的那個站點上Bij=∑kFkj*Nki所有得益站點法:首先確定非復制為題的解,然后在全部站點中確定一組站點,給這組站點中的每一個站點分配片斷的一個副本,這樣做所得到的好處要比為此而付出的費用合算。特點:將片斷Ri的副本分配到所有得益站點j上Bij=∑kFkj*Rki-c*∑k∑j’≠jFkj*Uki如果Bij>0,則站點j是得益站點,放置Ri的一個副本7、能夠描述DATAID-D方法設計分布式數據庫的各個階段需求分析,概念設計,分布要求分析,全局邏輯設計,分布設計,局部邏輯設計,局部物理設計。邏輯設計分為全局邏輯設計和局部邏輯設計8、能夠根據給出的條件對關系進行具體分片,給出正確的限定關系上邊的例子。第三章分布式數據庫系統中的查詢處理和優(yōu)化1、掌握分布式數據庫查詢的分類局部查詢、遠程查詢和全局查詢2、理解關系代數運算的交換率?∪1(∪2(R))=∪2(∪1(R))條件:∪1∪2是選擇操作時總成立,∪1∪2是投影操作時要求其屬性集合相等∪1與∪2是投影和選擇操作時:πA1,?An(σF(R))=σF(πA1,?An(R))的條件是F中的屬性是A1,?.An的子集。R∞S=S∞RR×S=S×RR∪S=S∪RR∩S=S∩RR∝S≠?S∝RR-S≠?S-R3、掌握直接連接優(yōu)化算法的分類利用站點依賴信息的算法,分片與復制算法,站點依賴和數據復制結合算法,Hash劃分算法4、掌握半連接運算見P83-84例子5、掌握半連接和直接連接查詢優(yōu)化算法的區(qū)別取決于數據傳輸和局部處理的相對費用;如果傳輸費用是主要的,采用半連接;如果本地費用是主要的,采用直接連接,6、理解Hash劃分算法的特點1數據傳送量是R;2索引方面,比片段復制算法更低,3每個站點的連接數據量同站點依賴7、能夠描述基于半連接算法查詢優(yōu)化的基本原理和步驟基本原理是在傳到另一個站點做連接前,消除與連接無關的數據,減少做連接操作的數據量,從而減小傳輸代價步驟:1計算每種半連接方案的代價,并從中選擇一種最佳方案2選擇傳輸代價最小的站點,計算采用全連接的方案的代價3比較兩種方案,確定最優(yōu)方案8、能夠描述基于關系代數等價變換的查詢優(yōu)化算法原理、算法實現步驟原理:1查詢問題——〉關系代數表達式2分析得到查詢樹3進行全局到片段的變換得到基于片段的查詢樹4利用關系代數等價變換規(guī)則的優(yōu)化算法,盡可能先執(zhí)行選擇和投影操作算法:1連接和合并盡可能上提(樹根方向)2選擇和投影操作盡可能下移(葉子方向)實現步驟:轉換一:1查詢問題——〉關系代數表達式。2轉換二:關系代數表達式——〉查詢樹。3轉換三:全局查詢樹分拆成片段查詢樹。4優(yōu)化:利用關系代數等價變換規(guī)則的優(yōu)化算法,優(yōu)化查詢樹,進而優(yōu)化查詢9、能夠根據提供的條件完成分片和復制算法應用,通過計算判斷哪個關系保持分片最優(yōu)P88例3-6考試第四章分布式數據庫中的事務管理和恢復1、掌握事務的四大特性原子性(Atomicity),一致性(Consistency),持久性(Durability).隔離性(Isolation)2、能夠描述兩階段提交協議的工作流程兩階段提交協議的基本思想是:將本地原子性提交行為的效果擴展到分布式事務,保證了分布式事務提交的原子性,并在不損壞Log的情況下,實現快速故障恢復,提高DDB系統的可靠性.2PC把事務的提交過程分為兩個階段:第一階段:表決階段,目的是形成一個共同的決定首先,協調者給所有參與者發(fā)送“準備”消息,進入等待狀態(tài)其次,參與者收到“準備”消息后,檢查是否能夠提交本地事務如能,給協調者發(fā)送“建議提交”消息,進入就緒狀態(tài)如不能,給協調者發(fā)送“建議撤銷”消息,可以單方面撤銷第三,協調者收到所有參與者的消息后,他就做出是否提交事務的決定,只要有一個參與者投了反對票,就決定撤銷整個事務,發(fā)送“全局撤銷”消息給所有參與者,進入撤銷狀態(tài)否則,就決定提交整個事務,發(fā)送“全局提交”消息給所有參與者,進入提交狀態(tài)第二個階段:執(zhí)行階段,實現表決階段的決定,提交或者撤銷3、掌握事務故障的分類分布是數據庫的故障分布是數據庫的故障分為站點故障和通信故障。站點故障包括事務故障、系統故障和介質故障。事務故障包括計算溢出。完整性被破壞、操作員干預、輸入或輸出出錯等。通信故障分為報文故障和網絡分割故障。4、掌握分布式數據庫事務執(zhí)行的控制模型的分類分為三類:主從模型,三角模型,層次控制模型5、理解日志文件的特點日志文件保存到磁盤上。日志Log:記錄所有對DB的操作事務標識:每個事務給定一個具有惟一性的標識符Log記錄項:[start_transaction,T][write_item,T,x,舊值,新值][read_item,T,x][commit,T][abort,T]寫動作:寫Log比寫數據優(yōu)先Log存儲:一般存在盤上,還會定期備份到磁帶上6、理解分布式數據庫數據更新常見方法多站點數據更新、主文本更新法、快照方法7、理解故障恢復時檢查點知識檢查點(Checkpoint):設置一個周期性(時間/容量)操作點a)LogBuffer內容寫入Log數據集b)寫檢查點Log信息:當前活動事務表,每個事務最近一次Log記錄在Log文件中的位置c)DBBuffer內容寫入DBd)將本次檢查點Log項在Log文件中的地址記入“重啟動文件”8、能夠描述兩階段提交協議的特點:2PC協議的重要特點:1允許參與者單方面撤銷事務2一旦參與者確定了提交或撤銷協議,它就不能再更改它的提議3當參與者處于就緒狀態(tài)時,根據協調者發(fā)出的消息種類,它可以轉換為提交狀態(tài)或者撤銷狀態(tài)4協調者根據全局提交規(guī)則做出全局終止決定5協調者和參與者可能進入互相等待對方消息的狀態(tài),使用定時器,保證退出消息等待狀態(tài)第五章分布式數據庫中的并發(fā)控制1、理解封鎖的基本準則1事務T在執(zhí)行任何read_item(x)操作之前,必須先執(zhí)行read_lock(x)或者write_lock(x)操作2事務T在執(zhí)行任何write_item(x)操作之前,必須先執(zhí)行write_lock(x)操作3如果事務T執(zhí)行read_lock(x)操作,數據項x必須沒有加鎖或者已經加了讀鎖,否則事務T的這個操作不能進行4如果事務T執(zhí)行write_lock(x)操作,數據項x必須沒有加鎖,否則事務T的這個操作不能進行5事務T在完成所有read_item(x)和write_item(x)操作之后,必須執(zhí)行unlock(x)操作6如果事務T已經持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能再執(zhí)行read_lock(x)操作7如果事務T已經持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能再執(zhí)行write_lock(x)操作8如果事務T沒有持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能執(zhí)行unlock(x)操作2、理解基于時標的并發(fā)控制方法并發(fā)控制方法包含全局時標和局部時標3、掌握死鎖檢測的方法分類局部死鎖:僅在一個站點上發(fā)生的死鎖全局死鎖:涉及多個站點的死鎖(即等待圈由多個站點組成)4、理解一致性調度和可串行化調度的特點一致性調度:調度可以使得數據庫從一個一致性狀態(tài)轉變?yōu)榱硪粋€一致性狀態(tài),則稱調度為一致性調度可串行化調度:如果一個調度等價于某個串行調度,則該調度稱為可串行化調度。也就是說,該調度可以通過一系列非沖突動作的交換操作使其成為串行調度5、能夠描述死鎖發(fā)生的四個必要條件:會考試互斥條件:事務請求對資源的獨占控制等待條件:事務已持有分配給它的資源,又去申請并等待別的資源非搶占條件:直到資源被持有它的事務釋放前,不可能將資源強制從持有它的事務奪去循環(huán)等待條件:存在事務互相等待的等待圈6、能夠列舉并發(fā)控制算法悲觀并發(fā)控制法和樂觀并發(fā)控制法悲觀并發(fā)控制法有基于封鎖的算法、基于時標排序的算法和混合算法。樂觀的方法也可分為基于封鎖或基于時標排序的算法。第六章分布式數據庫中的可靠性1、理解可靠性和可用性的含義與關系可靠性:指數據庫在一給定時間間隔內不產生任何失敗的概率。它強調數據庫的正確性,要求數據庫正確運行。通常用來描述不可修復的系統。可用性:強調的是當需要訪問數據庫時,它是可用的。指在給定的時間點系統可以正常運行的概率。通常用于描述那些可以修復的系統。兩者關系:通常認為構建可用性的系統比可靠性的系統容易。兩者是統一的,可靠性高的系統可用性自然是好的。兩者又是矛盾的,增加錯誤風險的情況下,可提高可用性;采用太謹慎的策略會降低可用性2、理解兩階段提交協議如何轉為三階段提交協議2PC中的狀態(tài):C(提交)狀態(tài)是可提交狀態(tài),其它為不可提交狀態(tài)。Ready狀態(tài)是不可提交狀態(tài)。Wait狀態(tài)是不可提交狀態(tài)。它們都侵犯了非阻斷協議的充要條件,從而考慮改變2PC,使其滿足非阻斷協議條件。在Wait和Commit之間,或者在Ready和Commit之間加入另一種狀態(tài)作為緩沖狀態(tài),從而有了3PC協議3、掌握分布式可靠性協議的組成。簡答可靠性協議組成:包括提交、終結、恢復協議。提交和恢復協議詳細說明提交命令和恢復命令是如何執(zhí)行的。終結協議是分布式系統特有的協議。在執(zhí)行一個分布式事務時,若一個Site故障,希望其它Site也停止該事務。處理這種情況的技術就稱為終止協議。4、理解發(fā)生網絡分割時冗余分布式數據庫和非冗余數據庫采用的處理協議非冗余數據庫:任何需要訪問存儲在另一網絡區(qū)域里的數據項的新事務都被阻斷,等待網絡修復。位于同一區(qū)域里的數據項的并發(fā)訪問由并發(fā)控制算法處理。網絡分割時由提交協議處理冗余數據庫:分割時,副本可能位于不同的區(qū)域。由復制協議處理5、能夠描述三階段提交協議中事務協調者和參與者的狀態(tài)轉換P188頁圖6.4考試6、能夠采用版本號法進行不一致性檢測,并且應用于實際。大題需要首先發(fā)現哪些數據部分已經不一致(不一致性檢測)然后根據發(fā)生的情況,給這些部分賦予一個最合理的值(不一致性的解法)檢測方法:采用版本號P200頁例子第七章分布式數據庫的安全性與目錄管理1、理解分布式數據庫的動態(tài)授權語句的形式1用戶對自己生成的關系擁有全權,通過授權和收權語句完成對數據開放,保密的存取權授予(Grant,Revoke)。授權語句授權語句:Grant<權>To<用戶>WithGrantOption2訪問表(AT)法2、理解數據庫的安全性含義數據庫安全性包括兩個方面的內容:數據庫數據的保密性和安全性。

第三篇:數據庫總結5900字數據庫老師畫的重點數據庫:數據庫是長期存儲在計算機內、有組織、可共享的大數據集合。數據庫操縱功能:查詢select、插入insert、刪除delete、修改update數據庫系統的特點:1數據結構化2數據的共享高,冗余度低,易擴充3數據獨立性高4數據由DBMS統一管理和控制數據模型的組成要素:數據結構、數據操作、完整性約束概念模型:要出大體,畫圖信息世界中的基本概念————1、實體:客觀存在并可以相互區(qū)別的事物稱為實體2、屬性:實體所具有的某一特性3、碼(key):唯一標識實體的屬性集稱為碼4、域(domain):域是一組具有相同數據類型的集合5、實體型(entitytype):具有相同屬性的實體必然具有共同的特征和性質。用實體名及屬性名集合來抽象和刻畫同類實體,稱為實體型。6、實體集(entityset):同一類型的實體的集合7、聯系:在現實世界中,事物內部以及事物之間是有聯系的,這些聯系在信息世界中反應為實體(型)內部的聯系和實體(型)之間的聯系。實體內部的聯系通常是指組成實體的各屬性之間的聯系;實體之間的聯系通常是指不同實體集之間的聯系最常用的數據模型:1、層次模型(HierarchicalModel)2、網狀模型(NetworkModel)3、關系模型(RelationalModel)4、面向對象模型(ObjectOrientedModel)5、對象關系模型(ObjectRelationalModel)其中層次模型和網狀模型統稱為格式化模型數據庫系統的三級模式結構:1、模式(scheme):模式也稱邏輯模式,是數據庫中全體數據的邏輯結構和特征的描述,是所有用戶的公共數據視圖。他是數據庫系統模式結構的中間層,既不設計涉及數據的物理存儲細節(jié)和硬件環(huán)境,也與具體的應用程序、所使用的應用開發(fā)工具及高級程序設計語言無關。2、外模式(externalschema):外模式也稱為子模式(subschema)或用戶模式,他是數據庫用戶(包括應用程序員和最終用戶)能看見和使用的局部數據的邏輯結構和特征的描述,是數據庫用戶的數據視圖,是與某一應用有關的數據的邏輯表示。3、內模式(internalscheme):內模式也稱存儲模式(storageschema),一個數據庫只有一個內模式。他是數據庫物理結構和存儲方式的描述,是數據在數據庫內部的表達方式。數據庫的二級映像功能與數據庫獨立性————為了能夠在系統內部實現這3個抽象層次的聯系和轉換,數據庫管理系統在這三個模式之間提供了兩層映像:·外模式/模式映像·模式/內模式映像正是這兩層映像保證了數據庫系統中的數據能夠具有較高的邏輯獨立性和物理獨立性關系(relation):D1*D2*D3··*Dn的子集叫做在域D1、D2、D3···Dn上的關系,表示為R(D1、D2、D3···Dn)這里的的R表示關系的名字,n是關系的目或度(degree)關系中每個元素是關系中的元組,通常用t表示當n=1時,稱關系為單元關系(unaryrelation),或一元關系當n=2時,稱該關系為二元關系(binaryrelation)關系是笛卡爾積的有限子集,所以關系也是一個二維表,表的每行對應一個元組,表的每列對應一個域。由于域可以相同,為了加以區(qū)分,必須對每列起一個名字,稱為屬性(attribute)。n目關系必有n個屬性。若關系中的某一屬性組的值能夠唯一的標識一個元組,則稱該屬性組為候選碼(candidatekey)若一個關系有多個候選碼,則選定其中一個為主碼(primarykey)候選碼的諸屬性稱為主屬性(primeattribute)。不包含在任何候選碼中的屬性稱為非主屬性(non-primeattribute)或非碼屬性(non-keyattribute)P46沒有搞明白干嘛使得!?。。。。。。。。。。。。。。。。。。。£P系的三類完整性約束:實體完整性、參照完整性、用戶定義的完整性實體完整性和參照完整性被稱作關系的兩個不變性1、實體完整性(entityintegrity):主碼中的屬性即主屬性不能取空值2、參照完整性(referentialintegrity):若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的的主碼K相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須為:·或者取空值(F的每個屬性值均為空值)·或者等于S中某個元組的主碼值SQL(StructuredQueryLanguage),即結構化查詢語言,是關系數據庫的標準語言。SQL的特點:1、綜合統一2、高度非過程化3、面向集合的操作方式4、以同一種語法結構提供多種使用方式5、語言簡潔、易學易用SQL的動詞:數據查詢:select數據定義:create、drop、alter(房間)修改表數據操縱:insert、update(家具)修改數據、delete數據控制:grant、revoke繪制ER圖————在ER圖中有如下四個成分:矩形框:表示實體,在框中記入實體名。菱形框:表示聯系,在框中記入聯系名。橢圓形框:表示實體或聯系的屬性,將屬性名記入框中。對于主屬性名,則在其名稱下劃一下劃線。連線:實體與屬性之間;實體與聯系之間;聯系與屬性之間用直線相連,并在直線上標注聯系的類型。(對于一對一聯系,要在兩個實體連線方向各寫1;對于一對多聯系,要在一的一方寫1,多的一方寫N;對于多對多關系,則要在兩個實體連線方向各寫N,M?;颈硎潜旧愍毩⒋嬖诘谋?,在SQL中一個關系就對應一個基本表。一個(或多個)基本表對應一個存儲文件,一個表可以帶若干索引,索引也可以放在存儲文件中。存儲文件的邏輯結構組成了關系數據庫的內模式。存儲文件的物理結構是任意的,對用戶是透明的。視圖是從一個或幾個基本表導出的表。它本身不獨立存儲在數據庫中,即數據庫中只存放視圖的定義而不存放視圖對應的數據。這些數據仍存放在導出視圖的基本表中,因此視圖是一個虛表。視圖在概念上與基本表等同,用戶可以在視圖上再定義視圖?;颈淼亩x、刪除與修改:1、定義基本表:createtable***()2、定義主鍵:Primarykey==notnull(中間不用連接符號)unique3、定義外碼的語句:foreignkey(某個字段)references某表(某字段)4、定義主碼語句:primarykey(***,***)5、修改基本表:altertable某表名add列名<數據類型>[完整性約束]drop<完整性約束名>(字段名)altercolumn<列名><數據類型>6、刪除表:droptable表名[restrict|cascade級聯刪除]7、建立索引:create[unique][clustered]index索引名on表名(列名[asc|desc],······)·clustered表示是聚簇索引·unique表明此索引的每一個索引值只對應唯一的數據記錄·用戶可以在最經常查詢的列上建立聚簇索引以提高查詢效率·在一個基本表上只能建立一個聚簇索引·建立局促索引后,更新該索引列上的數據時,往往導致表中記錄的物理順序的額變更,代價較大,因此對于經常更新的列不宜建立聚簇索引8、刪除索引:dropindex<索引名>上機的時候不太一樣:dropindex表名。索引名字9、數據的查詢:select[all|distinct]<目標列表達式>,······from表名或者視圖名,···where條件表達式groupby列名1[having條件表達式]orderby列名2[asc|desc]·如果有groupby子句,則結果按“列名1”的值進行分組,該屬性列值相等的元組為一個組。通常會在每組中作用聚集函數。如果groupby子句帶having短語,則只有滿足指定條件的組才予以輸出。·如果有orderby子句,則結果表按“列名2”的值的升序或降序排序·selectSnameName,‘YearofBirth:’Birth,20xx-SageBirthday,lower(Sdept)DepartmentfromStudentlower表示小寫常用的查詢條件————比較:大于、等于、小于、不等于(<>/!=)、大于/小于等于、不小于、不大于、not+上述比較運算符確定范圍:betweenand,notbetweenand確定集合:in,notin字符匹配:like,notlike空值:isnull,isnotnull多重條件(邏輯運算):and,or,not例子————·selectSname,SagefromStudentwhereSdept(not)in(‘cs’,‘ma’,‘is’)字符匹配:[not]like‘字符串’[escape‘換嗎字符’]百分號表示任意長度、下劃線表示任意單個字符聚集函數————count([distinct|all]*)統計元組個數count([distinct|all]列名)統計一列中值的個數sum([distinct|all]列名)計算一列值的總和(此列必須是數值型)avg([distinct|all]列名)計算一列的平局值(此列必須是數值型)max([distinct|all]列名)求一列中的最大值min·如果指定distinct短語,則表示在計算時要取消指定列中的重復值。如果不指定distinct短語或者指定all短語(all為缺省值),則表示不取消重復。·注意在聚集函數遇到空值時,除count(*)外,都跳過空值而只處理非空值?!ぷ⒁鈝here子句中不能用聚集函數作為條件表達式groupby子句————where子句與having短語的區(qū)別在于作用對象不同。Where子句作用對象作用于基本表或試圖,從中選擇條件的元組。Having短語作用于組,從中選擇滿足條件的組。例子:selectSnofromSCgroupbySnohavingcount(*)>3查詢了選修3門以上課程的學生學號鏈接查詢——————例子:非自然鏈接·selectStudent.*,SC.*fromStudent,SCWhereStudent.Sno=SC.Sno自然鏈接·selectStudent.Sno,Sname,Ssex,Sage,Sdept,Cno,GradefromStudent,SCwhereStudent.Sno=SC.Sno自身鏈接·selectFIRST.Cno,SECOND.CpnofromCourseFIRST,CourseSECONDwhereFIRST.Cpno=SECOND.Cpno外連接·selectStudent.Sno,Sname,Sage,Sdept,Cno,GradefromStudentleftouterjoinSConStudent.Sno=SC.Sno·左外鏈接列出左邊關系中所有的元組,右外連接列出右邊關系中的所有元組嵌套查詢·selectSnamefromStudentwhereSnoin(selectSnofromSCwhereCno=‘2’)·找出每個學生超過他選修課程平均成績的課程號SelectSno,CnoFromSCxWhereGrade>=(selectavg(Grade)FromSCyWherey.Sno=x.Sno)授權————Grant權限,·····On對象類型對象名,·····To用戶,·····[withgrantoption]只一句表示權限的傳遞例子:·GrantallprivilegesOnStudent,CourseToU1,U2·grantupdate(Sno),selectonStudenttou4·revokeupdate(Sno)ontableStudentfromu4一個滿足BCNF的關系模式有:·所有非主屬性對每一個碼都是完全函數依賴3NF編輯3NF,即第三范式是要求一個數據庫表中不包含已在其它表中已包含的非主關鍵字信息。例如,存在一個部門信息表,其中每個部門有部門編號(dept_id)、部門名稱、部門簡介等信息。那么在員工信息表中列出部門編號后就不能再將部門名稱、部門簡介等與部門有關的信息再加入員工信息表中。如果不存在部門信息表,則根據第三范式(3NF)也應該構建它,否則就會有大量的數據冗余。簡而言之,第三范式就是屬性不依賴于其它非主屬性。滿足第三范式(3NF)必須先滿足第二范式(2NF)2NF(第二范式)第二范式(2NF)是在第一范式(1NF)的基礎上建立起來的,即滿足第二范式(2NF)必須先滿足第一范式(1NF)。第二范式(2NF)要求數據庫表中的每個實例或行必須可以被唯一地區(qū)分。為實現區(qū)分通常需要為表加上一個列,以存儲各個實例的唯一標識。如圖3-2員工信息表中加上了員工編號(emp_id)列,因為每個員工的員工編號是唯一的,因此每個員工可以被唯一區(qū)分。這個惟一屬性列被稱為主關鍵字或主鍵、主碼。+分布式數據庫總結發(fā)表于:2023.1.1來自:字數:1735手機看范文分布式數據庫介紹自學、整理、備忘它和集中式操作系統的區(qū)別在于資源管理、進程通信和系統結構等方面。分布式程序設計語言用于編寫運行于分布式計算機系統上的分布式程序。一個分布式程序由若干個可以獨立執(zhí)行的程序模塊組成,它們分布于一個分布式處理系統的多臺計算機上被同時執(zhí)行。它與集中式的程序設計語言相比有三個特點:分布性、通信性和穩(wěn)健性。分布式文件系統具有執(zhí)行遠程文件存取的能力,并以透明方式對分布在網絡上的文件進行管理和存取。分布式數據庫系統由分布于多個計算機結點上的若干個數據庫系統組成,它提供有效的存取手段來操縱這些結點上的子數據庫。分布式數據庫在使用上可視為一個完整的數據庫,而實際上它是分布在地理分散的各個結點上。當然,分布在各個結點上的子數據庫在邏輯上是相關的。主要特點:????多數處理就地完成各地的計算機由數據通信網絡相聯系克服了中心數據庫的弱點:降低了數據傳輸代價提高了系統的可靠性,局部系統發(fā)生故障,其他部分還可繼續(xù)工作?各個數據庫的位置是透明的,方便系統的擴充?為了協調整個系統的事務活動,事務管理的性能花費高體系結構:分布式數據庫系統抽象為4層的結構模式,4層模式劃分為全局外層、全局概念層、局部概念層和局部內層,在各層間還有相應的層間映射。這種4層模式適用于同構型分布式數據庫系統,也適用于異構型分布式數據庫系統數據分片類型:1)水平分片:按一定的條件把全局關系的所有元組劃分成若干不相交的子集,每個子集為關系的一個片段。(2)垂直分片:把一個全局關系的屬性集分成若干子集,并在這些子集上作投影運算,每個投影稱為垂直分片。(3)導出分片:又稱為導出水平分片,即水平分片的條件不是本關系屬性的條件,而是其他關系屬性的條件。(4)混合分片:以上三種方法的混合??梢韵人椒制俅怪狈制?,或先垂直分片再水平分片,或其他形式,但他們的結果是不相同的。條件:(1)完備性條件:必須把全局關系的所有數據映射到片段中,決不允許有屬于全局關系的數據卻不屬于它的任何一個片段。(2)可重構條件:必須保證能夠由同一個全局關系的各個片段來重建該全局關系。對于水平分片可用并操作重構全局關系;對于垂直分片可用聯接操作重構全局關系。(3)不相交條件:要求一個全局關系被分割后所得的各個數據片段互不重疊(對垂直分片的主鍵除外)。數據分配方式:(1)集中式:所有數據片段都安排在同一個場地上。(2)分割式:所有數據只有一份,它被分割成若干邏輯片段,每個邏輯片段被指派在一個特定的場地上。(3)全復制式:數據在每個場地重復存儲。也就是每個場地上都有一個完整的數據副本。(4)混合式:這是一種介乎于分割式和全復制式之間的分配方式。目前分布式數據庫分配的設計,越來越多的采用尋找最優(yōu)解的算法,比如遺傳算法、退火機制等查詢優(yōu)化:指在執(zhí)行分布式查詢時選擇查詢執(zhí)行計劃的方法和關系運算符的實現算法。根據系統環(huán)境的不同,查詢優(yōu)化所使用的算法也有所不同,通常分為遠程廣域網環(huán)境和高速局域網環(huán)境,其區(qū)別主要在網絡的帶寬。對于一元運算符可以采用集中式數據庫中的查詢優(yōu)化方法。而對于二元運算符,由于涉及場地間的數據傳輸,因此必須考慮通信代價。分布式查詢中常見的連接運算執(zhí)行策略包括:(1)半連接方法:利用半連接運算的轉換方法R∞S=(RµS)∞S。假設場地1和場地2上分別有關系R和關系S,首先在S上執(zhí)行連接屬性上的投影并將結果傳輸至場地1,在場地1上執(zhí)行關系R與投影的連接操作,再將結果傳輸至場地2與關系S執(zhí)行連接操作。這種方法能夠降低執(zhí)行連接運算時的網絡通信代價,主要適用于帶寬較低的遠程廣域網絡。(2)枚舉法方法:指枚舉關系運算符的物理執(zhí)行計劃,通過對比執(zhí)行計劃的代價選擇執(zhí)行算法的方法。其中,連接運算符的物理執(zhí)行計劃包括嵌套循環(huán)方法、哈希連接法和歸并連接法。枚舉法主要適用于以磁盤IO代價為主的高速局域網環(huán)境。------------------完--------------------------

第二篇:分布式數據庫總結6700字分布式數據庫系統及其應用復習大綱第一章分布式數據庫系統概述1、理解分布式數據庫系統的特點分布式數據庫系統的定義:分布式數據庫系統,通俗地說,是物理上分散而邏輯上集中的數據庫系統。分布式數據庫系統使用計算機網絡將地理位置分散而管理和控制又需要不同程度集中的多個邏輯單位(通常是集中是數據庫系統)連接起來,共同組成一個統一的數據庫系統。分布式數據庫系統的特點:1物理分布性:數據不是存放在一個站點上2邏輯整體性:是與分散式數據庫系統的區(qū)別3站點自治性:是與多處理機系統的區(qū)別4數據分布透明性5集中與自治相結合的控制機制6存在適當的數據冗余度7事務管理的分布性2、能夠按照不同標準描述分布式數據庫系統的分類按局部數據庫管理系統的數據模型分類:同構性(homogeneous)(分為同構同質型和同構異質型)DDBS和異構性(heterogeneous)DDBS按分布式數據庫系統的全局控制系統類型分類:全局控制集中型DDBS,全局控制分散型DDBS,全局控制可變型DDBS。3、理解分布式數據庫中數據的獨立性和分布透明性所謂數據獨立性是指用戶或用戶程序使用分布式數據庫如同使用集中式數據庫那樣,不必關心全局數據的分布情況,包括全局數據的邏輯分片情況、邏輯片段站點位置的分配情況,以及各站點上數據庫的數據模型等。也就是說,全局數據的邏輯分片、片段的物理位置分配,各站點數據庫的數據模型等情況對用戶和用戶程序透明。所以,在分布式數據庫中分布獨立性也稱為分布透明性。分布透明性包括三個層次:分片透明性(完全分布透明性):映像2位置透明性(中級分布透明性):映像3局部數據模型透明性(低級分布透明性):映像4無分布透明性:異構數據第二章分布式數據庫系統設計1、理解分布式數據庫的設計目標分布式數據庫設計的目標1分布式數據庫的本地性或近地性2控制數據的適當冗余3工作負荷分布4存儲的能力和費用2、理解水平分片的定義、分類和應用水平分片是對全局關系執(zhí)行“選擇操作”,把具有相同性質的元組進行分組,構成若干個不相交的子集。水平分片的方法可歸為初級分片和導出分片兩類。初級分片:以關系自身的屬性性質為基礎,執(zhí)行“選擇”操作,將關系分為若干個不相交的片段。例子2.1S(S#,SNAME,AGE,SEX)DefinefragmentS1asselect*fromwheresex=’M’DefinefragmentS2asselect*fromwheresex=’F’導出分片:全局關系的導出分片不是以其自身的屬性性質為基礎,而是從另一個關系的屬性性質或水平片段推導出來的。采用導出分片可片可使片段與片段之間的“連接”變得更容易。例2.3設全局關系SC(S#,C#,GRADE),S(S#,SNAME,AGE,SEX)若要將SC劃分為男生的各門課成績和女生的各門課成績,這就不可能從SC本身的屬性性質來執(zhí)行選擇,必須從關系S的屬性性質或水平片段來導出。DefinefragmentSC1asselectSC.S#,C#,GRADEfromSC,SwhereSC.S#=S.S#andSEX=’M’DefinefragmentSC2asselectSC.S#,C#,GRADEfromSC,SwhereSC.S#=S.S#andSEX=’F’如果S已經進行水平分片,分為SF和SM,分別為男生全體和女生全體,則上述的片段定義可以基于片段SF和SM導出:DefinefragmentSC1asselect*fromSCwhereS#in(selectSF.S#fromSF)DefinefragmentSC2asselect*fromSCwhereS#in(selectSM.S#fromSM)3、理解垂直分片的定義和應用一個全局關系的垂直分片是通過“投影”操作把它的屬性分為若干組。確定一個全局關系R的垂直分片需要根據應用以“同樣方式”(例如具有相同的使用頻率)訪問的屬性來進行分組。例2.4全局關系EMP(E#,NAME,SAL,TEL,MAGNUM,DEPT),主碼為E#。主要應用有:集中在站點3上的管理性應用要求查詢雇員的:NAME,SAL,TEL;和從其他站點發(fā)出的應用要求查詢雇員的:NAME,DEPT,MAGNUM。解:如果使用垂直分片:EMP1(E#,NAME,SAL,TEL)和EMP2(E#,MAGNUM,DEPT)則NAME屬性只屬于一個片段,對于上述的應用,必須進行連接操作和非本地訪問。如果使用垂直群集:EMP1(E#,NAME,SAL,TEL)和EMP2(E#,NAME,MAGNUM,DEPT)則對于上述應用,不需要執(zhí)行連接操作,且可實現較好的本地性。4、能夠描述分片的基本原則完備性原則:要把所有的數據映射到各個片斷中可重構原則:關系分片后的各個片斷可重構整個關系不相交原則:關系分片后的各個片斷不能重疊5、掌握數據片斷分配的分類和常用方法分配的簡化模型有:讀代價、寫代價、存儲代價和目標函數。常用方法:非冗余分配設計方法(包含最佳適應法和其他方法)和冗余分配的設計方法(包含所有得益站點法和附加復制法)6、掌握最佳適應法和所有得益站點法的基本特點最佳適應法是對每一種分配方式進行估算,然后選擇最佳的站點。這種方法不考慮把一個片段與一個相關片段放在同一站點的“相互”影響。特點:將片斷Ri分配到訪問Ri次數最多的那個站點上Bij=∑kFkj*Nki所有得益站點法:首先確定非復制為題的解,然后在全部站點中確定一組站點,給這組站點中的每一個站點分配片斷的一個副本,這樣做所得到的好處要比為此而付出的費用合算。特點:將片斷Ri的副本分配到所有得益站點j上Bij=∑kFkj*Rki-c*∑k∑j’≠jFkj*Uki如果Bij>0,則站點j是得益站點,放置Ri的一個副本7、能夠描述DATAID-D方法設計分布式數據庫的各個階段需求分析,概念設計,分布要求分析,全局邏輯設計,分布設計,局部邏輯設計,局部物理設計。邏輯設計分為全局邏輯設計和局部邏輯設計8、能夠根據給出的條件對關系進行具體分片,給出正確的限定關系上邊的例子。第三章分布式數據庫系統中的查詢處理和優(yōu)化1、掌握分布式數據庫查詢的分類局部查詢、遠程查詢和全局查詢2、理解關系代數運算的交換率?∪1(∪2(R))=∪2(∪1(R))條件:∪1∪2是選擇操作時總成立,∪1∪2是投影操作時要求其屬性集合相等∪1與∪2是投影和選擇操作時:πA1,?An(σF(R))=σF(πA1,?An(R))的條件是F中的屬性是A1,?.An的子集。R∞S=S∞RR×S=S×RR∪S=S∪RR∩S=S∩RR∝S≠?S∝RR-S≠?S-R3、掌握直接連接優(yōu)化算法的分類利用站點依賴信息的算法,分片與復制算法,站點依賴和數據復制結合算法,Hash劃分算法4、掌握半連接運算見P83-84例子5、掌握半連接和直接連接查詢優(yōu)化算法的區(qū)別取決于數據傳輸和局部處理的相對費用;如果傳輸費用是主要的,采用半連接;如果本地費用是主要的,采用直接連接,6、理解Hash劃分算法的特點1數據傳送量是R;2索引方面,比片段復制算法更低,3每個站點的連接數據量同站點依賴7、能夠描述基于半連接算法查詢優(yōu)化的基本原理和步驟基本原理是在傳到另一個站點做連接前,消除與連接無關的數據,減少做連接操作的數據量,從而減小傳輸代價步驟:1計算每種半連接方案的代價,并從中選擇一種最佳方案2選擇傳輸代價最小的站點,計算采用全連接的方案的代價3比較兩種方案,確定最優(yōu)方案8、能夠描述基于關系代數等價變換的查詢優(yōu)化算法原理、算法實現步驟原理:1查詢問題——〉關系代數表達式2分析得到查詢樹3進行全局到片段的變換得到基于片段的查詢樹4利用關系代數等價變換規(guī)則的優(yōu)化算法,盡可能先執(zhí)行選擇和投影操作算法:1連接和合并盡可能上提(樹根方向)2選擇和投影操作盡可能下移(葉子方向)實現步驟:轉換一:1查詢問題——〉關系代數表達式。2轉換二:關系代數表達式——〉查詢樹。3轉換三:全局查詢樹分拆成片段查詢樹。4優(yōu)化:利用關系代數等價變換規(guī)則的優(yōu)化算法,優(yōu)化查詢樹,進而優(yōu)化查詢9、能夠根據提供的條件完成分片和復制算法應用,通過計算判斷哪個關系保持分片最優(yōu)P88例3-6考試第四章分布式數據庫中的事務管理和恢復1、掌握事務的四大特性原子性(Atomicity),一致性(Consistency),持久性(Durability).隔離性(Isolation)2、能夠描述兩階段提交協議的工作流程兩階段提交協議的基本思想是:將本地原子性提交行為的效果擴展到分布式事務,保證了分布式事務提交的原子性,并在不損壞Log的情況下,實現快速故障恢復,提高DDB系統的可靠性.2PC把事務的提交過程分為兩個階段:第一階段:表決階段,目的是形成一個共同的決定首先,協調者給所有參與者發(fā)送“準備”消息,進入等待狀態(tài)其次,參與者收到“準備”消息后,檢查是否能夠提交本地事務如能,給協調者發(fā)送“建議提交”消息,進入就緒狀態(tài)如不能,給協調者發(fā)送“建議撤銷”消息,可以單方面撤銷第三,協調者收到所有參與者的消息后,他就做出是否提交事務的決定,只要有一個參與者投了反對票,就決定撤銷整個事務,發(fā)送“全局撤銷”消息給所有參與者,進入撤銷狀態(tài)否則,就決定提交整個事務,發(fā)送“全局提交”消息給所有參與者,進入提交狀態(tài)第二個階段:執(zhí)行階段,實現表決階段的決定,提交或者撤銷3、掌握事務故障的分類分布是數據庫的故障分布是數據庫的故障分為站點故障和通信故障。站點故障包括事務故障、系統故障和介質故障。事務故障包括計算溢出。完整性被破壞、操作員干預、輸入或輸出出錯等。通信故障分為報文故障和網絡分割故障。4、掌握分布式數據庫事務執(zhí)行的控制模型的分類分為三類:主從模型,三角模型,層次控制模型5、理解日志文件的特點日志文件保存到磁盤上。日志Log:記錄所有對DB的操作事務標識:每個事務給定一個具有惟一性的標識符Log記錄項:[start_transaction,T][write_item,T,x,舊值,新值][read_item,T,x][commit,T][abort,T]寫動作:寫Log比寫數據優(yōu)先Log存儲:一般存在盤上,還會定期備份到磁帶上6、理解分布式數據庫數據更新常見方法多站點數據更新、主文本更新法、快照方法7、理解故障恢復時檢查點知識檢查點(Checkpoint):設置一個周期性(時間/容量)操作點a)LogBuffer內容寫入Log數據集b)寫檢查點Log信息:當前活動事務表,每個事務最近一次Log記錄在Log文件中的位置c)DBBuffer內容寫入DBd)將本次檢查點Log項在Log文件中的地址記入“重啟動文件”8、能夠描述兩階段提交協議的特點:2PC協議的重要特點:1允許參與者單方面撤銷事務2一旦參與者確定了提交或撤銷協議,它就不能再更改它的提議3當參與者處于就緒狀態(tài)時,根據協調者發(fā)出的消息種類,它可以轉換為提交狀態(tài)或者撤銷狀態(tài)4協調者根據全局提交規(guī)則做出全局終止決定5協調者和參與者可能進入互相等待對方消息的狀態(tài),使用定時器,保證退出消息等待狀態(tài)第五章分布式數據庫中的并發(fā)控制1、理解封鎖的基本準則1事務T在執(zhí)行任何read_item(x)操作之前,必須先執(zhí)行read_lock(x)或者write_lock(x)操作2事務T在執(zhí)行任何write_item(x)操作之前,必須先執(zhí)行write_lock(x)操作3如果事務T執(zhí)行read_lock(x)操作,數據項x必須沒有加鎖或者已經加了讀鎖,否則事務T的這個操作不能進行4如果事務T執(zhí)行write_lock(x)操作,數據項x必須沒有加鎖,否則事務T的這個操作不能進行5事務T在完成所有read_item(x)和write_item(x)操作之后,必須執(zhí)行unlock(x)操作6如果事務T已經持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能再執(zhí)行read_lock(x)操作7如果事務T已經持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能再執(zhí)行write_lock(x)操作8如果事務T沒有持有數據項x上的一個讀鎖或者一個寫鎖,那么它不能執(zhí)行unlock(x)操作2、理解基于時標的并發(fā)控制方法并發(fā)控制方法包含全局時標和局部時標3、掌握死鎖檢測的方法分類局部死鎖:僅在一個站點上發(fā)生的死鎖全局死鎖:涉及多個站點的死鎖(即等待圈由多個站點組成)4、理解一致性調度和可串行化調度的特點一致性調度:調度可以使得數據庫從一個一致性狀態(tài)轉變?yōu)榱硪粋€一致性狀態(tài),則稱調度為一致性調度可串行化調度:如果一個調度等價于某個串行調度,則該調度稱為可串行化調度。也就是說,該調度可以通過一系列非沖突動作的交換操作使其成為串行調度5、能夠描述死鎖發(fā)生的四個必要條件:會考試互斥條件:事務請求對資源的獨占控制等待條件:事務已持有分配給它的資源,又去申請并等待別的資源非搶占條件:直到資源被持有它的事務釋放前,不可能將資源強制從持有它的事務奪去循環(huán)等待條件:存在事務互相等待的等待圈6、能夠列舉并發(fā)控制算法悲觀并發(fā)控制法和樂觀并發(fā)控制法悲觀并發(fā)控制法有基于封鎖的算法、基于時標排序的算法和混合算法。樂觀的方法也可分為基于封鎖或基于時標排序的算法。第六章分布式數據庫中的可靠性1、理解可靠性和可用性的含義與關系可靠性:指數據庫在一給定時間間隔內不產生任何失敗的概率。它強調數據庫的正確性,要求數據庫正確運行。通常用來描述不可修復的系統。可用性:強調的是當需要訪問數據庫時,它是可用的。指在給定的時間點系統可以正常運行的概率。通常用于描述那些可以修復的系統。兩者關系:通常認為構建可用性的系統比可靠性的系統容易。兩者是統一的,可靠性高的系統可用性自然是好的。兩者又是矛盾的,增加錯誤風險的情況下,可提高可用性;采用太謹慎的策略會降低可用性2、理解兩階段提交協議如何轉為三階段提交協議2PC中的狀態(tài):C(提交)狀態(tài)是可提交狀態(tài),其它為不可提交狀態(tài)。Ready狀態(tài)是不可提交狀態(tài)。Wait狀態(tài)是不可提交狀態(tài)。它們都侵犯了非阻斷協議的充要條件,從而考慮改變2PC,使其滿足非阻斷協議條件。在Wait和Commit之間,或者在Ready和Commit之間加入另一種狀態(tài)作為緩沖狀態(tài),從而有了3PC協議3、掌握分布式可靠性協議的組成。簡答可靠性協議組成:包括提交、終結、恢復協議。提交和恢復協議詳細說明提交命令和恢復命令是如何執(zhí)行的。終結協議是分布式系統特有的協議。在執(zhí)行一個分布式事務時,若一個Site故障,希望其它Site也停止該事務。處理這種情況的技術就稱為終止協議。4、理解發(fā)生網絡分割時冗余分布式數據庫和非冗余數據庫采用的處理協議非冗余數據庫:任何需要訪問存儲在另一網絡區(qū)域里的數據項的新事務都被阻斷,等待網絡修復。位于同一區(qū)域里的數據項的并發(fā)訪問由并發(fā)控制算法處理。網絡分割時由提交協議處理冗余數據庫:分割時,副本可能位于不同的區(qū)域。由復制協議處理5、能夠描述三階段提交協議中事務協調者和參與者的狀態(tài)轉換P188頁圖6.4考試6、能夠采用版本號法進行不一致性檢測,并且應用于實際。大題需要首先發(fā)現哪些數據部分已經不一致(不一致性檢測)然后根據發(fā)生的情況,給這些部分賦予一個最合理的值(不一致性的解法)檢測方法:采用版本號P200頁例子第七章分布式數據庫的安全性與目錄管理1、理解分布式數據庫的動態(tài)授權語句的形式1用戶對自己生成的關系擁有全權,通過授權和收權語句完成對數據開放,保密的存取權授予(Grant,Revoke)。授權語句授權語句:Grant<權>To<用戶>WithGrantOption2訪問表(AT)法2、理解數據庫的安全性含義數據庫安全性包括兩個方面的內容:數據庫數據的保密性和安全性。

第三篇:數據庫總結5900字數據庫老師畫的重點數據庫:數據庫是長期存儲在計算機內、有組織、可共享的大數據集合。數據庫操縱功能:查詢select、插入insert、刪除delete、修改update數據庫系統的特點:1數據結構化2數據的共享高,冗余度低,易擴充3數據獨立性高4數據由DBMS統一管理和控制數據模型的組成要素:數據結構、數據操作、完整性約束概念模型:要出大體,畫圖信息世界中的基本概念————1、實體:客觀存在并可以相互區(qū)別的事物稱為實體2、屬性:實體所具有的某一特性3、碼(key):唯一標識實體的屬性集稱為碼4、域(domain):域是一組具有相同數據類型的集合5、實體型(entitytype):具有相同屬性的實體必然具有共同的特征和性質。用實體名及屬性名集合來抽象和刻畫同類實體,稱為實體型。6、實體集(entityset):同一類型的實體的集合7、聯系:在現實世界中,事物內部以及事物之間是有聯系的,這些聯系在信息世界中反應為實體(型)內部的聯系和實體(型)之間的聯系。實體內部的聯系通常是指組成實體的各屬性之間的聯系;實體之間的聯系通常是指不同實體集之間的聯系最常用的數據模型:1、層次模型(HierarchicalModel)2、網狀模型(NetworkModel)3、關系模型(RelationalModel)4、面向對象模型(ObjectOrientedModel)5、對象關系模型(ObjectRelationalModel)其中層次模型和網狀模型統稱為格式化模型數據庫系統的三級模式結構:1、模式(scheme):模式也稱邏輯模式,是數據庫中全體數據的邏輯結構和特征的描述,是所有用戶的公共數據視圖。他是數據庫系統模式結構的中間層,既不設計涉及數據的物理存儲細節(jié)和硬件環(huán)境,也與具體的應用程序、所使用的應用開發(fā)工具及高級程序設計語言無關。2、外模式(externalschema):外模式也稱為子模式(subschema)或用戶模式,他是數據庫用戶(包括應用程序員和最終用戶)能看見和使用的局部數據的邏輯結構和特征的描述,是數據庫用戶的數據視圖,是與某一應用有關的數據的邏輯表示。3、內模式(internalscheme):內模式也稱存儲模式(storageschema),一個數據庫只有一個內模式。他是數據庫物理結構和存儲方式的描述,是數據在數據庫內部的表達方式。數據庫的二級映像功能與數據庫獨立性————為了能夠在系統內部實現這3個抽象層次的聯系和轉換,數據庫管理系統在這三個模式之間提供了兩層映像:·外模式/模式映像·模式/內模式映像正是這兩層映像保證了數據庫系統中的數據能夠具有較高的邏輯獨立性和物理獨立性關系(relation):D1*D2*D3··*Dn的子集叫做在域D1、D2、D3···Dn上的關系,表示為R(D1、D2、D3···Dn)這里的的R表示關系的名字,n是關系的目或度(degree)關系中每個元素是關系中的元組,通常用t表示當n=1時,稱關系為單元關系(unaryrelation),或一元關系當n=2時,稱該關系為二元關系(binaryrelation)關系是笛卡爾積的有限子集,所以關系也是一個二維表,表的每行對應一個元組,表的每列對應一個域。由于域可以相同,為了加以區(qū)分,必須對每列起一個名字,稱為屬性(attribute)。n目關系必有n個屬性。若關系中的某一屬性組的值能夠唯一的標識一個元組,則稱該屬性組為候選碼(candidatekey)若一個關系有多個候選碼,則選定其中一個為主碼(primarykey)候選碼的諸屬性稱為主屬性(primeattribute)。不包含在任何候選碼中的屬性稱為非主屬性(non-primeattribute)或非碼屬性(non-keyattribute)P46沒有搞明白干嘛使得?。。。。。。。。。。。。。。。。。。。?!關系的三類完整性約束:實體完整性、參照完整性、用戶定義的完整性實體完整性和參照完整性被稱作關系的兩個不變性1、實體完整性(entityintegrity):主碼中的屬性即主屬性不能取空值2、參照完整性(referentialintegrity):若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的的主碼K相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須為:·或者取空值(F的每個屬性值均為空值)·或者等于S中某個元組的主碼值SQL(StructuredQueryLanguage),即結構化查詢語言,是關系數據庫的標準語言。SQL的特點:1、綜合統一2、高度非過程化3、面向集合的操作方式4、以同一種語法結構提供多種使用方式5、語言簡潔、易學易用SQL的動詞:數據查詢:select數據定義:create、drop、alter(房間)修改表數據操縱:insert、update(家具)修改數據、delete數據控制:grant、revoke繪制ER圖————在ER圖中有如下四個成分:矩形框:表示實體,在框中記入實體名。菱形框:表示聯系,在框中記入聯系名。橢圓形框:表示實體或聯系的屬性,將屬性名記入框中。對于主屬性名,則在其名稱下劃一下劃線。連線:實體與屬性之間;實體與聯系之間;聯系與屬性之間用直線相連,并在直線上標注聯系的類型。(對于一對一聯系,要在兩個實體連線方向各寫1;對于一對多聯系,要在一的一方寫1,多的一方寫N;對于多對多關系,則要在兩個實體連線方向各寫N,M?;颈硎潜旧愍毩⒋嬖诘谋恚赟QL中一個關系就對應一個基本表。一個(或多個)基本表對應一個存儲文件,一個表可以帶若干索引,索引也可以放在存儲文件中。存儲文件的邏輯結構組成了關系數據庫的內模式。存儲文件的物理結構是任意的,對用戶是透明的。視圖是從一個或幾個基本表導出的表。它本身不獨立存儲在數據庫中,即數據庫中只存放視圖的定義而不存放視圖對應的數據。這些數據仍存放在導出視圖的基本表中,因此視圖是一個虛表。視圖在概念上與基本表等同,用戶可以在視圖上再定義視圖?;颈淼亩x、刪除與修改:1、定義基本表:createtable***()2、定義主鍵:Primarykey==notnull(中間不用連接符號)unique3、定義外碼的語句:foreignkey(某個字段)references某表(某字段)4、定義主碼語句:primarykey(***,***)5、修改基本表:altertable某表名add列名<數據類型>[完整性約束]drop<完整性約束名>(字段名)altercolumn<列名><數據類型>6、刪

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論