版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)庫(kù)管理系統(tǒng)原理與實(shí)現(xiàn)教與學(xué)(教學(xué)大綱)教學(xué)大綱01課程內(nèi)容概述數(shù)據(jù)庫(kù)是信息系統(tǒng)的基礎(chǔ)設(shè)施,是國(guó)家明確需要突破的35項(xiàng)“卡脖子”關(guān)鍵技術(shù)之一。本課程聚焦數(shù)據(jù)庫(kù)管理系統(tǒng)內(nèi)核組成構(gòu)件的設(shè)計(jì)和實(shí)現(xiàn)技術(shù),系統(tǒng)講授數(shù)據(jù)庫(kù)的基本概念、SQL語(yǔ)言、數(shù)據(jù)庫(kù)管理系統(tǒng)的基本原理與實(shí)現(xiàn)技術(shù)。包括:第一篇為基礎(chǔ)篇(第1~4章),主要介紹數(shù)據(jù)庫(kù)系統(tǒng)的基本概念和基礎(chǔ)知識(shí),內(nèi)容包括數(shù)據(jù)庫(kù)系統(tǒng)概述、關(guān)系數(shù)據(jù)模型、關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言SQL、高級(jí)SQL;第二篇為存取篇(第5~6章),主要介紹數(shù)據(jù)庫(kù)管理系統(tǒng)的數(shù)據(jù)存取管理,內(nèi)容包括存儲(chǔ)管理、索引;第三篇為查詢(xún)處理篇(第7~9章),主要介紹查詢(xún)處理的過(guò)程和兩個(gè)核心步驟,內(nèi)容包括查詢(xún)處理、查詢(xún)優(yōu)化、查詢(xún)執(zhí)行;第四篇為事務(wù)處理篇(第10~12章),主要介紹事務(wù)處理的兩項(xiàng)關(guān)鍵技術(shù),內(nèi)容包括事務(wù)處理概述、并發(fā)控制、故障恢復(fù)。課程配套建有數(shù)據(jù)庫(kù)管理系統(tǒng)內(nèi)核實(shí)訓(xùn)平臺(tái),支撐對(duì)學(xué)生相關(guān)知識(shí)點(diǎn)掌握程度的能力考核。本課程適用于有較好編程基礎(chǔ)的計(jì)算機(jī)相關(guān)專(zhuān)業(yè)學(xué)生。02課程目標(biāo)通過(guò)本課程學(xué)習(xí),要求在掌握數(shù)據(jù)庫(kù)系統(tǒng)基本概念的基礎(chǔ)上,能熟練使用SQL語(yǔ)言在某一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)上進(jìn)行數(shù)據(jù)庫(kù)操作;掌握數(shù)據(jù)庫(kù)管理系統(tǒng)的基本原理與基本實(shí)現(xiàn)技術(shù),具有設(shè)計(jì)數(shù)據(jù)管理系統(tǒng)和開(kāi)發(fā)數(shù)據(jù)庫(kù)管理系統(tǒng)核心組件基本功能的能力。03預(yù)修課程*計(jì)算機(jī)程序設(shè)計(jì)方法和語(yǔ)言*數(shù)據(jù)結(jié)構(gòu)*離散數(shù)學(xué)*操作系統(tǒng)*編譯原理04課程學(xué)時(shí)和實(shí)驗(yàn)安排(參考)05參考書(shū)目和學(xué)習(xí)資源1.杜小勇陳紅盧衛(wèi)《數(shù)據(jù)庫(kù)管理系統(tǒng)原理與實(shí)現(xiàn)》清華出版社2024年4月2.王珊杜小勇陳紅《數(shù)據(jù)庫(kù)系統(tǒng)概論》第6版高教出版社2023年3月3.
AviSilberschatz,HenryF.Korth,S.Sudarshan,DatabaseSystemConcepts,McGraw-Hill,SeventhEdition,2019美國(guó)的卡內(nèi)基梅隆大學(xué)(CMU)、普度大學(xué),中國(guó)的香港科技大學(xué)使用該教材。4.
RaghuRamakrishnan,JohannesGehrke,DatabaseManagementSystems,McGraw-Hill,3rdedition,2022美國(guó)威斯康辛大學(xué)麥迪遜分校、普渡大學(xué)、哥倫比亞大學(xué),以及瑞士的洛桑聯(lián)邦理工學(xué)院等大學(xué)使用該教材。5.
J.D.Ullman,JWidom,AFirstCourseinDatabaseSystems,PreticeHall,ThirdEdition2008本書(shū)是美國(guó)斯坦福大學(xué)(StanfordUniversity)計(jì)算機(jī)系本科生的第1門(mén)數(shù)據(jù)庫(kù)課程教材。6.
HectorGarcia-Molina,JeffreyD.Ullman,JenniferWidom著,楊冬青,唐世渭,徐其鈞等譯,《數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)》第2版,機(jī)械工業(yè)出版社,2010.506考核方式1.書(shū)面作業(yè)2.上機(jī)實(shí)驗(yàn)和課程大作業(yè)(數(shù)據(jù)庫(kù)管理系統(tǒng)實(shí)現(xiàn))3.期中閉卷筆試4.期末閉卷筆試5.總成績(jī)=期中閉卷筆試(20/100)+期末閉卷筆試(40/100)+書(shū)面作業(yè)(10/100)+上機(jī)實(shí)驗(yàn)和課程大作業(yè)(30/100)07課程各章內(nèi)容概述、授課要求及重點(diǎn)難點(diǎn)第1章概述內(nèi)容概述初步回答數(shù)據(jù)庫(kù)是什么的問(wèn)題,從數(shù)據(jù)模型、應(yīng)用以及計(jì)算平臺(tái)三個(gè)維度介紹數(shù)據(jù)庫(kù)發(fā)展歷史,從多個(gè)視角介紹數(shù)據(jù)庫(kù)管理系統(tǒng)的組成,還簡(jiǎn)要介紹國(guó)產(chǎn)數(shù)據(jù)庫(kù)的發(fā)展歷史。本章目標(biāo)本章講解的數(shù)據(jù)庫(kù)基本概念和基本知識(shí)是學(xué)習(xí)后續(xù)各個(gè)章節(jié)的基礎(chǔ)。學(xué)習(xí)本章的目的在于對(duì)數(shù)據(jù)庫(kù)管理系統(tǒng)有一個(gè)概貌性的了解。重點(diǎn)和難點(diǎn)重點(diǎn):掌握數(shù)據(jù)、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)以及數(shù)據(jù)庫(kù)系統(tǒng)等概念,從發(fā)展歷史和數(shù)據(jù)庫(kù)系統(tǒng)組成兩個(gè)維度去了解數(shù)據(jù)庫(kù)系統(tǒng)的一些重要概念,包括模型,三級(jí)模式結(jié)構(gòu)和兩層映像、數(shù)據(jù)庫(kù)系統(tǒng)的邏輯獨(dú)立性和物理獨(dú)立性等。難點(diǎn):本章的難點(diǎn)是會(huì)涉及很多的數(shù)據(jù)庫(kù)系統(tǒng)名稱(chēng)和概念,有些概念是第一次接觸又沒(méi)有解釋?zhuān)瑫?huì)感到比較抽象,但不要緊,隨著學(xué)習(xí)的逐漸推進(jìn),在后續(xù)章節(jié)中,這些抽象的概念會(huì)逐漸變得清晰具體起來(lái)。實(shí)驗(yàn)準(zhǔn)備可以安排一次數(shù)據(jù)庫(kù)系統(tǒng)安裝的實(shí)驗(yàn)。實(shí)驗(yàn)準(zhǔn)備主要包括關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)選擇、實(shí)驗(yàn)環(huán)境配置和實(shí)驗(yàn)數(shù)據(jù)準(zhǔn)備等工作。推薦使用國(guó)產(chǎn)的金倉(cāng)數(shù)據(jù)庫(kù)管理系統(tǒng),例如金倉(cāng)數(shù)據(jù)庫(kù)KingbaseES。也可以使用任何一種關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品或開(kāi)源數(shù)據(jù)庫(kù)管理系統(tǒng)。建議學(xué)生親自安裝選用的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品,觀察數(shù)據(jù)庫(kù)安裝過(guò)程,記錄和理解安裝配置參數(shù),熟悉數(shù)據(jù)庫(kù)管理系統(tǒng)的客戶(hù)端圖形管理工具。第2章關(guān)系數(shù)據(jù)模型內(nèi)容概述深入講解關(guān)系模型的有關(guān)內(nèi)容。按照數(shù)據(jù)模型的三要素,介紹關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)及形式化定義、關(guān)系代數(shù)、關(guān)系的完整性約束。本章目標(biāo)掌握關(guān)系模型的三個(gè)組成部分及各部分所包括的主要內(nèi)容;牢固掌握關(guān)系數(shù)據(jù)結(jié)構(gòu)及其定義;關(guān)系的三類(lèi)完整性約束的概念。為學(xué)習(xí)后面關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)打好基礎(chǔ)。重點(diǎn)和難點(diǎn)重點(diǎn):掌握關(guān)系數(shù)據(jù)結(jié)構(gòu)及其定義;關(guān)系的三類(lèi)完整性約束的概念。關(guān)系代數(shù)(包括抽象的語(yǔ)言及具體的語(yǔ)言);關(guān)系代數(shù)中的各種運(yùn)算(包括并、交、差、選擇、投影、連接、除、及廣義笛卡爾積等)。難點(diǎn):由于關(guān)系代數(shù)較為抽象,因此在學(xué)習(xí)的過(guò)程中一定要結(jié)合具體的實(shí)例進(jìn)行學(xué)習(xí)。第3章關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言SQL內(nèi)容概述詳細(xì)介紹關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言SQL。SQL是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言,內(nèi)容十分豐富,功能非常強(qiáng)大。因?yàn)殛P(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的主要功能是通過(guò)SQL來(lái)實(shí)現(xiàn)的,因此講解SQL的同時(shí)進(jìn)一步講述關(guān)系數(shù)據(jù)庫(kù)的基本概念。本章基于SQL標(biāo)準(zhǔn)來(lái)詳細(xì)介紹SQL語(yǔ)法,包括數(shù)據(jù)定義、基本SQL查詢(xún)、數(shù)據(jù)更新和視圖。本章目標(biāo)牢固掌握SQL,達(dá)到舉一反三地掌握SQL的功能。同時(shí)通過(guò)實(shí)踐,體會(huì)面向過(guò)程的語(yǔ)言和SQL的區(qū)別和優(yōu)點(diǎn)。體會(huì)關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)為數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開(kāi)發(fā)提供良好環(huán)境,減輕用戶(hù)負(fù)擔(dān),提高用戶(hù)生產(chǎn)率的原因。重點(diǎn)和難點(diǎn)重點(diǎn):關(guān)系模型和關(guān)系數(shù)據(jù)庫(kù)是本課程的重點(diǎn),要熟練正確的使用SQL完成對(duì)數(shù)據(jù)庫(kù)的查詢(xún)、插入、刪除、更新操作。在使用具體的SQL時(shí),能有意識(shí)地和關(guān)系代數(shù)進(jìn)行比較,了解它們各自的特點(diǎn)。難點(diǎn):用SQL語(yǔ)言正確完成復(fù)雜查詢(xún),掌握SQL語(yǔ)言強(qiáng)大的查詢(xún)功能。在學(xué)習(xí)過(guò)程中一定要多練習(xí),要在安裝好的數(shù)據(jù)庫(kù)系統(tǒng)上進(jìn)行實(shí)際操作,通過(guò)大量練習(xí)達(dá)到舉一反三的熟練程度。實(shí)驗(yàn)內(nèi)容1.了解TPCC性能測(cè)試,在關(guān)系數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名為T(mén)PCC的模式。2.在TPCC模式中,使用SQL語(yǔ)句建立TPCC場(chǎng)景所包含的多個(gè)關(guān)系。3.對(duì)2.1.3所介紹的“網(wǎng)上商城”數(shù)據(jù)庫(kù),使用SQL語(yǔ)句完成下面的查詢(xún)①查詢(xún)所有價(jià)格大于500的數(shù)碼產(chǎn)品,結(jié)果顯示商品ID、商品名稱(chēng)和價(jià)格,并按價(jià)格降序排列;②查詢(xún)所有來(lái)自北京的顧客所下訂單,結(jié)果顯示訂單ID,顧客姓名;③查詢(xún)所有數(shù)碼產(chǎn)品的銷(xiāo)量,結(jié)果顯示商品ID,商品名稱(chēng),總銷(xiāo)量。其中一個(gè)商品的總銷(xiāo)量表示其在所有訂單中的數(shù)量之和。④查詢(xún)不同類(lèi)別商品的種數(shù),結(jié)果顯示類(lèi)別和該類(lèi)別商品的種數(shù)。⑤查詢(xún)商品及供應(yīng)商信息,結(jié)果顯示商品名稱(chēng)、供應(yīng)商ID和供應(yīng)商名稱(chēng)。⑥查詢(xún)所有訂單的實(shí)際銷(xiāo)售額,結(jié)果顯示訂單ID、顧客ID和實(shí)際銷(xiāo)售額。其中實(shí)際銷(xiāo)售額計(jì)算方式為訂單中每種商品的數(shù)量*價(jià)格*折扣之和。4.修改商品信息,將所有商品的價(jià)格下調(diào)10%。5.建立一個(gè)視圖,包含訂單ID,顧客ID和訂單總金額。第4章高級(jí)SQL內(nèi)容概述本章介紹較為復(fù)雜的SQL查詢(xún),分別是嵌套查詢(xún)、遞歸查詢(xún)以及基于派生表的查詢(xún)。其中,基于派生表的查詢(xún)是近年來(lái)SQL引入的新特性。本章目標(biāo)掌握通過(guò)嵌套、遞歸和派生表來(lái)完成復(fù)雜查詢(xún)。理解這三類(lèi)特殊查的語(yǔ)法,并能夠根據(jù)具體問(wèn)題靈活運(yùn)用。重點(diǎn)和難點(diǎn)重點(diǎn):嵌套查詢(xún)中相關(guān)子查詢(xún)的概念,相關(guān)子查詢(xún)的執(zhí)行過(guò)程。遞歸查詢(xún)的語(yǔ)法,利用遞歸查詢(xún)完成復(fù)雜的查詢(xún)功能。難點(diǎn):遞歸查詢(xún)較為抽象,需要結(jié)合具體例子理解其工作過(guò)程。實(shí)驗(yàn)內(nèi)容與第三章實(shí)驗(yàn)相同,讀者可以選擇一個(gè)合適的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),包括但不限于Oracle?、SQLServer?、MySQL?、OpenGauss?以及KingBaseES?,認(rèn)真閱讀其SQL參考手冊(cè),完成上述習(xí)題內(nèi)容。讀者需要特別留意,不同RDBMS所支持的過(guò)程化SQL差別較大。第5章存儲(chǔ)管理內(nèi)容概述本章系統(tǒng)地講解數(shù)據(jù)庫(kù)的存儲(chǔ)管理機(jī)制,包括物理存儲(chǔ)系統(tǒng)、關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)組織、元數(shù)據(jù)管理以及緩沖區(qū)管理。針對(duì)物理存儲(chǔ)系統(tǒng),概要介紹了各種物理存儲(chǔ)介質(zhì)、詳細(xì)介紹了磁盤(pán)、SSD固態(tài)硬盤(pán)和獨(dú)立磁盤(pán)冗余陣列等常用存儲(chǔ)介質(zhì)的工作原理和特點(diǎn),講解了提升磁盤(pán)I/O性能的常用策略。針對(duì)數(shù)據(jù)組織,介紹了數(shù)據(jù)庫(kù)的邏輯與物理組織方式,講解了記錄表示、塊的組織以及關(guān)系表的組織。此外,本章還介紹了元數(shù)據(jù)的種類(lèi)及其組織方式,緩沖區(qū)的管理機(jī)制及頁(yè)面置換策略。本章目標(biāo)了解常用的存儲(chǔ)介質(zhì)特性,理解磁盤(pán)I/O性能的提升方法。掌握數(shù)據(jù)的邏輯與物理組織方式,掌握記錄的表示方法、塊的組織方式以及關(guān)系表的組織方法。了解元數(shù)據(jù)的內(nèi)容及其組織方式,掌握緩沖區(qū)管理的原理以及常用的頁(yè)面置換策略。重點(diǎn)和難點(diǎn)重點(diǎn):理解并牢固掌握關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)組織方法,包括數(shù)據(jù)庫(kù)的邏輯與物理組織方式、記錄表示、塊的組織以及關(guān)系表的組織。掌握緩沖區(qū)管理的原理以及常用的頁(yè)面置換策略。難點(diǎn):數(shù)據(jù)庫(kù)的邏輯組織方式與物理組織方式的對(duì)應(yīng)關(guān)系;緩沖區(qū)管理器的工作原理;LRU和CLOCK置換策略的實(shí)現(xiàn)技術(shù)。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)存儲(chǔ)管理的功能。(1)緩沖區(qū)管理。包括分配緩沖塊,讀寫(xiě)指定頁(yè)面,實(shí)現(xiàn)LRU替換策略。(2)磁盤(pán)存儲(chǔ)管理。包括以定長(zhǎng)記錄的組織形式存放記錄,對(duì)記錄進(jìn)行遍歷以及增刪改操作。第6章索引內(nèi)容概述本章詳細(xì)介紹了數(shù)據(jù)庫(kù)的常用索引結(jié)構(gòu),包括順序表索引、輔助索引、B+樹(shù)索引、哈希索引和Bitmap索引。講解了順序表上的稠密索引、稀疏索引和多級(jí)索引以及非順序表上的輔助索引的組織和查找方法;B+樹(shù)索引、靜態(tài)哈希索引和動(dòng)態(tài)哈希索引的組織、查找和維護(hù)方法;Bitmap索引和編碼Bitmap索引的組織和查找方法。本章目標(biāo)深入理解數(shù)據(jù)庫(kù)索引的作用與原理。掌握常用索引結(jié)構(gòu)的組織方式、查找方式以及維護(hù)方式。了解各類(lèi)索引適合的應(yīng)用場(chǎng)景。重點(diǎn)和難點(diǎn)重點(diǎn):了解數(shù)據(jù)庫(kù)索引的作用與工作原理。牢固掌握B+樹(shù)索引的組織、查找和維護(hù)方法。掌握稠密索引、稀疏索引、多級(jí)索引、輔助索引、Bitmap索引和編碼Bitmap索引的組織和查找方法。掌握靜態(tài)哈希索引、可擴(kuò)展哈希索引、線(xiàn)性哈希索引的組織、查找和維護(hù)方法。需要舉一反三的:各類(lèi)索引的查找方法和維護(hù)方法。難點(diǎn):動(dòng)態(tài)哈希索引,包括可擴(kuò)展哈希索引和線(xiàn)性哈希索引的組織、查找和維護(hù)方法。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)B+樹(shù)索引功能,包括:(1)B+樹(shù)的查找操作;(2)B+樹(shù)的插入操作;(3)B+樹(shù)的刪除操作。第7章
查詢(xún)處理內(nèi)容概述本章對(duì)查詢(xún)處理過(guò)程做了整體介紹,包括查詢(xún)編譯和查詢(xún)執(zhí)行兩個(gè)關(guān)鍵階段。主要介紹數(shù)據(jù)庫(kù)管理系統(tǒng)中SQL語(yǔ)句的處理過(guò)程,包括詞法與語(yǔ)法分析、語(yǔ)義分析、查詢(xún)優(yōu)化概述,并重點(diǎn)介紹執(zhí)行計(jì)劃中各個(gè)操作符的執(zhí)行算法,例如掃描操作、排序操作、連接操作、去重、分組等。本章目標(biāo)了解數(shù)據(jù)庫(kù)管理系統(tǒng)中SQL語(yǔ)句處理過(guò)程,掌握SQL語(yǔ)句中各種算子的實(shí)現(xiàn)算法以及代價(jià)估算,使學(xué)生具有設(shè)計(jì)和實(shí)現(xiàn)DBMS中查詢(xún)處理器的基本能力,能夠設(shè)計(jì)和實(shí)現(xiàn)執(zhí)行高效的SQL語(yǔ)句,增強(qiáng)DBMS的處理能力。重點(diǎn)和難點(diǎn)重點(diǎn):掌握數(shù)據(jù)庫(kù)管理系統(tǒng)中SQL語(yǔ)句的處理過(guò)程,即:詞法與語(yǔ)法分析、語(yǔ)義分析、查詢(xún)優(yōu)化直到生成查詢(xún)計(jì)劃,特別是主要操作算子的算法實(shí)現(xiàn)以及代價(jià)估計(jì),特別是在有限內(nèi)存的情況下,根據(jù)數(shù)據(jù)的存儲(chǔ)特點(diǎn),掌握設(shè)計(jì)操作算子高效算法的方法,提高DBMS的處理性能。難點(diǎn):
設(shè)計(jì)和實(shí)現(xiàn)SQL語(yǔ)句的查詢(xún)編譯處理;在有限內(nèi)存的情況下,根據(jù)數(shù)據(jù)的存儲(chǔ)特點(diǎn),設(shè)計(jì)和實(shí)現(xiàn)操作算子的高效執(zhí)行算法。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)的基本查詢(xún)處理操作以及支持基本查詢(xún)子句,包括:(1)元組插入操作。(2)元組更新操作。(3)元組刪除操作。(4)WHERE子句。(5)GROUPBY和HAVING子句。(6)ORDERBY子句。第8章
查詢(xún)優(yōu)化內(nèi)容概述本章系統(tǒng)介紹查詢(xún)優(yōu)化的基本概念、方法以及關(guān)鍵問(wèn)題,包括邏輯優(yōu)化和物理優(yōu)化的概念、關(guān)系代數(shù)表達(dá)式等價(jià)變換規(guī)則、基于代價(jià)優(yōu)化器中進(jìn)行代價(jià)估算所需的統(tǒng)計(jì)信息和基數(shù)估算方法以及多表連接順序的選擇算法,這些規(guī)則和算法使得優(yōu)化后的查詢(xún)?cè)讷@得執(zhí)行性能提升的同時(shí)保證了最終結(jié)果的正確性。本章目標(biāo)了解數(shù)據(jù)庫(kù)管理系統(tǒng)中查詢(xún)優(yōu)化器的原理和實(shí)現(xiàn)方法,掌握SQL語(yǔ)句邏輯優(yōu)化的規(guī)則以及物理優(yōu)化的關(guān)鍵技術(shù),例如統(tǒng)計(jì)信息的采集、基數(shù)估算方法、操作算子的代價(jià)模型以及多表連接的優(yōu)化方法,使學(xué)生具有SQL語(yǔ)句的調(diào)優(yōu)能力,并且可以設(shè)計(jì)和實(shí)現(xiàn)數(shù)據(jù)庫(kù)管理系統(tǒng)查詢(xún)優(yōu)化器。重點(diǎn)和難點(diǎn)重點(diǎn):了解數(shù)據(jù)庫(kù)管理系統(tǒng)中查詢(xún)優(yōu)化器的原理和實(shí)現(xiàn)方法,能夠進(jìn)行SQL語(yǔ)句的調(diào)優(yōu)。掌握查詢(xún)優(yōu)化器邏輯優(yōu)化的基本規(guī)則、統(tǒng)計(jì)信息對(duì)于執(zhí)行路徑代價(jià)估算的作用、基數(shù)估算的方法以及多表連接的優(yōu)化原理。難點(diǎn):理解關(guān)系代數(shù)表達(dá)式的等價(jià)變換規(guī)則,基于代價(jià)的查詢(xún)優(yōu)化器中基數(shù)估算和代價(jià)模型以及關(guān)系操作中多表連接操作的優(yōu)化。設(shè)計(jì)和實(shí)現(xiàn)統(tǒng)計(jì)信息所使用的系統(tǒng)表。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)簡(jiǎn)單查詢(xún)優(yōu)化功能,包括:(1)選擇下推。(2)基于代價(jià)的物理優(yōu)化。(3)多表連接操作的順序選擇。第9章
查詢(xún)執(zhí)行內(nèi)容概述本章介紹了數(shù)據(jù)庫(kù)管理系統(tǒng)中SQL語(yǔ)句編譯形成的執(zhí)行樹(shù)操作符間的物化與流水線(xiàn)兩種執(zhí)行方式以及執(zhí)行計(jì)劃可采用的火山模型和向量執(zhí)行模型。為了更好地提高執(zhí)行效率,本章還介紹了查詢(xún)并行化執(zhí)行和編譯執(zhí)行技術(shù)。本章目標(biāo)數(shù)據(jù)庫(kù)管理系統(tǒng)中SQL語(yǔ)句編譯形成具有多個(gè)操作算子的執(zhí)行樹(shù),本章的目的是希望學(xué)生重點(diǎn)掌握?qǐng)?zhí)行樹(shù)的各個(gè)操作算子如何高效協(xié)同執(zhí)行的,尤其在處理海量數(shù)據(jù)時(shí)遇到的問(wèn)題和難點(diǎn),使學(xué)生可以設(shè)計(jì)和實(shí)現(xiàn)數(shù)據(jù)庫(kù)管理系統(tǒng)的執(zhí)行模型或算法。重點(diǎn)和難點(diǎn)重點(diǎn):了解數(shù)據(jù)庫(kù)中SQL語(yǔ)句編譯生成的執(zhí)行樹(shù)的執(zhí)行模型,掌握目前數(shù)據(jù)庫(kù)管理系統(tǒng)中最常使用的火山模型,深入理解SQL語(yǔ)句面向集合操作的特點(diǎn)和高效處理大數(shù)據(jù)集的方法,例如并行策略、批量執(zhí)行策略等。難點(diǎn):本章的難點(diǎn)是深入理解SQL語(yǔ)句面向集合操作的特點(diǎn),并根據(jù)其特點(diǎn)設(shè)計(jì)執(zhí)行模型,例如目前最常用的火山模型,以及處理海量數(shù)據(jù)采用的并行方法和批量方法。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)基本執(zhí)行策略,包括:(1)使用臨時(shí)表的物化模型;(2)簡(jiǎn)單的流水線(xiàn)模型;(3)并行掃描。
重點(diǎn)和難點(diǎn)重點(diǎn):了解數(shù)據(jù)庫(kù)中SQL語(yǔ)句編譯生成的執(zhí)行樹(shù)的執(zhí)行模型,掌握目前數(shù)據(jù)庫(kù)管理系統(tǒng)中最常使用的火山模型,深入理解SQL語(yǔ)句面向集合操作的特點(diǎn)和高效處理大數(shù)據(jù)集的方法,例如并行策略、批量執(zhí)行策略等。難點(diǎn):本章的難點(diǎn)是深入理解SQL語(yǔ)句面向集合操作的特點(diǎn),并根據(jù)其特點(diǎn)設(shè)計(jì)執(zhí)行模型,例如目前最常用的火山模型,以及處理海量數(shù)據(jù)采用的并行方法和批量方法。實(shí)驗(yàn)內(nèi)容基于數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab),實(shí)現(xiàn)數(shù)據(jù)庫(kù)基本執(zhí)行策略,包括:(1)使用臨時(shí)表的物化模型;(2)簡(jiǎn)單的流水線(xiàn)模型;(3)并行掃描。第10章事務(wù)處理概述內(nèi)容概述事務(wù)處理是數(shù)據(jù)庫(kù)管理系統(tǒng)的核心技術(shù)之一,是數(shù)據(jù)庫(kù)管理系統(tǒng)從實(shí)驗(yàn)室的原型系統(tǒng)真正走向市場(chǎng)、支撐關(guān)鍵行業(yè)核心業(yè)務(wù)的基石。本章系統(tǒng)地講解了事務(wù)的ACID特性,即事務(wù)的原子性、一致性、隔離性和持續(xù)性。通過(guò)給出事務(wù)的符號(hào)化表示,以及事務(wù)在數(shù)據(jù)庫(kù)管理系統(tǒng)中的執(zhí)行模型,介紹了在缺少合理調(diào)度情況下系統(tǒng)可能出現(xiàn)的各類(lèi)數(shù)據(jù)異常,并給出了SQL-92中四類(lèi)數(shù)據(jù)異常的符號(hào)化表示及其對(duì)應(yīng)的隔離級(jí)別。最后,介紹了什么是正確的調(diào)度,以及如何判斷一個(gè)調(diào)度是沖突可串行化調(diào)度。本章目標(biāo)掌握事務(wù)的基本概念和事務(wù)的ACID性質(zhì),理解在缺少合理調(diào)度情況下系統(tǒng)可能出現(xiàn)的各類(lèi)數(shù)據(jù)異常,能夠?qū)ζ渲械臄?shù)據(jù)異常進(jìn)行舉一反三;掌握什么是正確的事務(wù)調(diào)度以及在系統(tǒng)中如何確保系統(tǒng)調(diào)度的正確性。重點(diǎn)和難點(diǎn)重點(diǎn):牢固掌握事務(wù)的基本概念和事務(wù)的ACID性質(zhì)。掌握SQL-92中四類(lèi)數(shù)據(jù)異常的符號(hào)化表示及其對(duì)應(yīng)的隔離級(jí)別,在缺少合理調(diào)度情況下系統(tǒng)可能出現(xiàn)的各類(lèi)數(shù)據(jù)異常。掌握串行調(diào)度、可串行化調(diào)度、沖突可串行化調(diào)度的聯(lián)系和區(qū)別;掌握可串行化調(diào)度、沖突可串行化調(diào)度的證明方法。難點(diǎn):理解1)如何將SQL語(yǔ)句轉(zhuǎn)換為數(shù)據(jù)庫(kù)中數(shù)據(jù)項(xiàng)的多寫(xiě)操作;2)事務(wù)如何將多個(gè)SQL封裝成事務(wù);3)事務(wù)的執(zhí)行模型。實(shí)驗(yàn)內(nèi)容在數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab)基礎(chǔ)上,實(shí)現(xiàn)開(kāi)啟事務(wù)(BEGIN)、提交事務(wù)(COMMIT)、回滾事務(wù)(ABORT)三條事務(wù)控制語(yǔ)句。考察的知識(shí)點(diǎn)包括事務(wù)基本概念、事務(wù)的執(zhí)行模型等,通過(guò)該實(shí)驗(yàn),考查學(xué)生對(duì)事務(wù)概念和事務(wù)執(zhí)行的理解。第11章并發(fā)控制內(nèi)容概述并發(fā)控制的目的是確保事務(wù)執(zhí)行的一致性(C)和隔離性(I)。按照可串行化理論,給定一組事務(wù)的調(diào)度執(zhí)行,如果其結(jié)果等價(jià)于某一個(gè)串行執(zhí)行這組事務(wù)的結(jié)果,則這組事務(wù)的調(diào)度是可串行化的。本章介紹了三類(lèi)沖突可串行化下的并發(fā)控制實(shí)現(xiàn)技術(shù),包括兩階段封鎖協(xié)議、時(shí)間戳排序協(xié)議和樂(lè)觀并發(fā)控制協(xié)議。介紹了兩階段封鎖協(xié)議如何保證事務(wù)調(diào)度的沖突可串行化,以及兩階段封鎖協(xié)議可能出現(xiàn)的問(wèn)題:級(jí)聯(lián)回滾和死鎖。為了解決事務(wù)的級(jí)聯(lián)回滾問(wèn)題,講解了嚴(yán)格兩階段封鎖協(xié)議和強(qiáng)嚴(yán)格兩階段封鎖協(xié)議,進(jìn)一步明確了鎖的釋放時(shí)間是在事務(wù)提交或回滾后;為了解決死鎖問(wèn)題,介紹了死鎖檢測(cè)和死鎖預(yù)防技術(shù);針對(duì)死鎖預(yù)防技術(shù),介紹了No-Wait、Wait-Die、Wound-Wait三種策略,避免事務(wù)調(diào)度過(guò)程中可能存在的環(huán)。介紹了弱隔離級(jí)別下的并發(fā)控制技術(shù),包括三級(jí)封鎖協(xié)議和多版本并發(fā)控制。本章目標(biāo)掌握沖突可串行化下的并發(fā)控制方法原理與實(shí)現(xiàn)技術(shù),包括兩階段封鎖協(xié)議、時(shí)間戳排序協(xié)議和樂(lè)觀并發(fā)控制協(xié)議;了解弱隔離級(jí)別下的并發(fā)控制技術(shù),包括三級(jí)封鎖協(xié)議和多版本并發(fā)控制。重點(diǎn)和難點(diǎn)重點(diǎn):牢固掌握兩階段封鎖協(xié)議的基本原理和實(shí)現(xiàn)技術(shù)。理解兩階段封鎖協(xié)議中可能出現(xiàn)的級(jí)聯(lián)回滾和死鎖問(wèn)題,掌握避免級(jí)聯(lián)回滾的嚴(yán)格兩階封鎖協(xié)議方法;理解死鎖預(yù)防方法的基本原理,掌握死鎖預(yù)防的三種常見(jiàn)策略(No-Wait、Wait-Die、Wound-Wait)及其實(shí)現(xiàn)技術(shù)。難點(diǎn):理解事務(wù)的隔離級(jí)別與并發(fā)控制技術(shù)之間的關(guān)系。沖突可串行化下基本的并發(fā)控制方法包括兩階段封鎖協(xié)議、時(shí)間戳排序協(xié)議和樂(lè)觀并發(fā)控制協(xié)議,牢固掌握并發(fā)控制技術(shù)的核心理念,熟練掌握并發(fā)控制方法的聯(lián)系和區(qū)別。理解多版本并發(fā)控制技術(shù)。實(shí)驗(yàn)內(nèi)容實(shí)驗(yàn)9沖突可串行化掌握避免級(jí)聯(lián)回滾的嚴(yán)格兩階封鎖協(xié)議方法;理解死鎖預(yù)防方法的基本原理,掌握死鎖預(yù)防的三種常見(jiàn)策略(No-Wait、Wait-Die、Wound-Wait)及其實(shí)現(xiàn)技術(shù)。在數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab)基礎(chǔ)上,實(shí)現(xiàn)一個(gè)支持死鎖預(yù)防的兩階段并發(fā)控制協(xié)議,要求事務(wù)調(diào)度達(dá)到可串行化隔離級(jí)別??疾斓闹R(shí)點(diǎn)包括封鎖、兩階段封鎖協(xié)議,死鎖預(yù)防等,通過(guò)該實(shí)驗(yàn),考查學(xué)生使用兩階段封鎖協(xié)議實(shí)現(xiàn)可串行化調(diào)度的能力。第12章故障恢復(fù)內(nèi)容概述數(shù)據(jù)庫(kù)管理系統(tǒng)在正常運(yùn)行的過(guò)程中可能會(huì)出現(xiàn)故障,這些故障有些是可以提前預(yù)知的,有些是不能提前預(yù)知的,數(shù)據(jù)庫(kù)管理系統(tǒng)的故障恢復(fù)子系統(tǒng)可以確保,無(wú)論出現(xiàn)哪種故障,都能將數(shù)據(jù)庫(kù)中的數(shù)據(jù)恢復(fù)到故障發(fā)生前的正確的狀態(tài)。本章重點(diǎn)講解了數(shù)據(jù)庫(kù)恢復(fù)技術(shù)。介紹了數(shù)據(jù)庫(kù)運(yùn)行中可能發(fā)生的故障類(lèi)型、事務(wù)讀寫(xiě)的訪問(wèn)模式、以及各類(lèi)故障下數(shù)據(jù)的一致性破壞;講解了恢復(fù)的基本實(shí)現(xiàn)技術(shù),包括登記日志(Logging)、WAL日志、備份技術(shù),登記日志文件所要遵循的原則;針對(duì)事務(wù)故障、系統(tǒng)故障和介質(zhì)故障等不同故障的恢復(fù)策略和恢復(fù)方法。討論了具有檢查點(diǎn)的恢復(fù)技術(shù);詳細(xì)描述了ARIES算法的基本原理和實(shí)現(xiàn)技術(shù)。本章目標(biāo)了解數(shù)據(jù)庫(kù)恢復(fù)技術(shù)的重要性,針對(duì)不同的故障類(lèi)型,掌握數(shù)據(jù)庫(kù)恢復(fù)的基本原理和實(shí)現(xiàn)技術(shù),以及具有檢查點(diǎn)的恢復(fù)技術(shù)。重點(diǎn)和難點(diǎn)重點(diǎn):熟練掌握數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中可能出現(xiàn)的各類(lèi)故障,做到舉一反三;能夠理解事務(wù)讀寫(xiě)的訪問(wèn)模式,特別是事務(wù)讀寫(xiě)操作、緩沖區(qū)塊(包括數(shù)據(jù)緩沖區(qū)與日志緩沖區(qū))、數(shù)據(jù)頁(yè)三者之間的邏輯關(guān)系;理解各類(lèi)故障下數(shù)據(jù)一致性的破壞與正確的故障恢復(fù);掌握基于備份+WAL日志的數(shù)據(jù)庫(kù)恢復(fù)基本原理;掌握具有檢查點(diǎn)恢復(fù)技術(shù)的實(shí)現(xiàn)原理。難點(diǎn):掌握AIRES算法的基本原理和實(shí)現(xiàn)技術(shù)。數(shù)據(jù)庫(kù)產(chǎn)品中的恢復(fù)技術(shù)常采用ARIES算法,如何從系統(tǒng)的層面上,掌握如下技術(shù)要點(diǎn):(1)登記日志文件所要遵循的原則:先寫(xiě)日志、后寫(xiě)數(shù)據(jù);(2)已經(jīng)回滾或部分回滾的事務(wù),如何確保級(jí)聯(lián)回滾下該事務(wù)故障恢復(fù)的正確性和高效性;(3)支持模糊檢查點(diǎn)。實(shí)驗(yàn)內(nèi)容實(shí)驗(yàn)10
ARIES算法實(shí)驗(yàn)掌握故障恢復(fù)技術(shù)的原理和實(shí)現(xiàn)方法。實(shí)驗(yàn)內(nèi)容包括。實(shí)驗(yàn)方式:在數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab)補(bǔ)充代碼。在數(shù)據(jù)庫(kù)原型系統(tǒng)框架Rucbase(/ruc-deke/rucbase-lab)基礎(chǔ)上,實(shí)現(xiàn)ARIES故障恢復(fù)算法,要求在系統(tǒng)在發(fā)生事務(wù)故障和系統(tǒng)故障后能夠重啟并恢復(fù)到故障發(fā)生前的一致性狀態(tài)??疾斓闹R(shí)點(diǎn)包括REDO/UNDO日志、WAL機(jī)制、檢查點(diǎn)、ARIES算法等,通過(guò)該實(shí)驗(yàn),考察學(xué)生使用ARIES算法實(shí)現(xiàn)數(shù)據(jù)庫(kù)系統(tǒng)故障恢復(fù)的能力。第一篇基礎(chǔ)篇第1章概述31.1數(shù)據(jù)庫(kù)系統(tǒng)概述31.1.1數(shù)據(jù)庫(kù)系統(tǒng)的基本概念31.1.2為什么使用數(shù)據(jù)庫(kù)系統(tǒng)51.2數(shù)據(jù)庫(kù)技術(shù)的發(fā)展51.2.1數(shù)據(jù)模型推動(dòng)數(shù)據(jù)庫(kù)技術(shù)發(fā)展61.2.2應(yīng)用需求推動(dòng)數(shù)據(jù)庫(kù)技術(shù)發(fā)展91.2.3計(jì)算平臺(tái)推動(dòng)數(shù)據(jù)庫(kù)技術(shù)發(fā)展131.3數(shù)據(jù)庫(kù)管理系統(tǒng)組成171.3.1數(shù)據(jù)庫(kù)管理系統(tǒng)的功能結(jié)構(gòu)171.3.2數(shù)據(jù)庫(kù)管理系統(tǒng)的模式結(jié)構(gòu)191.3.3數(shù)據(jù)庫(kù)管理系統(tǒng)的體系結(jié)構(gòu)201.3.4數(shù)據(jù)庫(kù)管理系統(tǒng)的執(zhí)行過(guò)程211.4我國(guó)數(shù)據(jù)庫(kù)的發(fā)展歷程231.5本章小結(jié)25習(xí)題25第2章關(guān)系數(shù)據(jù)模型272.1關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)及形式化定義272.1.1關(guān)系概述272.1.2關(guān)系模式302.1.3關(guān)系數(shù)據(jù)庫(kù)302.1.4關(guān)系模型的存儲(chǔ)結(jié)構(gòu)312.2關(guān)系代數(shù)312.2.1傳統(tǒng)的集合運(yùn)算312.2.2專(zhuān)門(mén)的關(guān)系運(yùn)算322.3關(guān)系的完整性342.3.1實(shí)體完整性342.3.2參照完整性352.3.3用戶(hù)定義的完整性362.4本章小結(jié)36習(xí)題36第3章關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言SQL373.1SQL概述373.2數(shù)據(jù)定義373.2.1模式的定義與刪除373.2.2基本表的定義、修改與刪除383.2.3索引的創(chuàng)建413.3基本SQL查詢(xún)413.3.1單表查詢(xún)413.3.2連接查詢(xún)433.3.3集合查詢(xún)453.3.4空值查詢(xún)463.3.5聚集查詢(xún)463.4數(shù)據(jù)更新473.4.1插入數(shù)據(jù)473.4.2修改數(shù)據(jù)483.4.3刪除數(shù)據(jù)483.5視圖493.5.1定義視圖493.5.2查詢(xún)視圖503.5.3更新視圖503.6本章小結(jié)50習(xí)題51實(shí)驗(yàn)51第4章高級(jí)SQL534.1復(fù)雜SQL查詢(xún)534.1.1嵌套查詢(xún)534.1.2遞歸查詢(xún)554.1.3基于派生表的查詢(xún)564.2數(shù)據(jù)庫(kù)完整性574.2.1實(shí)體完整性574.2.2參照完整性574.2.3用戶(hù)定義的完整性584.3數(shù)據(jù)庫(kù)安全性584.3.1數(shù)據(jù)庫(kù)安全性等級(jí)584.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東生態(tài)工程職業(yè)學(xué)院《矩陣論》2023-2024學(xué)年第二學(xué)期期末試卷
- 租賃運(yùn)輸車(chē)輛合同
- 華東交通大學(xué)《實(shí)變函數(shù)一》2023-2024學(xué)年第二學(xué)期期末試卷
- 公司職員聘用合同范本
- 邯鄲職業(yè)技術(shù)學(xué)院《復(fù)變函數(shù)與數(shù)理方程》2023-2024學(xué)年第二學(xué)期期末試卷
- 范文參考合同
- 珠海格力職業(yè)學(xué)院《概率論與數(shù)理統(tǒng)計(jì)B》2023-2024學(xué)年第二學(xué)期期末試卷
- 黃山健康職業(yè)學(xué)院《常微分方程理論教學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京舞蹈學(xué)院《數(shù)字邏輯電路及》2023-2024學(xué)年第二學(xué)期期末試卷
- 北京外國(guó)語(yǔ)大學(xué)《玩轉(zhuǎn)MicrosoftOffice》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年中國(guó)銅畫(huà)市場(chǎng)調(diào)查研究報(bào)告
- 山西省太原市2024-2025學(xué)年九年級(jí)上學(xué)期期末歷史試題(含答案)
- 2024年全國(guó)體育專(zhuān)業(yè)單獨(dú)招生考試數(shù)學(xué)試卷試題真題(含答案)
- 2025屆高三八省聯(lián)考語(yǔ)文試卷分析 課件
- 2025年度檢修計(jì)劃
- 2024-2025學(xué)年冀教版數(shù)學(xué)五年級(jí)上冊(cè)期末測(cè)試卷(含答案)
- 商業(yè)綜合體市場(chǎng)調(diào)研報(bào)告
- 資源枯竭型城市的轉(zhuǎn)型發(fā)展 課件 2024-2025學(xué)年高二上學(xué)期地理人教版選擇性必修2
- 2025屆河北省衡水市衡水中學(xué)高考仿真模擬英語(yǔ)試卷含解析
- 天津市部分區(qū)2023-2024學(xué)年高二上學(xué)期期末考試 生物 含解析
- 變壓器投標(biāo)書(shū)-技術(shù)部分
評(píng)論
0/150
提交評(píng)論