5個須警惕的資料庫設計錯誤

Web開發者發表於2012-05-19

每個人都會犯錯誤,但作為資料庫管理員,我們應該儘量避免失誤,從而為公司降低成本,並確保資料質量。下面的五個資料庫設計失誤必須引起我們的警惕。

1.選擇恰當的資料型別,避免資料庫的過度膨脹

請留意資料型別的選擇。例如,如果你很清楚某列的數值範圍在0-100,000之間,那麼就不必使用BIGINT資料型別,因為INT型別就已經足夠了。

選擇前者意味著,你每插入一條資料就比後者浪費了4個位元組。這聽起來也許微不足道,但隨著資料量的增長,問題將會凸顯出來。

2.遵循ISO標準,保證異構資料庫系統之間的互通性

大型企業的IT基礎架構非常複雜,可能需要不同資料庫系統之間的資料交換。我們以TIMESTAMP資料型別為例,在Transact-SQL中定義的TIMESTAMP資料型別與ISO標準有所不同。其它的資料庫系統與ISO標準也有所差別。所以,我們要儘可能地遵循ISO標準,以保證異構資料庫系統之間的互通性。

3.以恰當的機制實現序列化

保證在資料庫中插入記錄的序列化非常有必要,許多資料庫設計者通過各種機制來確保序列化的應用。一些資料庫設計者喜歡在資料庫設計中引入GUID,但引入GUID並不是一個好的選擇,這是因為GUID預設並非序列化的,使用GUID列作為主鍵和/或索引甚至會造成效能問題。

4.建立索引時要將外來鍵考慮在內

如果你的資料庫中已定義外來鍵,那麼在建立索引的時候就要多加留神了,要把這種情況納入資料庫設計的整體之中去。

5.不要忽略與業務需求相關的候選鍵

資料庫設計者不應只將注意力放在代理鍵上,而忘卻業務需求。顯然,這對資料質量非常不利。如果你沒有在與業務相關的候選鍵上建立任何約束或索引,可能會出現重複值。

請遠離上面的5個資料庫設計失誤吧,這會幫助你為公司節省成本,並提高資料質量。

原文連結:Do You Make These 5 Database Design Mistakes?

相關文章