首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MSSQL Server 2008 Standard Edition归档大型800表

MSSQL Server 2008 Standard Edition归档大型800表
EN

Stack Overflow用户
提问于 2016-10-06 13:58:14
回答 1查看 48关注 0票数 0

我有一个表,自2011年以来,每天有数百万条记录被插入。仅该表的数据大小就增长了800 The以上。对我来说,只有最近3个月的数据被频繁查询,而对于较旧的数据,查询很少需要完成,而且可以在离线模式下完成。

问题1:表有一个日期列,我希望将3个月前的所有数据归档到文件中,以便可以将它们移动到另一个存储上。那么,什么才是满足这些要求的最佳方法,并且我不想将数据保留在备份mssql服务器上。

A.创建SSIS包,将历史数据转储到csv中,并按某个月份或日期名称压缩文件。当需要时,SSIS包可以读取文件并加载到数据库中。这项工作将安排每天或每周的基础。B.编写一些JAVA或python代码来完成相同的工作。C.还有其他选择吗?

问题2:一次仅针对一个日期执行查询。在查询时,此表将与其他一些元表连接。那么,我是否应该在表中添加分区以获得更快的查询性能?

EN

回答 1

Stack Overflow用户

发布于 2016-10-06 16:37:03

我可能会做什么:

  • 将要存档的数据移动到同一台服务器上的单独数据库。使用SSIS包或存储的procedure.
  • Rename原始表,假设您不想破坏任何依赖关系并希望能够立即使用归档数据。
  • 创建一个与原始表完全相同的视图,在需要归档数据时从重命名的表中选择所有数据
  • 更改视图以合并所有归档数据,如下所示:

代码语言:javascript
运行
复制
ALTER VIEW [OriginalTableName] AS
SELECT * FROM ActiveDate
UNION ALL
SELECT * FROM ArchiveDB..ArchivedData
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39888543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档