什麼是資料庫中的「資料冗餘」?

2022-07-23 06:42:12 字數 1189 閱讀 7321

資料冗餘:在乙個資料集合中重複的資料稱為資料冗餘

例如在設計資料庫時,某一字段屬於乙個表,但它又同時出現在另乙個或多個表,且完全等同於它在其本來所屬表的意義表示,那麼這個字段就是乙個冗餘字段。

關聯式資料庫中的資料冗餘主要是指關聯式資料庫中同一資訊資料的重複存貯。

資料冗餘浪費了寶貴的資源,應儘量減少。但關聯式資料庫中為實現一些功能有些資料冗餘是必需的。必需的資料冗餘主要用於以下用途:

關聯式資料庫由表及附屬檔案組成,其表由屬性定義的結構和元組(記錄)組成,其屬性值域有多種型別,故關聯式資料庫的資料冗餘形成的原因有表的重複、屬性的重複、元組的重複、屬性值的重複4類。

2.1 表的重複

為了資料安全的需要製作備份表,當主表被破壞時可用此恢復資料。分布式資料庫為減少資料通訊開銷也常重複放表,這種資料冗餘在這裡是必需資料冗餘,不能刪除。若是因其他原因產生的非必要的重複表則應予以刪除。

2.2 屬性重複

有不同表的屬性重複和同一表內屬性重複2種情況:

2.3 元組的重複

表內不同記錄內容有時會完全相同,若非必要,應予以刪除。

2.4 屬性值的重複

按屬性值域集合基的特點可以將其分為有限類和無限類。

(1)  無限類屬性值的重複。無限類屬性值是指其屬性值域集合的基為無限大或者資料庫記錄數為同一數量級的屬性值,如實數、整數、日期、各種編號。

無限類屬性值偶爾也可能重複,但這只是巧合,而並非資料冗餘。

(2)  有限類屬性值的重複。有限類屬性值是指其屬性值域集合的基小於資料庫記錄數至少乙個數量級的屬性值,如產品名,部門名,職稱名,課程名。

有限類屬性值的重複實際上是由一對多或多對多的關係引起的,有時可作為必需冗餘資料不予以處理,這時不需程式就有較好的檢視效果和工作效率。但當重複量很大時,也應當設法對所引起的資料冗餘進行壓縮,這通常要建立新錶和相應的程式。

2.5 不同成因的資料冗餘用不同層次上的操作來消除。

(1)消除表的重複所引起的資料冗餘為磁碟檔案級的操作。

(2)屬性的重複所引起的資料冗餘的消除為對資料庫結構修改的操作。

(3)元組的重複所引起的資料冗餘的消除由記錄級的操作完成。

3. 資料冗餘的缺點:

a)   儲存空間的浪費。

b)   資料互動和資料庫訪問執行效率降低。

但適當的資料冗餘又能加快查詢

資料冗餘究竟是好是壞還是要根據自己所做的專案進行合理的取捨

資料庫中的冗餘字段

在建庫的時候,尤其是複雜的資料庫,難免會出現大量的冗餘字段,出現資料冗餘 資料冗餘 在乙個資料集合中重複的資料稱為資料冗餘.資料冗餘的目的 資料的應用中為了某種目的採取資料冗餘方式。1 重複儲存或傳輸資料以防止資料的丟失。2 對資料進行冗餘性的編碼來防止資料的丟失 錯誤,並提供對錯誤資料進行反變換得...

什麼是資料庫

資料庫 database 是按照資料結構來組織 儲存和管理資料的倉庫。每個資料庫都有乙個或多個不同的 api 用於建立,訪問,管理,搜尋和複製所儲存的資料。我們也可以將資料儲存在檔案中,但是在檔案中讀寫資料速度相對較慢。所以,現在我們使用關係型資料庫管理系統 rdbms 來儲存和管理的大資料量。所謂...

什麼是資料庫

一般乙個資料庫系統 database system 可分為兩個部分 資料庫 database 資料管理系統 database management system,dbms 狹義上來講,我們說的 資料庫 通常都是指 資料庫管理系統 dbms 1.如果資料儲存到記憶體裡 2.如果資料儲存到檔案系統裡 3...