2016-09-19 26 views
-1

我想爲我們的預訂系統設計我的數據庫,但事情是我感到困惑是否應該我仍然正常化我的數據庫。我應該正常化還是將我的數據庫非規範化爲預訂系統?

我的問題是,當它涉及多值數據時是否真的需要規範化數據庫?

謝謝!

+1

小心向我們展示一個結構的例子嗎?一般來說,你應該在必要時進行標準化如果沒有您的項目樣本或您的預期產出,我們無法評論您應該做什麼。 – Takarii

回答

1

「非規範化」的問題在於它不是一個告訴你該做什麼的計劃。這就好比試圖從芝加哥驅車趕往紐約開車去洛杉磯。除非您有很多先前的經驗,否則您需要一個替代設計規則來避免雜亂無章的設計。

一般而言,您會發現規範化模式導致事務處理的瓶頸更少,而其他設計可以更精簡以進行分析處理。星型模式就是這樣一種設計。預訂系統通常是非常面向事務的,所以更規範化的設計可能會比不規範化的設計更好地服務於你。你還沒有說預訂系統的規模是多少。

規範化只是響應式系統的開始。您還需要關注物理數據庫設計和應用軟件設計。

進行預約處理的規模很大的組織通常會有第二個用於分析處理的數據庫。這可以稱爲數據集市,或者甚至可以稱爲數據倉庫。這個數據庫沒有深度標準化,而是使用了其他一些設計原則,比如星型模式。定期地,進程從預留系統中提取數據,將其轉換爲數據集市形式,並將其加載到數據集市中。對於這樣的解決方案,您的規模可能太小。

相關問題