第六章數(shù)據(jù)庫的物理設(shè)計(jì)_第1頁
第六章數(shù)據(jù)庫的物理設(shè)計(jì)_第2頁
第六章數(shù)據(jù)庫的物理設(shè)計(jì)_第3頁
第六章數(shù)據(jù)庫的物理設(shè)計(jì)_第4頁
第六章數(shù)據(jù)庫的物理設(shè)計(jì)_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

VIP免費(fèi)下載

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第6章

數(shù)據(jù)庫的物理設(shè)計(jì)講課內(nèi)容前面重點(diǎn)講述了數(shù)據(jù)庫的高層模型,主要集中在概念層(E-R模型)和邏輯層(關(guān)系模型)上。本章將簡單地介紹與DBMS底層密切相關(guān)的數(shù)據(jù)庫的物理設(shè)計(jì)。數(shù)據(jù)庫性能的

好壞很大程度上取決于數(shù)據(jù)庫的物理設(shè)計(jì),而不僅僅是關(guān)系模式設(shè)計(jì)的好壞、SQL語

句寫的好壞!■數(shù)據(jù)庫設(shè)計(jì)的六階段

■數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)1?/2■4/202物1理庫的物理組織

■數(shù)據(jù)的存1第6章

數(shù)據(jù)庫的物理設(shè)計(jì)什么是數(shù)據(jù)庫設(shè)計(jì)?對于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足用戶的各種需求(信息要求和處理要求);是建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng)的技術(shù),是信息系統(tǒng)開發(fā)和建設(shè)的核心技術(shù);既是一項(xiàng)涉及多學(xué)科的綜合性技術(shù),又是一項(xiàng)龐大的工程項(xiàng)目:“三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù)”是數(shù)據(jù)庫建設(shè)的基本規(guī)律!1/24/2021

2第6章

數(shù)據(jù)庫的物理設(shè)計(jì)問題一應(yīng)用系統(tǒng)的設(shè)計(jì)與數(shù)據(jù)庫設(shè)計(jì)之間的關(guān)系是什么?1/24/20213第6章

數(shù)據(jù)庫的物理設(shè)計(jì)傳統(tǒng)上數(shù)據(jù)庫設(shè)計(jì)只是應(yīng)用系統(tǒng)設(shè)計(jì)的一部分,《軟件工程》課會(huì)講述;二者可以同時(shí)進(jìn)行;二者要相互參照、相互補(bǔ)充。發(fā)展趨勢數(shù)據(jù)庫設(shè)計(jì)是核心;應(yīng)用系統(tǒng)設(shè)計(jì)以數(shù)據(jù)庫設(shè)計(jì)為中心,圍繞著數(shù)據(jù)庫的設(shè)計(jì)而進(jìn)行。1/24/20214第6章

數(shù)據(jù)庫的物理設(shè)計(jì)問題二數(shù)據(jù)庫系統(tǒng)(DBS)或者說應(yīng)用系統(tǒng)的性能調(diào)整可以在幾個(gè)層次上進(jìn)行?1/24/20215第6章

數(shù)據(jù)庫的物理設(shè)計(jì)硬件不同的硬件:PC、小型機(jī)、大型機(jī)、機(jī)群同一硬件:內(nèi)存、CPU、硬盤大小、陣列系統(tǒng)軟件與硬件密切相關(guān):WINDOWS、UNIX、LINUXDBMS的選擇與參數(shù)調(diào)整:緩沖區(qū)大小、檢查點(diǎn)的頻率數(shù)據(jù)庫的高層設(shè)計(jì)1?/2邏4/202輯1設(shè)計(jì):模式的規(guī)范化與數(shù)據(jù)劃分…6第6章

數(shù)據(jù)庫的物理設(shè)計(jì)數(shù)據(jù)劃分Course_schema=(course_name,course_location,

course_capacity)水平劃分根據(jù)課程容量為小于30人、30-80人、80人以上將相關(guān)的表劃分成三個(gè)子表,以便排課。垂直劃分Course_schema=(course_name,1?/2c4/o202u1

rse_location)7§6.1數(shù)據(jù)庫設(shè)計(jì)的六階段數(shù)據(jù)庫設(shè)計(jì)的六個(gè)階段需求分析:數(shù)據(jù)、功能和性能概念結(jié)構(gòu)設(shè)計(jì):E-R模型與E-R圖邏輯結(jié)構(gòu)設(shè)計(jì):將E-R圖轉(zhuǎn)換成關(guān)系表數(shù)據(jù)庫物理設(shè)計(jì):存儲(chǔ)結(jié)構(gòu)與存取路徑,數(shù)據(jù)的劃分與分布數(shù)據(jù)庫的實(shí)施:編程、測試和試運(yùn)行數(shù)據(jù)庫運(yùn)行與維護(hù):監(jiān)控與分析、備份與恢復(fù)、重組織與重構(gòu)造、安全性控制與完整性控制等等1/24/2021

8§6.1數(shù)據(jù)庫設(shè)計(jì)的六階段圖示需求收集和分析設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)數(shù)據(jù)模型優(yōu)化設(shè)計(jì)物理結(jié)構(gòu)評價(jià)設(shè)計(jì),性能預(yù)測物理實(shí)現(xiàn)試驗(yàn)性運(yùn)行使用、維護(hù)數(shù)據(jù)庫1/24/20219§6.1數(shù)據(jù)庫設(shè)計(jì)的六階段數(shù)據(jù)庫設(shè)計(jì)的三個(gè)主要階段概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)數(shù)據(jù)庫的三級模式結(jié)構(gòu)外模式(子模式、用戶模式)是數(shù)據(jù)庫用戶看到自己的數(shù)據(jù)視圖模式(邏輯模式)是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特性的描述,是所有用戶的公共數(shù)據(jù)結(jié)構(gòu)內(nèi)模式(物理模式、存儲(chǔ)模式)?1是/24/2數(shù)021據(jù)庫全體數(shù)據(jù)的內(nèi)部表示或者底層描述10

,§6.2數(shù)據(jù)庫的物理組織數(shù)據(jù)庫與操作系統(tǒng)文件數(shù)據(jù)庫系統(tǒng)是文件系統(tǒng)的發(fā)展,數(shù)據(jù)庫實(shí)現(xiàn)的基礎(chǔ)是操作系統(tǒng)的文件;對數(shù)據(jù)庫的任何操作最終都要轉(zhuǎn)化為對操作系統(tǒng)文件的操作。物理組織的基本問題如何設(shè)計(jì)數(shù)據(jù)庫的文件組織如何設(shè)計(jì)文件中記錄的組織方式1/24/202111§6.2數(shù)據(jù)庫的物理組織舉例在MS

SQL

Server

2000中,一個(gè)數(shù)據(jù)庫是由三個(gè)操作系統(tǒng)文件構(gòu)成的,它們分別是:主數(shù)據(jù)文件:*.MDF次數(shù)據(jù)文件:*.NDF日志文件:*.LDF這些信息存儲(chǔ)在sysfiles系統(tǒng)表中。在MS

SQL

Server

2000中,一個(gè)表中的記錄按以下兩種方式進(jìn)行組織:?1堆/24/2(021Heap):無序12§6.2數(shù)據(jù)庫的物理組織物理組織的對象元數(shù)據(jù)數(shù)據(jù)統(tǒng)計(jì)數(shù)據(jù)索引日志物理組織的目標(biāo)存儲(chǔ)效率要高,能節(jié)省存儲(chǔ)空間;存取效率要高,速度快、代價(jià)小,可節(jié)省存取1/24時(shí)/2021間。13§6.3物理設(shè)計(jì)的內(nèi)容物理設(shè)計(jì)的內(nèi)容確定數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),選擇DBMS……確定數(shù)據(jù)的物理分布(包括數(shù)據(jù)劃分);為數(shù)據(jù)選擇存取路徑,即索引的設(shè)計(jì);調(diào)整和優(yōu)化數(shù)據(jù)庫的性能,如調(diào)整DBMS的某些選項(xiàng)和參數(shù)的設(shè)置。物理設(shè)計(jì)的特點(diǎn)不直接面向最終用戶;一般的用戶不需要了解物理設(shè)計(jì)的細(xì)節(jié);?1物/24/2理021設(shè)計(jì)可以不考慮用戶理解的方便性。14§6.4物理設(shè)計(jì)的目標(biāo)主要的設(shè)計(jì)目標(biāo)有

一是提高數(shù)據(jù)庫的性能,特別是滿足主要應(yīng)用的性能要求;二是有效地利用存儲(chǔ)空間。

在這兩個(gè)目標(biāo)中,第一個(gè)目標(biāo)更為重要,因?yàn)樾阅芤廊皇钱?dāng)今數(shù)據(jù)庫系統(tǒng)的薄弱環(huán)節(jié),而存儲(chǔ)介質(zhì)卻越來越便宜。1/24/202115§6.5數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)數(shù)據(jù)庫文件組織及其結(jié)構(gòu):按照數(shù)據(jù)、索引、日志來組織文件;在邏輯上數(shù)據(jù)庫文件是頁的集合;記錄的組織與結(jié)構(gòu)文件中記錄的組織有多種形式:堆、散列、簇集、順序、B樹類記錄的存儲(chǔ)結(jié)構(gòu):定長記錄變長記錄?1/24混/2021合記錄16層次關(guān)系集中式分布式并行的移動(dòng)的?1/24X/2M021L(DB2:雙引擎)§6.5數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)

確定數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)的過程就是一個(gè)選擇什么樣的DBMS的過程:網(wǎng)狀一旦DBMS確定之后,數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)就確定了。數(shù)據(jù)庫設(shè)計(jì)人員在這方面能做的事情有限。有些DBMS也提供了一定的靈活性,如create

cluster、createindex等17§6.5數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)確定存儲(chǔ)結(jié)構(gòu)的主要因素存取時(shí)間維護(hù)代價(jià)存儲(chǔ)空間利用率

數(shù)據(jù)庫設(shè)計(jì)人員常常要對這些因素進(jìn)行權(quán)衡,一般的DBMS也總是具有一定的靈活

性供你選擇。例如,簇集是把有關(guān)的記錄集中在一個(gè)物理塊內(nèi)或物理上相鄰的區(qū)域內(nèi)存放。1/24/202118§6.6數(shù)據(jù)的存取路徑為什么需要存取路徑?

數(shù)據(jù)庫必須支持多個(gè)用戶的多種應(yīng)用,因而也就必須提供對數(shù)據(jù)訪問的多個(gè)入口。也就是說,對存儲(chǔ)在磁盤上的同一數(shù)據(jù)要提供多條存取路徑。存取路徑的實(shí)現(xiàn)方法索引方法:INDEX

B+樹索引方法是關(guān)系數(shù)據(jù)庫中經(jīng)典的索引存取方法,使用非常普遍。簇集方法:CLUSTER(ORACLE)1/24/2021

19哈希方法:HASH(內(nèi)存/外存)§6.6數(shù)據(jù)的存取路徑關(guān)系數(shù)據(jù)庫中存取路徑的特點(diǎn)存取路徑和數(shù)據(jù)是分離的,對用戶來說是不可見的;存取路徑可以由用戶建立、刪除,也可以由系統(tǒng)動(dòng)態(tài)地建立、刪除。例如:在執(zhí)行查詢時(shí),DBMS的查詢優(yōu)化器會(huì)根據(jù)優(yōu)化策略自動(dòng)地建立索引,以提高查詢的執(zhí)行效率;存取路徑的物理結(jié)構(gòu)通常是順序文件、B+樹文件或散列文件的形式。1/24/2021

20§6.7物理設(shè)計(jì)的相關(guān)因素應(yīng)用的需求應(yīng)用中事務(wù)的內(nèi)容和事務(wù)出現(xiàn)的頻率如何?應(yīng)用需求如何隨著應(yīng)用環(huán)境的變化而變化?數(shù)據(jù)的特性數(shù)據(jù)庫中某個(gè)屬性值的分布、記錄的長度及個(gè)數(shù)等等;數(shù)據(jù)的特性是如何隨著數(shù)據(jù)庫狀態(tài)和應(yīng)用需求的變化而變化?但是,在數(shù)據(jù)庫設(shè)計(jì)的開始階段很難準(zhǔn)確估計(jì)數(shù)據(jù)的特性。1/24/2021

21§6.7物理設(shè)計(jì)的相關(guān)因素綜合因素在進(jìn)行數(shù)據(jù)庫的物理設(shè)計(jì)時(shí)還必須考慮

DBMS、操作系統(tǒng)及計(jì)算機(jī)硬件的特性:DBMS只是整個(gè)計(jì)算機(jī)系統(tǒng)負(fù)荷的一部分;DBS的性能不但取決于數(shù)據(jù)庫的設(shè)計(jì),而且與計(jì)算機(jī)系統(tǒng)的運(yùn)行環(huán)境有關(guān):計(jì)算機(jī)系統(tǒng)是單用戶的還是多用戶的?數(shù)據(jù)庫系統(tǒng)是分布的還是集中的?磁盤是數(shù)據(jù)庫系統(tǒng)專用的,還是全系統(tǒng)共享的?諸如此類的問題……1/24/2021

22§6.7物理設(shè)計(jì)的相關(guān)因素物理設(shè)計(jì)的調(diào)整在進(jìn)行數(shù)據(jù)庫的物理設(shè)計(jì)時(shí),可供選擇的方案很多。例如:各種文件結(jié)構(gòu)和存取路徑的選擇,就可以形成龐大的組合;要窮盡各種可能,尋求最佳設(shè)計(jì),是不可能的。數(shù)據(jù)庫設(shè)計(jì)和一般產(chǎn)品的設(shè)計(jì)不一樣:數(shù)據(jù)庫設(shè)計(jì)只提供一個(gè)初始設(shè)計(jì),在數(shù)據(jù)庫運(yùn)行過程中根據(jù)用戶的要求和實(shí)際情況不斷地調(diào)整;1/24/2021

23§6.7物理設(shè)計(jì)的相關(guān)因素物理設(shè)計(jì)的過程不斷變化的需求貫穿著整個(gè)應(yīng)用的開發(fā):物理設(shè)計(jì)是一個(gè)螺旋上升的過程,當(dāng)然有時(shí)也會(huì)有反復(fù),即推倒重來。物理設(shè)計(jì)的工具直到最近DBMS才提供工具幫助人們進(jìn)行數(shù)據(jù)庫的物理設(shè)計(jì)和調(diào)整:微軟的SQL

Server有一個(gè)調(diào)整向?qū)В梢詫λ饕纳珊蛣h除給出建議;IBM

DB2

V6也有一個(gè)調(diào)整向?qū)В琌racle1/24/2021Expert對全局的參數(shù)給出一個(gè)推薦的值。24舉例:全國人口查詢系統(tǒng)1/24/202125全國人口查詢系統(tǒng)問題描述公安部準(zhǔn)備將全國各省市的人口基本信息采集入庫,目前已確定每個(gè)具有身份證的年滿

16歲的中華人民共和國公民的基本信息包括兩部分:文本信息:大約150K個(gè)字節(jié)圖象信息:大約50K個(gè)字節(jié)建成后的系統(tǒng)供全國所有可能的用戶使用:企業(yè)、學(xué)校、政府、旅店和其他……?1系/24/2統(tǒng)021的主要功能就是按照條件進(jìn)行查詢;系統(tǒng)中的數(shù)據(jù)不會(huì)頻繁地被更新!26全國人口查詢系統(tǒng)設(shè)計(jì)問題對于這樣一個(gè)要求十分簡單的查詢系統(tǒng),你認(rèn)為數(shù)據(jù)庫設(shè)計(jì)的難點(diǎn)是什么?1/24/202127全國人口查詢系統(tǒng)海量信息的問題如果系統(tǒng)只包含13萬人口的信息,那么系統(tǒng)的設(shè)計(jì)將會(huì)比較簡單;假設(shè)數(shù)據(jù)庫將全國13億人口的信息都將存入系統(tǒng),那么這個(gè)數(shù)據(jù)庫的容量將達(dá)到多少?量變引起了質(zhì)變系統(tǒng)的響應(yīng)速度問題:要在很短的時(shí)間內(nèi)響應(yīng)每個(gè)事務(wù)系統(tǒng)的吞吐量問題要在單位時(shí)間內(nèi)處理大量事務(wù)1/24/202128全國人口查詢系統(tǒng)采用什么樣的硬件結(jié)構(gòu)?因?yàn)橥瑫r(shí)訪問這個(gè)系統(tǒng)的并發(fā)用戶非常多,為了保證用戶查詢的響應(yīng)時(shí)間,系統(tǒng)必須支持并行計(jì)算。因此可以采用支持并行計(jì)算的大型計(jì)算機(jī):IBM的大型機(jī)機(jī)群系統(tǒng)同時(shí)還要考慮系統(tǒng)總線的吞吐量和磁盤陣列I/O的吞吐量。1/24/2021

29全國人口查詢系統(tǒng)選用什么樣的DBMS?有沒有商用的DBMS可以管理這樣容量達(dá)幾百T的數(shù)據(jù)?ORACLE號稱可以管理1024TB的數(shù)據(jù)庫,但是實(shí)際應(yīng)用的一個(gè)最大數(shù)據(jù)庫只有5-15TB;SQL

SERVER號稱可以管理1048516TB的數(shù)

據(jù)庫,但目前最大的數(shù)據(jù)庫是Jim

Gray……解決辦法需要將這些數(shù)據(jù)放到幾十個(gè)數(shù)據(jù)庫管理系統(tǒng)中去,而不是一個(gè)DBMS下的幾十個(gè)數(shù)據(jù)庫;1/24/2021

30必須選擇那些支持?jǐn)?shù)據(jù)分布和并行計(jì)算,并全國人口查詢系統(tǒng)數(shù)據(jù)分布與劃分全國31個(gè)省市自然而然就構(gòu)成了數(shù)據(jù)的一種分布方式:31個(gè)DBMSs;而在一個(gè)省內(nèi)的數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)可以按照性別和年齡等屬性進(jìn)行劃分,將數(shù)據(jù)放在不同的磁盤上。查詢系統(tǒng)可以充分利用數(shù)1/24據(jù)/2021的分布與劃分來滿足性能上的要求!男女性別年齡16~3536~5556以上例如“查找一個(gè)名叫馮建華的男性青年”索引?數(shù)據(jù)集中存放31全國人口查詢系統(tǒng)應(yīng)用邏輯的處理如何在31個(gè)獨(dú)立的數(shù)據(jù)庫系統(tǒng)之上給程序員提供更好的應(yīng)用編程環(huán)境呢?程序員自己編寫應(yīng)用邏輯控制程序;利用數(shù)據(jù)倉庫管理系統(tǒng);利用聯(lián)邦數(shù)據(jù)庫管理系統(tǒng)。1/24/2021查找一個(gè)名叫馮建華的男性青年數(shù)據(jù)集中存放

溫馨提示

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

評論

0/150

提交評論