Postgresql

將數據維度建模為列 - 一些維度具有高度可變性,而其他維度具有低可變性

  • November 5, 2014

如果問題不好,請原諒我的問題-我不是 DBA …

我想對以下數據進行建模:

假設我有一列是由序列生成的行 ID。假設我有 3 列:A, B & C數據可變性較低。我們還假設我還有 4 個I, II, III, IV具有高數據可變性的列。

作為一個具體的例子,假設 的值A, B & C可以是 1 - 50 之間的任何數字,並且 的值I, II, III & IV可以是任何文本數據,又例如,1 - 1B 之間的任何數字。

問題:

我應該用列建模一個表嗎:row_id, A, B, C, I, II, III, IV. 或者我應該對兩個表進行建模,第一個包含低可變性數據列:row_id, A, B, C第二個包含其餘列,同時引用row_id第一個表的:row_id, first_table_row_id, I, II, III, IV

我正在使用postgresql。哪個答案最適合該數據庫?什麼答案是通用的最好的?

另外,可能沒有一個明確的答案,如果是這樣,每種建模方案的優缺點是什麼?

我建議為您的高可變性列創建一個單獨的維度。這是根據 Kimball 方法論的 4 類微型維度。

http://www.kimballgroup.com/data-warehouse-business-intelligence-resources/kimball-techniques/dimensional-modeling-techniques/type-4-mini-dimension/

希望這可以幫助。

引用自:https://dba.stackexchange.com/questions/81911