自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

何謂Oracle標(biāo)準(zhǔn)化?

數(shù)據(jù)庫 Oracle
盡管沒有必要深入研究函數(shù)相關(guān)的數(shù)學(xué),但至少為關(guān)系模型定義標(biāo)準(zhǔn)化是有用的和指導(dǎo)意義的。Oracle標(biāo)準(zhǔn)化的基礎(chǔ)是數(shù)學(xué),它是建立在被稱為函數(shù)相關(guān)性(functionaldependency,F(xiàn)D)的概念上的。

Oracle標(biāo)準(zhǔn)化是關(guān)系模型的改良或擴(kuò)展,Oracle標(biāo)準(zhǔn)化也是依照第一個(gè)關(guān)系模型草案并在此基礎(chǔ)上采用一定具體方法進(jìn)行改進(jìn)的進(jìn)程。

一列或一組列—Y,被認(rèn)為是與另列或一組列(X)函數(shù)相關(guān);如果賦予X一組給定的值,那么將決定Y的一組唯一值。說Y和X函數(shù)相關(guān),就等于說X決定Y,通常寫作X—>Y。當(dāng)然,最明顯的例子就是,一個(gè)關(guān)系表中的主鍵能夠唯一決定表中某一行的值。然而,其他相關(guān)也可能存在,只是它們不是主鍵的結(jié)果。標(biāo)準(zhǔn)化的主要目的就是消除關(guān)系模型中不是主鍵造成的所有函數(shù)相關(guān)。

以下是Oracle標(biāo)準(zhǔn)化的三個(gè)主要原因,在許多數(shù)據(jù)庫分析和設(shè)計(jì)的書中經(jīng)常提到它們:

■保持?jǐn)?shù)據(jù)完整性。這個(gè)原因,也許是最重要的原因,足可以解釋為什么要實(shí)現(xiàn)標(biāo)準(zhǔn)化。因?yàn)閿?shù)據(jù)只被貯存一次,所以它保持正確和一致性。換句話說,不必保存數(shù)據(jù)的多個(gè)備份。否則,相同數(shù)據(jù)項(xiàng)的各種備份可能不再同步,并且可能最終要求繁重的應(yīng)用程序控制,因?yàn)镽DBMS的自動(dòng)完整性機(jī)制不能起到調(diào)整作用。許多遺留系統(tǒng)正處于這種狀態(tài)。

■建立一個(gè)盡可能與應(yīng)用無關(guān)的模型。換句話說,標(biāo)準(zhǔn)化只是增強(qiáng)這樣一個(gè)概念,即關(guān)系模型應(yīng)該是數(shù)據(jù)驅(qū)動(dòng)的,而不是程序驅(qū)動(dòng)的。對大部分?jǐn)?shù)據(jù)庫來說,這意味著改變處理需求時(shí)數(shù)據(jù)庫設(shè)計(jì)能保持穩(wěn)定和原封不動(dòng)。應(yīng)用程序的要求應(yīng)該和數(shù)據(jù)庫邏輯計(jì)無關(guān)。

■減少存儲(chǔ)需求(并且也要不斷地為提高查詢性能打下基礎(chǔ))。除了外鍵,全面標(biāo)準(zhǔn)化消除了關(guān)系設(shè)計(jì)中所有冗余的東西。不必要的數(shù)據(jù)備份同樣要求不必要的次級存儲(chǔ)需求。另外,存有及可能被搜索的數(shù)據(jù)越多,需要的總系統(tǒng)時(shí)間就越多,因此性能也就越差。

為了更好的理解Oracle標(biāo)準(zhǔn)化,我們還需完善幾個(gè)概念:

1.第一范式
第一范式(1NF)不包含重復(fù)組,這等于說貯存在一個(gè)單元里的數(shù)據(jù)必須是一個(gè)單一、簡單值,而且不能保留一條以上的信息。為了清晰,信息原則不允許在一個(gè)列中有重復(fù)組,而1NF額外要求在一行中不能有重復(fù)組,不管是重復(fù)的列還是列中含有的重復(fù)信息都不允許。為了實(shí)現(xiàn)更高的標(biāo)準(zhǔn)化級,需要一個(gè)非鍵列。狹義的非鍵列定義是:一個(gè)不是主鍵的一部分的列;廣義的非鍵列定義是:不是任何候選鍵的一部分的列。這種情況下,應(yīng)選擇狹義定義。本質(zhì)上,一個(gè)表的列集合可以看作是由一個(gè)主鍵和剩余項(xiàng)組成,剩余項(xiàng)的任意一部分都是非鍵列。

2.第二范式
第二范式(2NF)沒有不完全相關(guān),每個(gè)非鍵列都依賴于全主鍵,如果主鍵是復(fù)合鍵,則包括它所有的列。

3.第三范式
第三范式(3NF)沒有傳遞的相關(guān)性。沒有依賴于其他非鍵列的非鍵列,如果一個(gè)表所用的非鍵列都依賴于鍵、全鍵,并且只依賴于鍵,那么這個(gè)表就是3NF形式的表。如果消除重復(fù)組后,每個(gè)非主鍵列都依賴于鍵和全鍵,這是2NF,只依賴于鍵則是3NF。

4.BoyceCodd范式(BoyceCoddNormalForm,BCNF)
BoyceCodd范式包括不反轉(zhuǎn)的不完全相關(guān)(有時(shí)不太正規(guī)地稱之為31/2NF),主鍵和它的任何部分都不依賴一個(gè)非鍵屬性。因?yàn)槟闳〉氖欠擎I的嚴(yán)格定義,3NF考慮候選鍵問題,而且你的表總是BCNF形式的。

還有第四范式和更高級范式。在學(xué)術(shù)上,Oracle標(biāo)準(zhǔn)化理論已超出BCNF許多級了,通常數(shù)據(jù)庫分析和設(shè)計(jì)的相關(guān)書籍已達(dá)到5NF的高度。4NF處理多值相關(guān)(MVD)問題,而5NF處理連接相關(guān)(JD)問題。盡管這些范式的理論稍稍超出了本書的范圍,但你應(yīng)該知道如果每個(gè)MVD都是一個(gè)FD,那么這個(gè)表是4NF形式的表;如果每個(gè)JD都是它的關(guān)系鍵的結(jié)果,那么這個(gè)表是5NF形式的表。

建議:至少要為BCNF而努力,然后必要時(shí)會(huì)得到物理數(shù)據(jù)庫設(shè)計(jì)補(bǔ)償,這將引導(dǎo)你進(jìn)入下一個(gè)主題。如果可能,研究第四范式和第五范式,設(shè)法通過你的努力達(dá)到這些級別的標(biāo)準(zhǔn)化。你作為一個(gè)數(shù)據(jù)庫系統(tǒng)管理員的目標(biāo)就是盡可能地提高標(biāo)準(zhǔn)化程度,然而使用盡可能少的實(shí)體來實(shí)現(xiàn)它們。這是一個(gè)挑戰(zhàn),因?yàn)椋ǔ?biāo)準(zhǔn)形式越高,產(chǎn)生的實(shí)體越多。

【編輯推薦】

  1. Oracle巧取相關(guān)的指定記錄實(shí)操
  2. OraclePL從數(shù)據(jù)庫中如何讀取BLOB字段
  3. Oracle強(qiáng)制訪問的控制模型的實(shí)際應(yīng)用
  4. Oracle強(qiáng)制訪問中的系統(tǒng)沖突
  5. Oracle數(shù)據(jù)庫在設(shè)計(jì)開發(fā)階段的性能優(yōu)化策略
責(zé)任編輯:王婧瑤 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2016-10-07 22:09:59

2015-09-01 10:28:56

云計(jì)算標(biāo)準(zhǔn)化需求標(biāo)準(zhǔn)化組織

2012-06-14 10:16:30

ibmdw

2021-05-14 13:57:01

數(shù)據(jù)標(biāo)準(zhǔn)組織技術(shù)

2024-09-29 08:54:36

2018-01-09 09:32:48

開源標(biāo)準(zhǔn)化基礎(chǔ)設(shè)施

2015-09-02 13:09:32

大數(shù)據(jù)標(biāo)準(zhǔn)化

2011-03-03 10:37:24

云計(jì)算戴爾

2017-12-07 11:16:17

云計(jì)算云服務(wù)國際標(biāo)準(zhǔn)

2010-01-27 15:05:04

C++標(biāo)準(zhǔn)化

2012-07-27 09:33:56

云計(jì)算標(biāo)準(zhǔn)化

2015-08-25 10:40:22

運(yùn)維標(biāo)準(zhǔn)化

2009-12-21 13:42:10

Linux手機(jī)

2017-02-15 13:29:06

智慧物業(yè)紫薇物業(yè)信息化

2015-06-30 14:19:44

2021-04-14 09:12:42

車聯(lián)網(wǎng)物聯(lián)網(wǎng)汽車智能化

2010-09-14 13:20:30

Div+CSS標(biāo)準(zhǔn)

2013-11-01 11:05:25

云計(jì)算

2015-04-08 10:39:10

云存儲(chǔ)云存儲(chǔ)技術(shù)標(biāo)準(zhǔn)

2010-11-12 10:27:34

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號