什么是數(shù)據(jù)庫的概念設(shè)計,邏輯設(shè)計,物理設(shè)計,以及三者的關(guān)系
1.概念設(shè)計;對用戶要求描述的現(xiàn)實世界(可能是一個工廠、一個商場或者一個學(xué)校等),通過對其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應(yīng)反映現(xiàn)實世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關(guān)系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)據(jù)庫在計算機(jī)上的具體實現(xiàn)細(xì)節(jié),用一種抽象的形式表示出來。
以擴(kuò)充的實體—(E-R模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實世界各部門所含的各種實體及其屬性、實體間的聯(lián)系以及對信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個用戶的局部視圖集成為一個全局視圖,即用戶要描述的現(xiàn)實世界的概念數(shù)據(jù)模型。
2.邏輯設(shè)計;主要工作是將現(xiàn)實世界的概念數(shù)據(jù)模型設(shè)計成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”。
3.物理設(shè)計;根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機(jī)結(jié)構(gòu)的各項物理設(shè)計措施,對具體的應(yīng)用任務(wù)選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計的結(jié)果就是所謂“物理數(shù)據(jù)庫”。
4.三者關(guān)系;由上到下,先要概念設(shè)計,接著邏輯設(shè)計,再是物理設(shè)計,一級一級設(shè)計
數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)三者的區(qū)別和聯(lián)系
聯(lián)系:
首先數(shù)據(jù)庫系統(tǒng)(DBS)包括數(shù)據(jù)庫(DB)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)
區(qū)別:
數(shù)據(jù)庫(DataBase,簡稱DB)
數(shù)據(jù)庫是“按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫”。數(shù)據(jù)庫能為各種用戶共享,具有較小冗余度、數(shù)據(jù)間聯(lián)系緊密而又有較高的數(shù)據(jù)獨立性等特點。
數(shù)據(jù)庫管理系統(tǒng)(DataBaseMangementSystem,簡稱DBMS)
數(shù)據(jù)庫管理系統(tǒng)是一種操縱和管理數(shù)據(jù)庫的軟件,用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱DBMS。
它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。用戶通過dbms訪問數(shù)據(jù)庫中的數(shù)據(jù),數(shù)據(jù)庫管理員也通過dbms進(jìn)行數(shù)據(jù)庫的維護(hù)工作。它可使多個應(yīng)用程序和用戶用不同的方法在同時或不同時刻去建立,修改和詢問數(shù)據(jù)庫。
數(shù)據(jù)庫系統(tǒng)(DataBaseSystem,簡稱DBS)
數(shù)據(jù)庫系統(tǒng)一般由4個部分組成:
1、數(shù)據(jù)庫(DataBase,DB)
2、硬件:構(gòu)成計算機(jī)系統(tǒng)的各種物理設(shè)備,包括存儲所需的外部設(shè)備。硬件的配置應(yīng)滿足整個數(shù)據(jù)庫系統(tǒng)的需要。
3、軟件:包括操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)及應(yīng)用程序。
4、人員:主要有4類。①系統(tǒng)分析員和數(shù)據(jù)庫設(shè)計人員;②應(yīng)用程序猿;③利用接口或查詢語言訪問數(shù)據(jù)庫的相關(guān)人員;④數(shù)據(jù)庫管理員。
數(shù)據(jù)庫存儲原理和結(jié)構(gòu)
是指數(shù)據(jù)庫如何在磁盤上存儲數(shù)據(jù)的方式。一般情況下,數(shù)據(jù)庫系統(tǒng)通過數(shù)據(jù)管理軟件來實現(xiàn)對數(shù)據(jù)的存儲、管理及訪問。以下是數(shù)據(jù)庫存儲原理和結(jié)構(gòu)的基本概念:
1.數(shù)據(jù)文件:數(shù)據(jù)庫中存儲數(shù)據(jù)的基本單位,是物理上存在于磁盤上的文件。一般來說,每個數(shù)據(jù)文件對應(yīng)著一個表或索引。
2.表空間:是由多個數(shù)據(jù)文件組成的邏輯存儲單元,用于對數(shù)據(jù)文件進(jìn)行管理以及對表和索引進(jìn)行分配和管理。可以將表空間看做是一個大容器,用來存儲所有的數(shù)據(jù)文件和對象。
3.段:即為了方便管理和存儲而將表空間分成若干個部分的邏輯單位,也可以稱之為分區(qū)。每個段都包含了一組數(shù)據(jù)塊,并且只能屬于一個表空間。
4.數(shù)據(jù)塊:是數(shù)據(jù)庫中最小的存儲單位,一般大小為2K、4K、8K等。每個數(shù)據(jù)塊都有一個唯一的地址,可以存儲一定數(shù)量的記錄。在硬盤上讀寫數(shù)據(jù)時,操作系統(tǒng)會以數(shù)據(jù)塊為單位進(jìn)行傳輸。
5.記錄:存儲在數(shù)據(jù)庫中的基本數(shù)據(jù)單元,通常對應(yīng)于表中的一行數(shù)據(jù)。每個記錄包含一組字段,用來描述記錄所代表的實體。
6.段類型:數(shù)據(jù)庫會將不同類型的對象存放在不同類型的段中。比如,數(shù)據(jù)表存儲在數(shù)據(jù)段中、索引存儲在索引段中、Lob(大對象)存儲在Lob段中等。
7.索引:為了提高數(shù)據(jù)訪問的效率,數(shù)據(jù)庫通常使用索引來加速查詢操作。索引本身也是一種特殊的數(shù)據(jù)結(jié)構(gòu),在硬盤上也有相應(yīng)的存儲形式。
綜上所述,數(shù)據(jù)庫的存儲原理和結(jié)構(gòu)主要包括數(shù)據(jù)文件、表空間、段、數(shù)據(jù)塊、記錄、段類型和索引等基本概念。不同的數(shù)據(jù)庫系統(tǒng)在實現(xiàn)上可能存在著一定的差異,但基本框架和原理大致相同。了解這些概念對于理解數(shù)據(jù)庫的工作原理及進(jìn)行數(shù)據(jù)庫性能優(yōu)化等方面非常重要。
什么是數(shù)據(jù)庫管理系統(tǒng)(DBMS)
數(shù)據(jù)庫管理系統(tǒng)(databasemanagementsystem)是一種操縱和管理數(shù)據(jù)庫的大型軟件,用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱dbms。它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。用戶通過dbms訪問數(shù)據(jù)庫中的數(shù)據(jù),數(shù)據(jù)庫管理員也通過dbms進(jìn)行數(shù)據(jù)庫的維護(hù)工作。它可使多個應(yīng)用程序和用戶用不同的方法在同時或不同時刻去建立,修改和詢問數(shù)據(jù)庫。DBMS提供數(shù)據(jù)定義語言DDL(DataDefinitionLanguage)與數(shù)據(jù)操作語言DML(DataManipulationLanguage),供用戶定義數(shù)據(jù)庫的模式結(jié)構(gòu)與權(quán)限約束,實現(xiàn)對數(shù)據(jù)的追加、刪除等操作。數(shù)據(jù)庫管理系統(tǒng)的功能:1、數(shù)據(jù)定義功能2、數(shù)據(jù)操縱功能3、數(shù)據(jù)庫的運(yùn)行管理功能4、數(shù)據(jù)庫的建立和維護(hù)功能(數(shù)據(jù)的安全性保護(hù)、數(shù)據(jù)的完整性控制、并發(fā)控制、數(shù)據(jù)庫恢復(fù))
什么是數(shù)據(jù)庫管理系統(tǒng)它具有哪些功能
數(shù)據(jù)庫管理系統(tǒng)(databasemanagementsystem)是一種操縱和管理數(shù)據(jù)庫的大型軟件,用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱dbms。它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。用戶通過dbms訪問數(shù)據(jù)庫中的數(shù)據(jù),數(shù)據(jù)庫管理員也通過dbms進(jìn)行數(shù)據(jù)庫的維護(hù)工作。它可使多個應(yīng)用程序和用戶用不同的方法在同時或不同時刻去建立,修改和詢問數(shù)據(jù)庫。DBMS提供數(shù)據(jù)定義語言DDL(DataDefinitionLanguage)與數(shù)據(jù)操作語言DML(DataManipulationLanguage),供用戶定義數(shù)據(jù)庫的模式結(jié)構(gòu)與權(quán)限約束,實現(xiàn)對數(shù)據(jù)的追加、刪除等操作。
數(shù)據(jù)庫管理系統(tǒng)的功能:
1、數(shù)據(jù)定義功能2、數(shù)據(jù)操縱功能3、數(shù)據(jù)庫的運(yùn)行管理功能4、數(shù)據(jù)庫的建立和維護(hù)功能(數(shù)據(jù)的安全性保護(hù)、數(shù)據(jù)的完整性控制、并發(fā)控制、數(shù)據(jù)庫恢復(fù))
數(shù)據(jù)庫設(shè)計的基本步驟
需求分析
調(diào)查和分析用戶的業(yè)務(wù)活動和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們在業(yè)務(wù)活動中交流的情況,確定用戶對數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。
需求分析是在用戶調(diào)查的基礎(chǔ)上,通過分析,逐步明確用戶對系統(tǒng)的需求,包括數(shù)據(jù)需求和圍繞這些數(shù)據(jù)的業(yè)務(wù)處理需求。在需求分析中,通過自頂向下,逐步分解的方法分析系統(tǒng),分析的結(jié)果采用數(shù)據(jù)流程圖(DFD)進(jìn)行圖形化的描述。
概念設(shè)計
對用戶要求描述的現(xiàn)實世界(可能是一個工廠、一個商場或者一個學(xué)校等),通過對其中諸處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應(yīng)反映現(xiàn)實世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關(guān)系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)據(jù)庫在計算機(jī)上的具體實現(xiàn)細(xì)節(jié),用一種抽象的形式表示出來。以擴(kuò)充的實體—(E-R模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實世界各部門所含的各種實體及其屬性、實體間的聯(lián)系以及對信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個用戶的局部視圖集成為一個全局視圖,即用戶要描述的現(xiàn)實世界的概念數(shù)據(jù)模型。
邏輯設(shè)計
主要工作是將現(xiàn)實世界的概念數(shù)據(jù)模型設(shè)計成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”。
物理設(shè)計
根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機(jī)結(jié)構(gòu)的各項物理設(shè)計措施,對具體的應(yīng)用任務(wù)選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計的結(jié)果就是所謂“物理數(shù)據(jù)庫”。
驗證設(shè)計
在上述設(shè)計的基礎(chǔ)上,收集數(shù)據(jù)并具體建立一個數(shù)據(jù)庫,運(yùn)行一些典型的應(yīng)用任務(wù)來驗證數(shù)據(jù)庫設(shè)計的正確性和合理性。一般,一個大型數(shù)據(jù)庫的設(shè)計過程往往需要經(jīng)過多次循環(huán)反復(fù)。當(dāng)設(shè)計的某步發(fā)現(xiàn)問題時,可能就需要返回到前面去進(jìn)行修改。因此,在做上述數(shù)據(jù)庫設(shè)計時就應(yīng)考慮到今后修改設(shè)計的可能性和方便性。