sql-server – 存档旧数据
由于我们的数据库太大,我们目前遇到了一些性能问题.存在过去10年的数据,我没有看到为什么超过2年的数据必须与新数据存储在同一个表中的原因. 既然我在管理数据库方面没有非常丰富的经验,我正在寻找存档旧数据的最佳方法. 信息 >数据库中总共有大约310’000’000条记录. 我考虑过两种可能性: 新数据库 创建类似于生产服务器上的数据库,并将所有旧数据插入新数据库中. >缺点:由于我们的环境中不允许链接服务器,因此如果需要,很难加入旧数据 历史架构 创建一个新的架构f.e. [hist]与生产数据库中的表相同.在新架构中的这些新表中插入所有旧数据. >优势:如果将来需要旧数据,可以轻松加入 >您是否优先考虑其中一种解决方案? >为什么? >有没有更好的可能性? 提前致谢 编辑 附加问题: 新创建的存档表是否还需要主键/外键? 或者他们应该只有列但没有键/约束? 解决方法我认为你的许多问题的答案都取决于它.你有什么性能问题?似乎不寻常的是,数据库只会从增长到250GB的大小出现性能问题.也许您的查询在整个事实表上执行表扫描,即使只需要日期范围的一小部分(例如,去年)?如果存在对优化最重要的特定查询,请考虑在另一个问题中发布架构,查询和实际执行计划,以查看是否可以对其进行优化.
(编辑:应用网_丽江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- sql-server – 总是有一个整数列作为主键的缺点是什么?
- OLE DB provider “SQLNCLI11” for linked server “dbLin
- 宽带错误代码629是怎么意思
- sql-server – 使SqlClient默认为ARITHABORT ON
- sql-server – 高效插入具有聚簇索引的表
- sql-server – EXISTS(SELECT 1 …)vs EXISTS(SELECT * …)
- jwt – Keycloak从数据库/外部源添加额外声明
- 新的互联网蠕虫Autorooter利用视窗漏洞来犯
- 国家域名顶级节点全面启用 为全球网民服务
- .net – 启用了排序和分页的T-SQL存储过程无法正常工作