日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

数据库计划中的14个才略

發(fā)布時(shí)間:2024/4/15 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库计划中的14个才略 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本源:站長(zhǎng)資訊??




1. 原始票據(jù)與實(shí)體之間的關(guān)系
  可所以一對(duì)一、一對(duì)多、多對(duì)多的關(guān)系。在淺顯情形下,它們是一對(duì)一的關(guān)系:即一張?jiān)计睋?jù)對(duì)應(yīng)且只對(duì)應(yīng)一個(gè)實(shí)體。在非凡情形下,它們可以是一對(duì)多或多對(duì)一的關(guān)系,即一張?jiān)紗巫C對(duì)應(yīng)多個(gè)實(shí)體,或多張?jiān)紗巫C對(duì)應(yīng)一個(gè)實(shí)體。這里的實(shí)體可以相識(shí)為底子表。清楚明明這種對(duì)應(yīng)關(guān)系后,對(duì)我們計(jì)劃錄入界面年夜有好處。

  〖例1〗:一份員工經(jīng)歷資料,在人力資本信息零碎中,就對(duì)應(yīng)三個(gè)底子表:員工底子情形表、社會(huì)關(guān)系表、使命簡(jiǎn)歷表。這便是“一張?jiān)紗巫C對(duì)應(yīng)多個(gè)實(shí)體”的規(guī)范例子。


   2. 主鍵與外鍵
  淺顯而言,一個(gè)實(shí)體不能既無(wú)主鍵又無(wú)外鍵。在E—R 圖中, 處于葉子部位的實(shí)體, 可以定義主鍵,也可以不定義主鍵(由于它無(wú)子孫), 但必需要有外鍵(由于它有父親)。
  主鍵與外鍵的計(jì)劃,在全局?jǐn)?shù)據(jù)庫(kù)的計(jì)劃中,占據(jù)首要職位地方。當(dāng)全局?jǐn)?shù)據(jù)庫(kù)的計(jì)劃完成當(dāng)前,有個(gè)美國(guó)數(shù)據(jù)庫(kù)計(jì)劃專(zhuān)家說(shuō):“鍵,到處都是鍵,除了鍵之外,什么也沒(méi)有”,這便是他的數(shù)據(jù)庫(kù)計(jì)劃經(jīng)歷之談,也反映了他對(duì)信息零碎中間(數(shù)據(jù)模型)的高度籠統(tǒng)頭腦。由于:主鍵是實(shí)體的高度籠統(tǒng),主鍵與外鍵的配對(duì),表示實(shí)體之間的跟尾。


   3. 底子表的性質(zhì)
  底子表與中間表、暫時(shí)表不同,由于它具有如下四個(gè)特征:
   (1) 原子性。底子表中的字段是不可再分化的。
   (2) 原始性。底子表中的記載是原始數(shù)據(jù)(底子數(shù)據(jù))的記載。
   (3) 歸結(jié)性。由底子表與代碼表中的數(shù)據(jù),可以派生出一切的輸入數(shù)據(jù)。
   (4) 堅(jiān)決性。底子表的結(jié)構(gòu)是絕對(duì)堅(jiān)決的,表中的記載是要暫時(shí)生涯的。
相識(shí)底子表的性質(zhì)后,在計(jì)劃數(shù)據(jù)庫(kù)時(shí),就能將底子表與中間表、暫時(shí)表區(qū)分隔隔離松散來(lái)。


   4. 范式尺度
  底子表及其字段之間的關(guān)系, 應(yīng)只管饜足第三范式。然則,饜足第三范式的數(shù)據(jù)庫(kù)計(jì)劃,每每不是最好的計(jì)劃。為了進(jìn)步數(shù)據(jù)庫(kù)的運(yùn)轉(zhuǎn)功用,每每需求低沉范式尺度:適當(dāng)添加冗余,抵達(dá)以空間換功夫的目的。

  〖例2〗:有一張寄存商品的底子表,如表1所示。“金額”這個(gè)字段的存在,標(biāo)明該表的計(jì)劃不饜足第三范式,由于“金額”可以由“單價(jià)”乘以“數(shù)量”失蹤失蹤,說(shuō)明');“金額”是冗余字段。然則,添加“金額”這個(gè)冗余字段,可已往進(jìn)盤(pán)問(wèn)統(tǒng)計(jì)的速度,這就是以空間換功夫的作法。
  在Rose 2002中,規(guī)定列有兩品種型:數(shù)據(jù)列和對(duì)照爭(zhēng)論列。“金額”如許的列被稱(chēng)為“對(duì)照爭(zhēng)論列”,而“單價(jià)”和“數(shù)量”如許的列被稱(chēng)為“數(shù)據(jù)列”。
  表1 商品表的表結(jié)構(gòu)
  商品稱(chēng)號(hào) 商品型號(hào) 單價(jià) 數(shù)量 金額
  電視機(jī) 29吋 2,500 40 100,000
  
   5. 偉年夜地相識(shí)三個(gè)范式
  偉年夜地相識(shí)三個(gè)范式,關(guān)于數(shù)據(jù)庫(kù)計(jì)劃年夜有好處。在數(shù)據(jù)庫(kù)計(jì)劃中,為了更好地利用三個(gè)范式,就必需偉年夜地相識(shí)三個(gè)范式(偉年夜地相識(shí)是夠用的相識(shí),并不是最科學(xué)最正確的相識(shí)):
  第一范式:1NF是對(duì)屬性的原子性約束,要求屬性具有原子性,不可再分化;
  第二范式:2NF是對(duì)記載的專(zhuān)注性約束,要求記載有專(zhuān)注標(biāo)識(shí),即實(shí)體的專(zhuān)注性;
  第三范式:3NF是對(duì)字段冗余性的約束,即任何字段不能由其他字段派生出來(lái),它要求字段沒(méi)有冗余.
  沒(méi)有冗余的數(shù)據(jù)庫(kù)計(jì)劃可以做到。然則,沒(méi)有冗余的數(shù)據(jù)庫(kù)未必是最好的數(shù)據(jù)庫(kù),偶爾為了進(jìn)步運(yùn)轉(zhuǎn)功用,就必需低沉范式尺度,適當(dāng)生涯冗余數(shù)據(jù)。詳盡做法是:在見(jiàn)地?cái)?shù)據(jù)模型計(jì)劃時(shí)苦守第三范式,低沉范式尺度的使命放到物理數(shù)據(jù)模型計(jì)劃時(shí)思索。低沉范式便是添加字段,應(yīng)允冗余。


   6. 要長(zhǎng)于辨認(rèn)與正確處理賞罰多對(duì)多的關(guān)系
  若兩個(gè)實(shí)體之間存在多對(duì)多的關(guān)系,則應(yīng)消弭這種關(guān)系。消弭的方法是,在兩者之間添加第三個(gè)實(shí)體。如許,原本一個(gè)多對(duì)多的關(guān)系,今朝變?yōu)閮蓚€(gè)一對(duì)多的關(guān)系。要將原本兩個(gè)實(shí)體的屬性公道地分派到三個(gè)實(shí)體中去。這里的第三個(gè)實(shí)體,素質(zhì)上是一個(gè)較龐年夜的關(guān)系,它對(duì)應(yīng)一張底子表。淺顯來(lái)講,數(shù)據(jù)庫(kù)計(jì)劃東西不能辨認(rèn)多對(duì)多的關(guān)系,但能處理賞罰多對(duì)多的關(guān)系。

  〖例3〗:在“圖書(shū)館信息零碎”中,“圖書(shū)”是一個(gè)實(shí)體,“讀者”也是一個(gè)實(shí)體。這兩個(gè)實(shí)體之間的關(guān)系,是一個(gè)規(guī)范的多對(duì)多關(guān)系:一本圖書(shū)在不同功夫可以被多個(gè)讀者借閱,一個(gè)讀者又可以借多本圖書(shū)。為此,要在二者之間添加第三個(gè)實(shí)體,該實(shí)體取名為“借還書(shū)”,它的屬性為:借還功夫、借還標(biāo)志(0表示借書(shū),1表示還書(shū)),其余,它還應(yīng)該有兩個(gè)外鍵(“圖書(shū)”的主鍵,“讀者”的主鍵),使它能與“圖書(shū)”和“讀者”跟尾。


   7. 主鍵PK的取值方法
   PK是供次序員運(yùn)用的表間跟尾東西,可所以一無(wú)物理意義的數(shù)字串, 由次序主動(dòng)加1來(lái)完成。也可所以有物理意義的字段名或字段名的組合。不過(guò)前者比后者好。當(dāng)PK是字段名的組合時(shí),倡議字段的個(gè)數(shù)不要太多,多了不光索引占用空間年夜,并且速度也慢。


   8. 正確理解數(shù)據(jù)冗余
  主鍵與外鍵在多表中的屢次出現(xiàn), 不屬于數(shù)據(jù)冗余,這個(gè)見(jiàn)地必需清楚,現(xiàn)實(shí)上有良多人還不清楚。非鍵字段的屢次出現(xiàn), 才是數(shù)據(jù)冗余!并且是一種低級(jí)冗余,即屢次性的冗余。低級(jí)冗余不是字段的屢次出現(xiàn),而是字段的派生出現(xiàn)。

  〖例4〗:商品中的“單價(jià)、數(shù)量、金額”三個(gè)字段,“金額”便是由“單價(jià)”乘以“數(shù)量”派生出來(lái)的,它便是冗余,并且是一種低級(jí)冗余。冗余的目的是為了進(jìn)步處理賞罰速度。只需低級(jí)冗余才會(huì)添加數(shù)據(jù)的紛比方律性,由于統(tǒng)一數(shù)據(jù),可以從不同功夫、地址、腳色上多次錄入。是以,我們倡議低級(jí)冗余(派素性冗余),支持低級(jí)冗余(屢次性冗余)。


   9. E--R圖沒(méi)有尺度謎底
  信息零碎的E--R圖沒(méi)有尺度謎底,由于它的計(jì)劃與畫(huà)法不是專(zhuān)注的,只需它籠蓋了零碎需求的業(yè)務(wù)范圍和成果內(nèi)容,便是可行的。反之要點(diǎn)竄E--R圖。雖然它沒(méi)有專(zhuān)注的尺度謎底,并不料味著可以隨意計(jì)劃。好的E—R圖的尺度是:結(jié)構(gòu)清楚、關(guān)聯(lián)簡(jiǎn)便、實(shí)體個(gè)數(shù)適中、屬性分派公道、沒(méi)有低級(jí)冗余。


   10. 視圖手藝在數(shù)據(jù)庫(kù)計(jì)劃中很有用
  與底子表、代碼表、中間表不同,視圖是一種虛表,它依賴(lài)數(shù)據(jù)源的實(shí)表而存在。視圖是供次序員運(yùn)用數(shù)據(jù)庫(kù)的一個(gè)窗口,是基表數(shù)據(jù)綜合的一種方式, 是數(shù)據(jù)處理賞罰的一種方法,是用戶(hù)數(shù)據(jù)失蹤密的一種才干。為了終止龐年夜處理賞罰、進(jìn)步運(yùn)算速度和節(jié)約存儲(chǔ)空間, 視圖的定義深度淺顯不得超出三層。 若三層視圖仍不敷用, 則應(yīng)在視圖上定義暫時(shí)表, 在暫時(shí)表上再定義視圖。如許屢次交迭定義, 視圖的深度就不受限定了。

  關(guān)于某些與國(guó)度政治、經(jīng)濟(jì)、手藝、軍事和寧?kù)o所長(zhǎng)有關(guān)的信息零碎,視圖的感染愈加首要。這些零碎的底子表完成物理計(jì)劃之后,當(dāng)即在底子表上直立第一層視圖,這層視圖的個(gè)數(shù)和結(jié)構(gòu),與底子表的個(gè)數(shù)和結(jié)構(gòu)是完全雷同。并且規(guī)定,一切的次序員,一概只準(zhǔn)在視圖上操縱。只需數(shù)據(jù)庫(kù)辦理員,帶著多個(gè)職員配合駕馭的“寧?kù)o鑰匙”,才干間接在底子表上操縱。請(qǐng)讀者想想:這是為什么?


   11. 中間表、報(bào)表和暫時(shí)表
  中間表是寄存統(tǒng)計(jì)數(shù)據(jù)的表,它是為數(shù)據(jù)堆棧、輸入報(bào)表或盤(pán)問(wèn)結(jié)果而計(jì)劃的,偶爾它沒(méi)有主鍵與外鍵(數(shù)據(jù)堆棧除外)。暫時(shí)表是次序員個(gè)人計(jì)劃的,寄存暫時(shí)記載,為個(gè)人所用。基表和中間表由DBA維護(hù),暫時(shí)表由次序員本人用次序主動(dòng)維護(hù)。


   12. 完整性約束表今朝三個(gè)方面
  域的完整性:用Check來(lái)完成約束,在數(shù)據(jù)庫(kù)計(jì)劃東西中,對(duì)字段的取值范圍終止定義時(shí),有一個(gè)Check按鈕,通過(guò)它定義字段的值城。參照完整性:用PK、FK、表級(jí)觸發(fā)器來(lái)完成。用戶(hù)定義完整性:它是一些業(yè)務(wù)紀(jì)律,用存儲(chǔ)進(jìn)程和觸發(fā)器來(lái)完成。


   13. 防范數(shù)據(jù)庫(kù)計(jì)劃打補(bǔ)丁的方法是“三少準(zhǔn)繩”
   (1) 一個(gè)數(shù)據(jù)庫(kù)中表的個(gè)數(shù)越少越好。只需表的個(gè)數(shù)少了,才干說(shuō)明');零碎的E--R圖少而精,去失蹤了屢次的多余的實(shí)體,組成了對(duì)客不雅全國(guó)的高度籠統(tǒng),終止了零碎的數(shù)據(jù)集成,防范了打補(bǔ)丁式的計(jì)劃;
   (2) 一個(gè)表中組合主鍵的字段個(gè)數(shù)越少越好。由于主鍵的感染,一是建主鍵索引,二是做為子表的外鍵,所以組合主鍵的字段個(gè)數(shù)少了,不光節(jié)約了運(yùn)轉(zhuǎn)功夫,并且節(jié)約了索引存儲(chǔ)空間;
   (3) 一個(gè)表中的字段個(gè)數(shù)越少越好。只需字段的個(gè)數(shù)少了,才干說(shuō)明');在零碎中不存在數(shù)據(jù)屢次,且很少罕有據(jù)冗余,更首要的是煽動(dòng)讀者學(xué)會(huì)“列變行”,如許就防范了將子表中的字段拉入到主表中去,在主表中留下良多空余的字段。所謂“列變行”,便是將主表中的一部分外容拉出去,其余單獨(dú)建一個(gè)子表。這個(gè)方法很樸實(shí),有的人便是不習(xí)氣、不采用、不執(zhí)行。
  數(shù)據(jù)庫(kù)計(jì)劃的適用準(zhǔn)繩是:在數(shù)據(jù)冗余和處理賞罰速度之間找到相宜的均衡點(diǎn)。“三少”是一個(gè)個(gè)人見(jiàn)地,綜合不雅念,不能伶仃某一個(gè)準(zhǔn)繩。該準(zhǔn)繩是絕對(duì)的,不是絕對(duì)的。“三多”準(zhǔn)繩一定是錯(cuò)誤的。試想:若籠蓋零碎異樣的成果,一百個(gè)實(shí)體(共一千個(gè)屬性) 的E--R圖,一定比二百個(gè)實(shí)體(共二千個(gè)屬性) 的E--R圖,要好得多。
  倡議“三少”準(zhǔn)繩,是叫讀者學(xué)會(huì)利用數(shù)據(jù)庫(kù)計(jì)劃手藝終止零碎的數(shù)據(jù)集成。數(shù)據(jù)集成的步調(diào)是將文件零碎集成為利用數(shù)據(jù)庫(kù),將利用數(shù)據(jù)庫(kù)集成為主題數(shù)據(jù)庫(kù),將主題數(shù)據(jù)庫(kù)集成為全局綜合數(shù)據(jù)庫(kù)。集成的水平越高,數(shù)據(jù)共享性就越強(qiáng),信息孤島現(xiàn)象就越少,整個(gè)企業(yè)信息零碎的全局E—R圖中實(shí)體的個(gè)數(shù)、主鍵的個(gè)數(shù)、屬性的個(gè)數(shù)就會(huì)越少。
  倡議“三少”準(zhǔn)繩的目的,是防范讀者利用打補(bǔ)丁手藝,賡續(xù)地對(duì)數(shù)據(jù)庫(kù)終止增編削,使企業(yè)數(shù)據(jù)庫(kù)變成了隨意計(jì)劃數(shù)據(jù)庫(kù)表的“渣滓堆”,或數(shù)據(jù)庫(kù)表的“年夜雜院”,末了形成數(shù)據(jù)庫(kù)中的底子表、代碼表、中間表、暫時(shí)表紊亂無(wú)章,不計(jì)其數(shù),招致企奇不雅單位的信息零碎無(wú)法維護(hù)而癱瘓。
   “三多”準(zhǔn)繩任何人都可以做到,該準(zhǔn)繩是“打補(bǔ)丁方法”計(jì)劃數(shù)據(jù)庫(kù)的正理學(xué)說(shuō)。“三少”準(zhǔn)繩是少而精的準(zhǔn)繩,它要求有較高的數(shù)據(jù)庫(kù)計(jì)劃才略與藝術(shù),不是任何人都能做到的,由于該準(zhǔn)繩是根絕用“打補(bǔ)丁方法”計(jì)劃數(shù)據(jù)庫(kù)的實(shí)際根據(jù)。


   14. 進(jìn)步數(shù)據(jù)庫(kù)運(yùn)轉(zhuǎn)功用的方法
  在給定的零碎硬件和瑣金飾件前提下,進(jìn)步數(shù)據(jù)庫(kù)零碎的運(yùn)轉(zhuǎn)功用的方法是:
   (1) 在數(shù)據(jù)庫(kù)物理計(jì)劃時(shí),低沉范式,添加冗余, 常用觸發(fā)器, 多用存儲(chǔ)進(jìn)程。
   (2) 當(dāng)對(duì)照爭(zhēng)論非常龐年夜、并且記載條數(shù)非常龐年夜時(shí)(比方一千萬(wàn)條),龐年夜對(duì)照爭(zhēng)論要先在數(shù)據(jù)庫(kù)皮相,以文件零碎方式用C 言語(yǔ)對(duì)照爭(zhēng)論處理賞罰完成之后,末了才入庫(kù)追加到表中去。這是電信計(jì)費(fèi)零碎計(jì)劃的經(jīng)歷。
   (3) 發(fā)現(xiàn)某個(gè)表的記載太多,比方超出一千萬(wàn)條,則要對(duì)該表終止水平聯(lián)絡(luò)。水平聯(lián)絡(luò)的做法是,以該表主鍵PK的某個(gè)值為界線(xiàn),將該表的記載水平聯(lián)絡(luò)為兩個(gè)表。若發(fā)現(xiàn)某個(gè)表的字段太多,比方超出八十個(gè),則垂直聯(lián)絡(luò)該表,將原本的一個(gè)表分化為兩個(gè)表。
   (4) 對(duì)數(shù)據(jù)庫(kù)辦理零碎DBMS終止零碎優(yōu)化,即優(yōu)化各種零碎參數(shù),如緩沖區(qū)個(gè)數(shù)。
   (5) 在運(yùn)用面向數(shù)據(jù)的SQL言語(yǔ)進(jìn)行程序計(jì)劃時(shí),只管授與優(yōu)化算法。
  總之,要進(jìn)步數(shù)據(jù)庫(kù)的運(yùn)轉(zhuǎn)功用,必需從數(shù)據(jù)庫(kù)零碎級(jí)優(yōu)化、數(shù)據(jù)庫(kù)計(jì)劃級(jí)優(yōu)化、次序完成級(jí)優(yōu)化,這三個(gè)條理上同時(shí)下功夫。

  上述十四個(gè)才略,是良多人在年夜批的數(shù)據(jù)庫(kù)剖析與計(jì)劃實(shí)際中,逐步總結(jié)出來(lái)的。關(guān)于這些經(jīng)歷的運(yùn)用,讀者不能生幫硬套,去世記硬背,而要消化相識(shí),踏扎實(shí)實(shí),迅速駕馭。并逐步做到:在利用中展開(kāi),在展開(kāi)中利用。







版權(quán)聲明: 原創(chuàng)作品,應(yīng)允轉(zhuǎn)載,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接方式標(biāo)明文章 原始來(lái)因 、作者信息和本聲明。不然將追究司法責(zé)任。

轉(zhuǎn)載于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1975712.html

總結(jié)

以上是生活随笔為你收集整理的数据库计划中的14个才略的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。