2015做哪個(gè)網(wǎng)站能致富沈陽(yáng)專(zhuān)業(yè)seo關(guān)鍵詞優(yōu)化
數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ)
導(dǎo)航
文章目錄
- 數(shù)據(jù)庫(kù)技術(shù)基礎(chǔ)
- 導(dǎo)航
- 一、基礎(chǔ)概念
- 數(shù)據(jù)庫(kù)系統(tǒng)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)
- DBMS分類(lèi)
- 數(shù)據(jù)庫(kù)技術(shù)的發(fā)展
- 數(shù)據(jù)庫(kù)體系結(jié)構(gòu)
- 二、數(shù)據(jù)模型
- 數(shù)據(jù)模型基本概念
- 三、數(shù)據(jù)庫(kù)的控制功能
- 事務(wù)概述
- SOL中事務(wù)定義語(yǔ)句
- 日志文件
- 故障種類(lèi)
- 兩個(gè)操作Undo/Redo
- 事務(wù)故障的恢復(fù)
- 系統(tǒng)故障的恢復(fù)
- 介質(zhì)故障的恢復(fù)
- 介質(zhì)故障的恢復(fù)需要DBA的介入
- 封鎖
- 封鎖協(xié)議
- 活鎖
- 死鎖
- 四、數(shù)據(jù)庫(kù)安全機(jī)制
- 五、數(shù)據(jù)倉(cāng)庫(kù)
- 數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)模式
- 數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)
- 六、數(shù)據(jù)挖掘
- 數(shù)據(jù)挖掘相關(guān)技術(shù)
一、基礎(chǔ)概念
數(shù)據(jù)庫(kù)系統(tǒng)
★人員
- 系統(tǒng)分析員和數(shù)據(jù)庫(kù)設(shè)計(jì)人員
- 應(yīng)用程序員
- 最終用戶(hù)
- 數(shù)據(jù)庫(kù)管理員
數(shù)據(jù)庫(kù)管理系統(tǒng)
功能
- ★數(shù)據(jù)定義
- ★數(shù)據(jù)操作
- ★數(shù)據(jù)庫(kù)運(yùn)行管理
- ★數(shù)據(jù)組織、存儲(chǔ)和管理
- ★數(shù)據(jù)庫(kù)的建立和維護(hù)
- ★其它功能
特征
- ★數(shù)據(jù)結(jié)構(gòu)化且統(tǒng)一管理★有較高的數(shù)據(jù)獨(dú)立性
- ★數(shù)據(jù)控制功能
- 數(shù)據(jù)庫(kù)的安全性
- 數(shù)據(jù)庫(kù)的完整性
- 并發(fā)控制
- 故障恢復(fù)
DBMS分類(lèi)
- 關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)(RDBS):是支持關(guān)系模型的數(shù)據(jù)庫(kù)系統(tǒng),借助于集合代數(shù)等概念和方法來(lái)處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
- 面向?qū)ο蟮臄?shù)據(jù)庫(kù)系統(tǒng)(OODBS):支持以對(duì)象形式進(jìn)行數(shù)據(jù)建模的數(shù)據(jù)庫(kù)管理系統(tǒng)。
- 對(duì)象關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)(ORDBS):在傳統(tǒng)的關(guān)系數(shù)據(jù)模型基礎(chǔ)上,提供元組、數(shù)組和集合等更為豐富的數(shù)據(jù)類(lèi)型以及處理新的數(shù)據(jù)類(lèi)型的能力。
數(shù)據(jù)庫(kù)技術(shù)的發(fā)展
- 人工管理階段(20世紀(jì)50年代中期以前)
- 特點(diǎn):數(shù)據(jù)量較少;數(shù)據(jù)不保存;沒(méi)有軟件系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行管理。
- 文件系統(tǒng)階段(20世紀(jì)50年代后期至20世紀(jì)60年代中期)√
- 特點(diǎn):數(shù)據(jù)長(zhǎng)期保存;使用文件系統(tǒng)管理數(shù)據(jù);文件結(jié)構(gòu)多樣化。
- 數(shù)據(jù)庫(kù)系統(tǒng)階段(20世紀(jì)60年代后期至今)
- √特點(diǎn):數(shù)據(jù)結(jié)構(gòu)化;共享高;冗余低,易擴(kuò)充;獨(dú)立性高;由DBMS統(tǒng)一管理和控制。
數(shù)據(jù)庫(kù)體系結(jié)構(gòu)
- 集中式數(shù)據(jù)庫(kù)系統(tǒng)(20世紀(jì)60年代中期)
- 硬件結(jié)構(gòu)決定;單用戶(hù)數(shù)據(jù)庫(kù)系統(tǒng);高性能數(shù)據(jù)庫(kù)系統(tǒng)。
- C/S(客戶(hù)端/服務(wù)器)體系結(jié)構(gòu)
- 前端客戶(hù)機(jī)系統(tǒng)和后端服務(wù)器系統(tǒng);事務(wù)服務(wù)器和數(shù)據(jù)服務(wù)器。
- 并行數(shù)據(jù)庫(kù)系統(tǒng)
- 由多個(gè)物理上連在一起的CPU組成,而分布式系統(tǒng)的各個(gè)CPU在地理上式分開(kāi)的。
- 分為共享內(nèi)存式多處理器和無(wú)共享式并行體系結(jié)構(gòu)。
- 分布式數(shù)據(jù)庫(kù)系統(tǒng)
- 分布式DBMS包括物理上分布、邏輯上集中的分布式結(jié)構(gòu)和物理上邏輯上都分布的分布式數(shù)據(jù)庫(kù)結(jié)構(gòu)兩種。
二、數(shù)據(jù)模型
數(shù)據(jù)模型基本概念
-
模型 對(duì)現(xiàn)實(shí)世界特征的模擬和抽象
-
數(shù)據(jù)模型 對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象
-
數(shù)據(jù)模型的三要素 數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、數(shù)據(jù)的約束條件
-
概念數(shù)據(jù)模型 主要用于數(shù)據(jù)庫(kù)設(shè)計(jì)
- E-R模型
-
基本數(shù)據(jù)模型 用于實(shí)現(xiàn)DBMS
- 層次模型、網(wǎng)狀模型、關(guān)系模型
實(shí)體的屬性
- 簡(jiǎn)單屬性
- 復(fù)合屬性
- 單值屬性
- 多值屬性
- NULL屬性
- 派生屬性
擴(kuò)充的E-R模型
- 弱實(shí)體 實(shí)體對(duì)于另一些實(shí)體具有很強(qiáng)的依賴(lài)關(guān)系例如:家屬總是屬于某職工的
- 特殊化 一個(gè)實(shí)體集按照某些特征可以區(qū)分為幾個(gè)子實(shí)體
- 例如:學(xué)生實(shí)體集可以分為研究生、本科生等子集
- 概括
- 聚集
超類(lèi)和子類(lèi)模型使用特殊化圓圈和連線的一般方法來(lái)表示,雙豎邊矩表示 子類(lèi),“U"表示特殊化,圓圈中的"0"表示全特殊化,“D表示不相交特殊化。
層次模型
- 采用樹(shù)型結(jié)構(gòu)表示數(shù)據(jù)與數(shù)據(jù)間的聯(lián)系。
網(wǎng)狀模型
- 采用網(wǎng)絡(luò)結(jié)構(gòu)表示數(shù)據(jù)與數(shù)據(jù)間聯(lián)系。
關(guān)系模型
- 用二維表格結(jié)構(gòu)表達(dá)實(shí)體集
- 用外鍵表示實(shí)體間聯(lián)系的數(shù)據(jù)模型稱(chēng)為關(guān)系模型
- 關(guān)系同網(wǎng)狀和層次模型的最大區(qū)別
- 用表中的數(shù)據(jù)而不是通過(guò)指針鏈來(lái)表示和實(shí)現(xiàn)實(shí)體間的聯(lián)系
三、數(shù)據(jù)庫(kù)的控制功能
事務(wù)概述
- 定義
- 事務(wù)是一系列的數(shù)據(jù)庫(kù)操作,是數(shù)據(jù)庫(kù)應(yīng)用程序的基本邏輯單位,即應(yīng)呈序?qū)?shù)據(jù)庫(kù)的操作都應(yīng)該以事務(wù)的方式執(zhí)行。
- 4個(gè)特性(ACID)
- 原子性(Atomicity)
- 一致性(Consistency)
- 隔離性(lsolation)
- 持久性(Durability)
事務(wù)狀態(tài)
- 5種狀態(tài)活動(dòng)狀態(tài)、部分提交狀態(tài)、失敗狀態(tài)、提交狀態(tài)、中止?fàn)顟B(tài)
- 狀態(tài)轉(zhuǎn)換Begin-Transation、 End-Transation、Commit-Transation、 Abort-Transation
SOL中事務(wù)定義語(yǔ)句
- 事務(wù)開(kāi)始BEGIN TRANSACTION
- 事務(wù)結(jié)束END TRANSACTIONR
- OLLBACK事務(wù)回滾 表示事務(wù)非成功地結(jié)束
- COMMIT 事務(wù)提交 表示事務(wù)成功結(jié)束
日志文件
有兩種格式供數(shù)據(jù)庫(kù)系統(tǒng)采用
- 以記錄為單位的日志文件 事務(wù)標(biāo)識(shí)、操作類(lèi)型、操作對(duì)象、更新前數(shù)據(jù)的舊值、更新后數(shù)據(jù)的新值
- 以數(shù)據(jù)塊為單位的日志文件 包括事務(wù)標(biāo)識(shí)、被更新的數(shù)據(jù)塊
- 登記日志文件時(shí)必須嚴(yán)格按照并發(fā)事務(wù)執(zhí)行的時(shí)間次序來(lái)登記,且先寫(xiě)日志文件后寫(xiě)數(shù)據(jù)庫(kù)
故障種類(lèi)
- 事務(wù)故障
- 由于事務(wù)程序內(nèi)部錯(cuò)誤而引起的,有些可以預(yù)期,如金額不足等;有些不可以預(yù)期,如非法輸入、運(yùn)算溢出等(邏輯錯(cuò)誤)。
- 系統(tǒng)進(jìn)入一種不良狀態(tài),導(dǎo)致事務(wù)無(wú)法繼續(xù)執(zhí)行(系統(tǒng)錯(cuò)誤)
- 系統(tǒng)故障(通常稱(chēng)為軟故障)
- 特定類(lèi)型的硬件錯(cuò)誤、操作系統(tǒng)故障、DBMS代碼錯(cuò)誤、突然停電等
- 介質(zhì)故障(稱(chēng)為硬件故障)
- 是指外存故障,例如磁盤(pán)損壞、磁頭碰撞,瞬時(shí)強(qiáng)磁場(chǎng)干擾等
兩個(gè)操作Undo/Redo
- Undo
- 撤銷(xiāo)事務(wù)(Undo) 使數(shù)據(jù)庫(kù)回復(fù)到執(zhí)行前的正確狀態(tài)將未完成的事務(wù)撤銷(xiāo),
- Redo
- 重做事務(wù)(Redo) 對(duì)已經(jīng)提交的事務(wù)重新執(zhí)行
事務(wù)故障的恢復(fù)
事務(wù)故障的恢復(fù)由系統(tǒng)自動(dòng)完成,對(duì)用戶(hù)是透明的
- 步驟1:反向(從后向前)掃描日志文件,查找該事務(wù)的更新操作
- 步驟2:對(duì)該事務(wù)的更新操作執(zhí)行逆操作,也就是將日志記錄更新前的值寫(xiě)入數(shù)據(jù)庫(kù)
- 步驟3:繼續(xù)反向掃描日志文件,查找該事務(wù)的其他更新操作,并作同樣處理
- 步驟4:如此處理下去,直到讀到了此事務(wù)的開(kāi)始標(biāo)記,事務(wù)故障恢復(fù)就完成
系統(tǒng)故障的恢復(fù)
在系統(tǒng)重啟之后自動(dòng)執(zhí)行的
- 正向(從頭到尾)掃描日志文件,找出故障發(fā)生前已經(jīng)提交的事務(wù)(這些事務(wù)既有BEGIN TRANSACTION 記錄,也有COMMIT記錄),將其事務(wù)標(biāo)識(shí)記入重做(REDO)隊(duì)列。同時(shí)找出故障發(fā)生時(shí)尚未完成的事務(wù)(這些事務(wù)只有BEGIN TRANSACTION 記錄,無(wú)相應(yīng)的COMMIT記錄),將其事務(wù)標(biāo)識(shí)記入撤銷(xiāo)(UNDO)隊(duì)列
- 反向掃描日志文件,對(duì)每個(gè)UNDO事務(wù)的更新操作執(zhí)行逆操作,也就是將日志記錄中更新前的值寫(xiě)入數(shù)據(jù)庫(kù)。
- 正向掃描日志文件,對(duì)每個(gè)REDO事務(wù)重新執(zhí)行日志文件登記的操作,也將是將日志記錄中更新后的值寫(xiě)入數(shù)據(jù)庫(kù)
介質(zhì)故障的恢復(fù)
需要DBA的介入
- 裝入最新的數(shù)據(jù)庫(kù)后備副本,使數(shù)據(jù)庫(kù)恢復(fù)到最近一次轉(zhuǎn)儲(chǔ)時(shí)的一致性狀態(tài)。
- 轉(zhuǎn)入相應(yīng)的日志文件副本,重做已完成的事務(wù)
介質(zhì)故障的恢復(fù)需要DBA的介入
- DBA只需要重裝最近轉(zhuǎn)儲(chǔ)的數(shù)據(jù)庫(kù)副本和有關(guān)的各日志文件副本
- 然后執(zhí)行系統(tǒng)提供的恢復(fù)命令
- 具體的恢復(fù)操作仍由DBMS完成
封鎖
- 排它鎖
- (簡(jiǎn)稱(chēng)X鎖)又稱(chēng)寫(xiě)鎖
- 保證了其他事務(wù)在T釋放A上的鎖之前就不能再讀取和修改A
- 共享鎖
- (簡(jiǎn)稱(chēng)S鎖)又稱(chēng)讀鎖
- 保證了其他事務(wù)可以讀A,但在T釋放A上的S鎖之前不能對(duì)A做任何修改
- 封鎖的粒度
- 封鎖對(duì)象的大小稱(chēng)為封鎖的粒度
- 封鎖對(duì)象
- 可以是邏輯單元(如:屬性、元組、關(guān)系、索引項(xiàng)、整個(gè)索引,甚至整個(gè)數(shù)據(jù)庫(kù))
- 可以是物理單元(如:數(shù)據(jù)頁(yè),索引頁(yè))
封鎖協(xié)議
- 三級(jí)封鎖協(xié)議
- 一級(jí)封鎖協(xié)議 解決丟失更新問(wèn)題
- 二級(jí)封鎖協(xié)議 解決了讀“臟”數(shù)據(jù);不能保證可重復(fù)讀
- 三級(jí)封鎖協(xié)議 防止丟失修改;不讀“臟”數(shù)據(jù);防止了不可重復(fù)讀
- 兩段封鎖協(xié)議
- 保證可串行化
- 第一階段是獲得封鎖
- 第二階段是釋放封鎖
活鎖
- 舉個(gè)例子來(lái)說(shuō)明活鎖的概念,如果事務(wù)T1封鎖了數(shù)據(jù)R,事多T2又請(qǐng)求封鎖R,于是T2等待。若T3也請(qǐng)求封鎖R,當(dāng)T1釋放了R上的鎖之后系統(tǒng)首先批準(zhǔn)了T3 的請(qǐng)求而T2仍等待。之后T4又請(qǐng)求封鎖R,當(dāng)T3釋放了R上的封鎖后,系統(tǒng)批準(zhǔn)了T4的請(qǐng)求,如此繼續(xù)下去,T2有可能永遠(yuǎn)等待,這就形成了活鎖
- 避免活鎖的簡(jiǎn)單方法是采用先來(lái)先服務(wù)的策略
死鎖
- 舉例來(lái)說(shuō)明死鎖的概念,如果事務(wù)T1封鎖了數(shù)據(jù)R1,T2封鎖了數(shù)據(jù)R2然后T1又請(qǐng)求封鎖R2 ,因?yàn)門(mén)2已經(jīng)封鎖了R2,所以T1等待T2釋放R2:接著T2有申請(qǐng)封鎖R1,而T1已經(jīng)封鎖了R1,T2則只能等待T1釋放R1上的鎖。這樣就出現(xiàn)了這樣的情況,即T1在等待T2,而T2又在等待T1T1和T2兩個(gè)事務(wù)永遠(yuǎn)不能結(jié)束,這就形成了死鎖
- 目前在數(shù)據(jù)庫(kù)中解決死鎖問(wèn)題主要有兩種方法√
- 一個(gè)是采取一定的措施來(lái)預(yù)防死鎖的發(fā)生
- 另一個(gè)是允許發(fā)生死鎖,并采用一定手段定期診斷系統(tǒng)中是否有死鎖,如果發(fā)現(xiàn)了死鎖則立即解除掉
四、數(shù)據(jù)庫(kù)安全機(jī)制
用戶(hù)標(biāo)識(shí)與鑒別
訪問(wèn)控制
- 自主存取控制
- 授權(quán)
- 角色
- 強(qiáng)制存取控制
- 基于角色的存取控制
視圖機(jī)制
數(shù)據(jù)加密
審計(jì)
備份/恢復(fù)
聚合、推理和多實(shí)例
五、數(shù)據(jù)倉(cāng)庫(kù)
改據(jù)倉(cāng)庫(kù)的基本特性
- 面向主題的
- 數(shù)據(jù)是集成的
- 數(shù)據(jù)是相對(duì)穩(wěn)定的
- 數(shù)據(jù)是反映歷史變化的
數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)模式
- 星狀模式
- 一個(gè)事實(shí)表
- 一級(jí)維表
- 雪花模式
- 一個(gè)事實(shí)表
- 多級(jí)維表
- 事實(shí)星狀模式
- 不止一個(gè)事實(shí)表
- 共享維表
數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)
- 三層體系
- ·底 層 數(shù)據(jù)倉(cāng)庫(kù)服務(wù)器
- 中間層 OLAP服務(wù)器
- 頂層 前端工具口
- 從結(jié)構(gòu)的角度
- 企業(yè)倉(cāng)庫(kù)
- 數(shù)據(jù)集市
- 虛擬倉(cāng)庫(kù)
數(shù)據(jù)轉(zhuǎn)移
- 簡(jiǎn)單轉(zhuǎn)移
- 清洗
- 集成
- 聚集和概括
多維分析的基本動(dòng)作
- 切片
- 切塊
- 旋轉(zhuǎn)
OLAP 中的基本概念
- 變量
- ·維
- 維的層次
- 維的成員
- 多維數(shù)組
- 數(shù)據(jù)單元
六、數(shù)據(jù)挖掘
數(shù)據(jù)挖掘相關(guān)技術(shù)
- 關(guān)聯(lián)分析 Apriori、FP-growth
- 序列模式分析 AprioriAll、Apriorisome、GsP
- 回歸分析
- 分類(lèi) C4.5、ID3、Logistic回歸、樸素貝葉斯
- 聚類(lèi) K-Means、DBSCAN、EM
數(shù)據(jù)挖掘的應(yīng)用過(guò)程
- 確定挖掘?qū)ο?/li>
- 準(zhǔn)備數(shù)據(jù)
- 建立模型
- 數(shù)據(jù)挖掘
- 結(jié)果分析
- 知識(shí)應(yīng)用