这样的数据库有多大?

时间:2020-03-05 18:39:38  来源:igfitidea点击:

我正在尝试确定某个数据库的大小(尚未创建)。我知道多少行和什么表。 Oracle中是否有一项功能可以告诉我理论数据库的大小?我可以使用一个已知的数学公式吗?我知道有一个功能可以确定现有数据库的大小,但是我想在创建数据库之前先知道它的大小。

解决方案

回答

我们可以根据表中列的数据类型的大小。然后,我们可以对该表中的行大小进行粗略估计。然后对于1到n个表,然后对于1个表中的1行,对于x个表中的x行=给定行大小的数据库估计。

我知道长手,但这就是我通常这样做的方式。

回答

我们可以尝试对设计进行原型制作,以创建数据库的初始版本,并编写一些脚本(或者使用工具)以用合理数量的数据填充表。这样我们就可以确定X行占用了多少空间。如果太多,我们可以使用设计返回到绘图板。我知道我们在创建数据库之前需要一个数字,但是我们将永远无法解释底层物理数据文件所发生的一切。

回答

准确地说,这可能会变得非常复杂。例如,这是在MS SQL Server上执行的操作:

http://msdn.microsoft.com/zh-CN/library/aa933068(SQL.80).aspx

回答

具有确切的大小并不是太重要,所以我采用了littlegeek的方法。我弄清楚我的表和列将是什么,并查询了数据类型的大小,然后进行了一些" ole乘法"。

回答

我们还需要在估计中包括索引。我见过索引和数据一样大的系统。我相信答案的唯一方法就是像Eric Z Beard建议的那样进行原型制作。不同的datbase系统具有不同的开销,但是它们都有。