数据集的高维度

时间:2011-07-22 01:20:09

标签: database dimension

我在很多关于SO的问题上都看到过,问你对如何在数据库中定义一个巨大的表格的看法 ....

我已经看到你回答了>= 1 billion of rows等等。

进行一些研究并跟随Wegman and Solka他们将一个包含超过10 ^ 10个条目的大表分类

我的问题是在表格中引用了一些columns,我知道1,000列是一个非常可观的数字,(假设我们有1 billion rows)...

  • 根据列和行的不同,你知道他们在哪里测量或说出一张桌子很大吗?

1 个答案:

答案 0 :(得分:1)

SQL Server而言,普通表的列限制为1,024。所以我会认为接近该限制的任何数量的列都很大。也就是说,您可以使用宽表将限制扩展到30,000,但需要权衡:

  

宽表是已定义列集的表。宽表使用稀疏列来增加表可以具有30,000个列的总数。索引和统计数量也分别增加到1,000和30,000。宽表行的最大大小为8,019字节。因此,任何特定行中的大多数数据都应为NULL。要将表创建或更改为宽表,请将表集添加到表定义中。宽表中非最大列和计算列的最大数量仍为1,024。

     

通过使用宽表,您可以在应用程序中创建灵活的模式。您可以随时添加或删除列。请记住,使用宽表具有独特的性能考虑因素,例如增加的运行时和编译时内存要求。

根据this thread,PostgreSQL的限制是每桌1,600列。

基于这些数字,我建议任意数量的接近1,000的列巨大