0

InfiniDB、InfobrightDB、MonetDB など、さまざまな列指向のデータベース システムを確認しました。それらのいずれも、データ ストレージ タイプとして符号なし整数をサポートしていません。なんで?1 つの解決策は、4 バイトの符号なし整数をすべて 8 バイトの符号付き整数 ( Link ) に格納することですが、スペースを浪費しすぎると思います。符号なし整数をサポートするオープンソースの列指向データベース システムはありますか? 私はすでにこれ(リンク)をチェックしましたが、うまくいきませんでした。どうぞよろしくお願いいたします。

エマー

4

2 に答える 2

2

Infobright.orgの「How to Migrate from SQL Server」( page4 ) で1 つの回答を見つけました。

符号なし整数 – 符号なし整数は、歴史的に DBA やデータベース設計者によって選択され、特定の整数フィールドの最大値を符号付き整数よりも大きくすることができます。データに負の値が存在しない、または許可されていない場合、符号なし整数を選択するアプローチにより、従来の行指向テクノロジで小さいデータ型を選択しながら、より大きな値を受け入れることができました。Infobright の場合、特定の整数値に不要なバイトが存在する場合、それらは固有の圧縮アルゴリズムによって「絞り出され」ます。このため、Infobright は、次に大きな整数データ型を選択することを推奨しています。たとえば、INTEGER ではなく BIGINT または、SMALLINT よりも MEDIUMINT – 選択したデータ型に最大列値を格納できるようにします。Infobright は、列の「オーバータイピング」によるスペースの浪費に苦しむことはありません。

于 2010-07-27T11:09:55.550 に答える
0

MySQL は列タイプとして符号なし整数をサポートします

于 2011-11-17T15:24:50.333 に答える