我可能会在一张巨大的桌子上实现分区(数十亿行)。如何在sql server 2008 r2上实现mod分区?
每个表格行都有一些关于特定设备的状态,该设备从分钟到分钟插入。因此,每台设备每天将会有1440(24 x 60)行。每个设备都有唯一的ID(DeviceID)。
我想过使用DeviceID MOD进行分区{TheNumberOfPartitionsThatIWant},我认为TheNumberOfPartitionsThatIwant是250是一个很好的折中。使用这种策略,我可以在整个分区平均分配设备,而且在查询特定设备时,查询引擎只需要接触一个分区,而不是全部250个分区。
问题是我需要向我的表添加一个额外的列,只是为了指示该行所属的分区,以便我可以使用此列在分区架构上定义表。将(DeviceID MOD 250)提供给分区模式将会好得多,而不是具有如此简单表达式的该列。有没有解决方法?
我在你以前的[问题](http://stackoverflow.com/questions/4249073/partitioning-for-query-performance-in-sql-server-2008)上看到一条评论,你有** 2 **驱动器。使用2个分区..不是?如果你想处理这些卷,你根本不需要在硬件上进行任何操作。 – gbn 2010-11-25 12:01:46