位图索引大小

时间:2016-05-10 14:52:18

标签: database indexing bitmap

我目前正在学习位图索引,我想知道是否有人可以对我遇到的问题有所了解。

假设您有一百万条记录和一个“工作日”字段,只能获得7个值。位图索引有多大?

我对BitMaps的理解会让我相信你会采用独特的字段(7)并将它们乘以记录数(1,000,000)。

因此,您将拥有7,000,000位作为位图索引的大小。

这是正确的吗?

或者朋友指出的是每天都会以二进制形式存储(001星期一,010星期二,011星期三等等。)第7天留下111,只占3位作为大小。

对此的任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

在位图结构中,为索引表中的每一行创建一个二维数组,其中一列。每列代表位图索引中的不同值。此二维数组表示索引中的每个值乘以表中的行数。

答案 1 :(得分:0)

我知道这是2016年以来的一个小问题,但是被接受的答案并不能明确回答问题。 位图将存储以下值:

  • 0000001星期一
  • 0000010星期二
  • 0000100星期三

  • 1000000星期日

这意味着 7位将保留7个工作日的值。 如果我们有1.000.000条记录,则位图的大小将为1.000.000 * 7位= 7.000.000位 = 7.000 kbit或6835.938 kibibit