激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫(kù)技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫(kù) - Oracle - 淺談Oracle數(shù)據(jù)庫(kù)的建模與設(shè)計(jì)

淺談Oracle數(shù)據(jù)庫(kù)的建模與設(shè)計(jì)

2019-10-26 19:41Oracle教程網(wǎng) Oracle

要開(kāi)發(fā)一個(gè)基于 數(shù)據(jù)庫(kù) 的應(yīng)用系統(tǒng),其中最關(guān)鍵的一步就是整個(gè)系統(tǒng)所依據(jù)的數(shù)據(jù)庫(kù)的建模 設(shè)計(jì) ,從邏輯的到物理的,一個(gè)環(huán)節(jié)疏于設(shè)計(jì),整個(gè)的應(yīng)用系統(tǒng)便似建立在危房之上,隨著開(kāi)發(fā)過(guò)程的不斷深入,它要隨時(shí)面臨著各種難

要開(kāi)發(fā)一個(gè)基于數(shù)據(jù)庫(kù)的應(yīng)用系統(tǒng),其中最關(guān)鍵的一步就是整個(gè)系統(tǒng)所依據(jù)的數(shù)據(jù)庫(kù)的建模設(shè)計(jì),從邏輯的到物理的,一個(gè)環(huán)節(jié)疏于設(shè)計(jì),整個(gè)的應(yīng)用系統(tǒng)便似建立在危房之上,隨著開(kāi)發(fā)過(guò)程的不斷深入,它要隨時(shí)面臨著各種難

以預(yù)料的風(fēng)險(xiǎn),開(kāi)發(fā)者要為修改或重新設(shè)計(jì)沒(méi)有設(shè)計(jì)好的數(shù)據(jù)庫(kù)系統(tǒng)而付出難以預(yù)料的代價(jià)。所以,一個(gè)良好的數(shù)據(jù)庫(kù)設(shè)計(jì)是高效率的系統(tǒng)所必須的。

一、邏輯建模

數(shù)據(jù)庫(kù)設(shè)計(jì)的方法因具體數(shù)據(jù)庫(kù)而異,但是建模階段的相同的,所以可以用一些通用的工具來(lái)進(jìn)行,如Rationalrose,PowerDesigner等,這一階段主要是依據(jù)系統(tǒng)的需求,獲取與分析要實(shí)現(xiàn)的應(yīng)用系統(tǒng)信息,進(jìn)行數(shù)據(jù)內(nèi)部以及外在關(guān)系的分析,從而有效地建立整個(gè)系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)(在關(guān)系數(shù)據(jù)庫(kù)中通常稱為表結(jié)構(gòu)),在此基礎(chǔ)上對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)量、數(shù)據(jù)流量、及響應(yīng)速度的估算分析,這樣數(shù)據(jù)模型就產(chǎn)生了。具體的操作準(zhǔn)則是數(shù)據(jù)庫(kù)的幾個(gè)范式、用戶的具體需求和分析者的經(jīng)驗(yàn),從數(shù)據(jù)庫(kù)的性能、安全、方便管理、易于開(kāi)發(fā)等方面出發(fā),具體方法因分析員的喜好和習(xí)慣而異,可以不用工具,最好使用工具,能讓分析過(guò)程簡(jiǎn)便,最主要是能生成一些圖,如E-R圖,讓分析過(guò)程一目了然。

二、物理設(shè)計(jì)

此步設(shè)計(jì)和系統(tǒng)將具體使用的數(shù)據(jù)庫(kù)有關(guān),也和數(shù)據(jù)庫(kù)所運(yùn)行的硬、軟件平臺(tái)有關(guān),目的是盡量合理地給數(shù)據(jù)庫(kù)分配物理空間,這一步在數(shù)據(jù)庫(kù)設(shè)計(jì)中很重要,關(guān)系到數(shù)據(jù)庫(kù)數(shù)據(jù)的安全和數(shù)據(jù)庫(kù)的性能,具體的來(lái)說(shuō),這一步包括相應(yīng)表空間的數(shù)據(jù)文件在磁盤上的分配,還要根據(jù)數(shù)據(jù)量的大小確定redolog文件、rollback段的大小,然后進(jìn)行分配,這些文件的分配要遵循一些原則,本著利于備份,利于性能優(yōu)化的原則,原則如下(以O(shè)RACLE數(shù)據(jù)庫(kù)為例):

1、為表和索引建立不同的表空間,禁止在系統(tǒng)表空間中放入非核心oracle系統(tǒng)成分的對(duì)象,確保數(shù)據(jù)表空間和索引表空間位于不同的磁盤磁盤驅(qū)動(dòng)器上。

2、了解終端用戶怎樣訪問(wèn)數(shù)據(jù),如果可能,將經(jīng)常同時(shí)查詢和頻繁查詢的對(duì)象放在不同的物理磁盤上。

3、當(dāng)數(shù)據(jù)庫(kù)包含允許用戶并行訪問(wèn)不同數(shù)據(jù)元素的大對(duì)象時(shí),將對(duì)象分割存放在多個(gè)磁盤上是有好處的。可以采用分區(qū)。在某個(gè)操作系統(tǒng)平臺(tái)上定義擁有數(shù)百萬(wàn)行的表時(shí),則更需小心,因?yàn)閿?shù)據(jù)庫(kù)文件的大小受到限止,這種限制是由操作系統(tǒng)而不是由oracle引起的。

4、在獨(dú)立的各盤上至少創(chuàng)建兩個(gè)用戶定義的rollback表空間,以存放用戶自己的rollback段。在初始化文件中安排rollback段的次序,使它們?cè)诙鄠€(gè)磁盤之間進(jìn)行切換。

5、將redolog文件放在一個(gè)讀寫較少的盤上。對(duì)于每個(gè)oracle實(shí)例要建立兩個(gè)以上的redolog組,同組的兩個(gè)成員放在不同的設(shè)備上。

6、確立表和索引的大小,這決定了保存它們所需的表空間的尺寸,也決定了哪些表空間物理地裝在哪些盤上和哪些表空間可以結(jié)合在一起。具體的估算方法可以按照oracle一些公式,這里還要按照各個(gè)表的具體特性,用途,定義它的存貯參數(shù)如(pctfree,pctused)。

三、關(guān)于數(shù)據(jù)庫(kù)參數(shù)的設(shè)計(jì)

每個(gè)數(shù)據(jù)庫(kù)在建立時(shí),都有缺省的參數(shù)設(shè)置,但是對(duì)于具體的應(yīng)用要求參數(shù)設(shè)置可能不同,缺省的參數(shù)設(shè)置往往需要根據(jù)應(yīng)用系統(tǒng)的特點(diǎn)而需要改動(dòng),如每個(gè)數(shù)據(jù)庫(kù)的操作系統(tǒng)平臺(tái)、instance數(shù)目、各種內(nèi)存大小的設(shè)置、采取的線程方式、備份方式等不同,具體的參數(shù)就一定要進(jìn)行最為恰當(dāng)?shù)男薷模@個(gè)步驟對(duì)數(shù)據(jù)庫(kù)性能很重要,也是保證應(yīng)用系統(tǒng)所要求的數(shù)據(jù)庫(kù)功能得以實(shí)現(xiàn)重要一步。

四、與開(kāi)發(fā)軟件的接口問(wèn)題

數(shù)據(jù)庫(kù)設(shè)計(jì)最后要考慮的是與要選擇的開(kāi)發(fā)軟件之間的接口問(wèn)題,要準(zhǔn)備好接口程序,有些是第三方軟件已經(jīng)備好的,有些是數(shù)據(jù)庫(kù)本身要具備的,如jdbc,bde,ado,等與數(shù)據(jù)庫(kù)的接口,主要是考慮接口的可用性、效率問(wèn)題。這一步主要從經(jīng)驗(yàn)出發(fā),因?yàn)檫@種產(chǎn)品不斷出臺(tái),而且都是經(jīng)過(guò)各商家的吹捧,要在實(shí)踐中決定哪個(gè)是最適合。

以上是數(shù)據(jù)庫(kù)建模設(shè)計(jì)的幾個(gè)重要步驟的大致分析,整個(gè)設(shè)計(jì)過(guò)程是不斷地改進(jìn)的,是數(shù)據(jù)庫(kù)管理員、設(shè)計(jì)人員、開(kāi)發(fā)人員共同完成的,只是各有側(cè)重點(diǎn)不同,數(shù)據(jù)庫(kù)管理員側(cè)重于是2、3步的設(shè)計(jì),設(shè)計(jì)人員側(cè)重于1步的設(shè)計(jì),而開(kāi)發(fā)人員側(cè)重于4步的設(shè)計(jì),由于有些應(yīng)用系統(tǒng)的編程環(huán)境和實(shí)際應(yīng)用環(huán)境不同,所以要做兩套設(shè)計(jì),并注意兩套設(shè)計(jì)的兼容性可移植性。

下面結(jié)合一個(gè)實(shí)際開(kāi)發(fā)的勞資管理系統(tǒng)中的數(shù)據(jù)庫(kù)設(shè)計(jì),對(duì)以上幾個(gè)步驟做進(jìn)一步解釋。

該系統(tǒng)應(yīng)用于大型企業(yè)集團(tuán),包括幾十個(gè)分廠,基本數(shù)據(jù)均來(lái)源于各分廠,各分廠有一套access數(shù)據(jù)庫(kù),存貯著自己的人才檔案信息,由各廠自己維護(hù),定期傳到總的數(shù)據(jù)庫(kù)里,供勞資處各室查詢、統(tǒng)計(jì)用,。這是一個(gè)分部式的數(shù)據(jù)庫(kù)。

一、邏輯建模

首先是對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)量、數(shù)據(jù)流量、及響應(yīng)速度的估算分析,這一步對(duì)物理設(shè)計(jì)也是必須的,勞資系統(tǒng)的主要數(shù)據(jù)是人員檔案,大概有100兆左右,還有人員配備等信息加上工種序列、工資等級(jí)、廠礦車間等各種編碼,總的數(shù)據(jù)量大約在某些方面300兆左右。數(shù)據(jù)的輸入、維護(hù)大部分在各廠礦進(jìn)行,然后到處里集中,所以數(shù)據(jù)流量很大,對(duì)響應(yīng)速度要求一般。

在邏輯建模上的工具上,采用Rantionalrose2000,根據(jù)用戶的需求,設(shè)計(jì)各種usecaseview,在logicview中生成數(shù)據(jù)庫(kù)的實(shí)體,及實(shí)體之間的E-R圖,然后生成Datamodeler,確定以后,用Schemageneration在建好的數(shù)據(jù)庫(kù)中的對(duì)應(yīng)的用戶下生成表。

詳細(xì)的圖很繁瑣,在這里就不展示了。

二、物理設(shè)計(jì)

1、因?yàn)槁毠n案信息庫(kù)很大,還有照片,所以把它分成兩個(gè)表,把照片單獨(dú)地放在一個(gè)表中,并且采用分區(qū)技術(shù),在檔案表、照片表上建立分區(qū),不同的分區(qū)分別放在不同的表空間。

2、因?yàn)槁毠n案信息庫(kù)里有許多編碼,查詢的時(shí)候要和編碼庫(kù)一起進(jìn)行read操作,所以不把職工檔案信息表和編碼庫(kù)放在一個(gè)表空間。

3、建立二個(gè)rollback表空間,十個(gè)rollback段,分區(qū)放在二個(gè)表空間里,建立一個(gè)比較大的rollback段,因?yàn)槁毠n案信息表經(jīng)常會(huì)有批量的修改與添加。

4、將redolog文件放在一個(gè)讀寫較少的盤上。建立三個(gè)redolog組,同組的兩個(gè)成員放在兩個(gè)盤上。因?yàn)檫x用的是ARCHIVELOG的備份方式。

5、根據(jù)每個(gè)表的性質(zhì),確定其存貯的參數(shù),如職工檔案信息表的修改、刪除、插入都比較多,所以把它的Pctfree10,Pctused80定大小,估算出它大致需要的block數(shù),算出存放這些表的表空間的數(shù)據(jù)文件的大小。

6、根據(jù)用戶的需求,建立一套數(shù)據(jù)庫(kù)的安全體系。也就是總結(jié)出幾種權(quán)限級(jí)別的用戶,建立這些用戶,并給這些用戶賦上相應(yīng)的僅限,供開(kāi)發(fā)人員編程時(shí)使用。

三、參數(shù)的設(shè)置

缺省的初始化參數(shù)文件中,選擇large。因?yàn)橛脩魯?shù)很多,100個(gè)左右。

SHARED_POOL_SIZE,與數(shù)據(jù)庫(kù)大小有關(guān),也與應(yīng)用軟件有關(guān)。這里設(shè)成缺省值的1.5倍。

DB_BLOCK_BUFFERS根據(jù)所用服務(wù)器的內(nèi)存與交易數(shù)的大小,設(shè)為25兆。

SORT_AREA_SIZE根據(jù)所用服務(wù)器的內(nèi)存,設(shè)為10兆

LOG_BUFFER用缺省值的1.5倍。

DBWR_IO_SLAVES設(shè)為1

ROLLBACK_SEGMENTS根據(jù)交易量的大小,定為10個(gè)。分別放在兩個(gè)磁盤上。

PROCESS80

MTS_SERVERS3

MTS_DISPATCHERStcp,3

ARCHIVE_LOG_STARTTRUE采用ARCHIVE方式備份。

這些參數(shù)的確定是暫時(shí)的,沒(méi)有一個(gè)系統(tǒng)可以運(yùn)行之前把參數(shù)確定得正好,需要在應(yīng)用程序運(yùn)行之后進(jìn)行調(diào)整。

四、與開(kāi)發(fā)軟件的接口問(wèn)題

因?yàn)槲覀冞@個(gè)系統(tǒng)的開(kāi)發(fā)軟件用的是Borlandc++builder5,所以采用的是比較成熟的BDE的接口,它是Borland公司提供的,性能比較好。

以上是根據(jù)多年數(shù)據(jù)庫(kù)管理、開(kāi)發(fā)的實(shí)踐總結(jié)而出的數(shù)據(jù)庫(kù)建模與設(shè)計(jì)的大致思路,希望能對(duì)大家有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 九七在线视频 | 免费观看黄色一级视频 | 特一级毛片 | 小视频成人 | 亚洲精品成人18久久久久 | 国内精品久久久久久久星辰影视 | 97视频 | 激情国产视频 | 黄色大片网站在线观看 | 日本成人高清视频 | chinese军人gay呻吟 | 久久经典国产视频 | 视频一区二区三区在线 | 一级黄色毛片子 | 91精品国产综合久久久欧美 | 性少妇chinesevideo| 亚洲精品成人av在线 | 久久精品国产久精国产 | 黄色免费大片 | 91av在线影院 | 午夜热门福利 | 国产一区视频免费观看 | 最新中文字幕第一页视频 | 中文字幕天堂在线 | 中文字幕在线亚洲精品 | av色先锋 | 狠狠ri| 一本色道久久综合亚洲精品小说 | 中国漂亮护士一级a毛片 | av电影免费在线 | 干色视频 | 男女羞羞在线观看 | 成人毛片网 | 毛片免费试看 | 久久17| 欧美日韩精品一二三区 | 色女生影院 | 精品av在线播放 | 亚洲欧美日韩精品久久 | 毛片一区二区三区四区 | 亚洲va久久久噜噜噜久牛牛影视 |