我工作的程序存储有关整个大学的网络连接的信息,并且我被要求创建一个报告,显示这些连接随着时间的变化。我正在考虑添加另一个表,其中包含当前的连接信息和添加数据的日期,因此当报告运行时,它只是抓取该日期的数据,但我担心在一对夫妇之后报告可能会变慢几个月,因为它会增加每月约50,000行。有一个更好的方法吗?我们使用Microsoft SQL Server。在SQL中保存大型月度数据备份的最佳方式是什么?
0
A
回答
0
这取决于你拿着事实的历史数据的原因。
如果原因是:
- 因采访报道需要,那么你可以通过 保持在同一个表中增加了两个日期列
FromDate
和ToDate
这将删除 需要加入活动和历史数据表格后面。 - 仅供参考,将其放在不同的 表中会有意义,因为它可能会降低您的 活动表上索引的性能。
我还是要强调渐变维度(SCD)2型的方法,通过保持记录的多个版本跟踪历史数据和使用给EndDate
或标志来识别活动记录。此方法允许跟踪任何数量的历史记录,因为每次插入新记录时,旧的记录都会填入EndDate
。
第1步:重新加载事实UPDATE
IsActive = 0
备案成为历史保存和填充EndDate
为当前日期。
merge ActiveTable as T
using DataToBeLoaded as D
on T.ID = D.ID
and
T.isactive = 1 -- Current active entry
when matched then
update set T.IsActive = 0,
T.EndDate = GETDATE();
步骤2:插入与IsActive = 1
和FromDate
作为当前日期的最新数据到ActiveTable。
免责声明:以下使用SCD 2的方法可能会使您的数据仓库变得巨大。不过,我不相信这会影响你的场景的性能。
相关问题
- 1. 什么是备份Azure Blob存储内容的最佳方式
- 2. 在数据库中仅保存日期和月份的最佳方式
- 3. 处理大型数据表的最佳方式是什么?
- 4. 将数据保存到文件的最佳方式是什么?
- 5. 每天在特定时间备份数据库的最佳方式是什么?
- 6. 在Docker中存储数据的最佳方式是什么?
- 7. 在SQL Server中存储大型数据集的最佳方法?
- 8. 在SQL Server中执行大量数据操作的最佳方式是什么?
- 9. 在MySQL中保存KML的最佳方式是什么?
- 10. 在实时系统上保存缓存数据的最佳方式是什么?
- 11. 在数据库中保存会话的最佳方式是什么?
- 12. 在数据库中保存webservice响应的最佳方式是什么?
- 13. 备份Rails应用程序数据的最佳方式是什么?
- 14. 什么是在数据库中存储大量标记的最佳方式?
- 15. 在SQL Server数据库中保存字体的最佳方式
- 16. 在SQL中存储圣经的最佳方式是什么?
- 17. 在SQL Server 2005/2008中存储历史数据的最佳方式是什么?
- 18. 在SQL Server中以XML格式存储数据的最佳方法是什么?
- 19. 将数据推送到设备的最佳方式是什么?
- 20. 什么是导入大型mysql数据库备份的最快方法?
- 21. 什么是保持身份验证状态的最佳方式
- 22. 从串口获取实时数据并将其保存在SQL数据库中的最佳方式是什么?
- 23. 什么是以编程方式删除大型数据库的最佳方法
- 24. 什么是保护数据库查询的最佳方式?
- 25. 保持数据库版本的最佳方式是什么?
- 26. 在大型数据库中归档/备份表和更改的最佳方法
- 27. 大量数据 - 发送它们的最佳方式是什么?
- 28. 创建大量虚拟数据的最佳方式是什么?
- 29. 什么是全球同步大量数据的最佳方式?
- 30. SQL服务器:什么是数据迁移的最佳方式?
50K行/月是*不是*大数据。在数据仓库方面,它几乎是静态的。数据仓库通常使用数百GB的数据。 –
我意识到,我只是添加标签以获得更广泛的回复 –