Sql Server - 使用大表

时间:2014-09-09 10:45:02

标签: sql-server partitioning

我的桌子里面有大约一百万条记录。目前它已经增长到2GB。我需要对此表或任何其他方法进行分区,以使此表的大小更小。

分区的意思是将表格分成TableName_1,TableName_2,当尺寸增长&在数据检索中将它们结合起来

有没有办法执行此操作?

3 个答案:

答案 0 :(得分:2)

首先,100万行真的不是那么多,也不是2 GB的表。

要回答您的问题,是的,SQL Server完全支持table partitioning

例如,您可以根据日期字段在历史数据和“最近”或“活动”数据之间进行分区。或者,您可以使用地理分段进行分区,从而根据国家/地区字段传播数据。(水平分区的两个示例)。

或者,您可以执行垂直分区,将表格切割成不同数量的列(如果您的表包含很少使用的列,这可能很有用)。

更多信息:MSDN - Table Partitioning (explains horizontal and vertical partitioning)

答案 1 :(得分:0)

您假设您有一个大表并且需要对其进行分区是不正确的。

您需要优化查询并为字段编制索引。此外,如果您经常使用数据,那么为缓存值创建表可能是个好主意。

答案 2 :(得分:0)

很久以前,我已经实现了一个这样的解决方案和博客。对图表有一个非常详细的解释。希望对你有所帮助。

http://dattatraynale.blogspot.co.uk/2012/11/sql-server-partitioning-design-4.html