2010-07-27 31 views
0

我檢查了不同的面向列的數據庫系統,例如InfiniDB,InfobrightDB和MonetDB。它們都不支持無符號整數作爲數據存儲類型。爲什麼?一種解決方案是將所有4字節無符號整數存儲爲8字節有符號整數(Link),但我認爲這會浪費太多空間。有沒有支持無符號整數的開源的面向列的數據庫系統?我已經檢查了這個(Link)沒有運氣。 非常感謝您的時間。面向列的DBMS中的無符號整數數據類型

伊瑪

回答

2

我找到一個答案的(page4)在Infobright.org 「如何從SQL Server遷移」:

無符號整數 - 在歷史上一直由 數據庫管理員選擇無符號整數和數據庫設計人員提供 容量較大的最大值爲 給定的整數字段比可能的 帶有符號整數。凡在該數據中不存在負 值,或 不準的 選擇無符號整數的方法使較大的值的 住宿而 在 傳統的面向行的技術選擇較小的數據類型。 在Infobright的情況下,當不需要 字節存在特定整數 值時,它們被固有壓縮算法「擠壓」出來。對於 這個原因,Infobright的建議 選擇下一個較大的整數的數據 類型 - 例如,BIGINT超過 INTEGER,或MEDIUMINT過度SMALLINT - 使得最大列值可 仍然被容納在所選擇的 數據類型。 Infobright不會因 「over-typing」某一列而導致浪費的空間後果 。

0

MySQL支持無符號整數作爲列類型

+2

MySQL是不是一個面向列的數據庫,因此它並不適用於這個問題。 – 2012-02-11 14:59:33

相關問題