我有一個類的數據具有非常大數量的二元屬性 - (!)151是準確的 - 和我所關心的是如何將這些數據結構建模。儘管把位字段存儲爲字節的內部效率,但我的編程spidey感覺刺激創建一個包含151位字段(除了其他屬性)的表。與位域的大量的數據庫結構
不會有大量行的 - 也許是1000,一旦送入產量不會經常改變。
我以爲我的分類數據分成不相交的子類,並創建單獨的表,但以這種方式分割屬性是行不通的,甚至如果可能的話肯定不會與數據子類有效映射。另一個問題是我想將所有數據放在一起,避免現場和/或行重複。我也考慮過使用一些自定義的二進制格式,但這是不可行的,因爲我的數據中的關鍵字段被用作其他表中的外鍵。
查詢將大量使用的WHERE子句來提取相關數據。我已經考慮過使用多個long或int字段,但是由於我知道SQL中沒有按位和操作符或函數,並且如上所述,屬性的分類是有問題的,所以我拒絕這樣做,因爲我不知道其他主要軟件工程問題(用這種方法)。
我將使用PostgreSQL。
所以,在這裏我的問題是我只是做一個表字段的數量龐大,還是有關係模型兼容其他的方法?
+1。同意數據庫可能不是這個數據的最佳位置。使用合適的蒙版進行逐位測試似乎更合適。 – 2009-04-08 04:48:16
這實際上是我原來的計劃,但我需要我的關鍵字段作爲其他表中的外鍵。無論如何,由於支持位操作符的操作符現在沒有意義。我的結構變得明顯。 – gvkv 2009-04-08 05:00:16