4.1 在确定适当的粒度级起点时,我们需要精确估算数据仓库将来的数据行数和所需的直接访问存储设备(DASD)。即使在最佳情况下,我们也只能进行估计。在建立数据仓库的初期阶段,仅需要一个数量级的估算。有一个计算数据仓库空间的算法,详见图4 - 1。首先确定将在数据仓库中创建的所有表,然后估计每张表中行的大小。确切的大小可能难以确定,但可以估计一个下限和一个上限。接下来,估算每张表在一年内的最少和最多行数,这是设计者需要解决的主要问题。例如,对于客户表,可以根据商业环境和公司的业务计划估计当前客户数量;如果没有业务数据,可以估计市场总体业务量乘以市场份额;如果市场份额未知,则可以使用竞争对手的业务量来进行估算。总之,需要从多方收集客户合理估算信息的一面开始。如果数据仓库用于存储业务活动,还需要估计客户数量以及每个时间单位内的业务活动量。同样的方法可以用于分析当前业务量、竞争对手的业务量、经济学家的预测报告等。一旦对一年内和五年内的数据单位数量进行了估算(采用上下限推测的方法),就需要计算索引数据所占的空间。对每张表中的每个键码确定键码的长度,并检查原始表中是否存在键码。现在,将每张表中的行数可能的最大值和最小值乘以数据的最大长度和最小长度,然后将索引项的数目与键码长度的乘积累加到总数据量中。计算每个已知表的行数和空间大小,重复这个步骤。