SQL Server性能调优——报表数据库与业务数据库分离

kisshexuxia 2014-09-30 10:58:40
在网上看见
http://www.cnblogs.com/DBFocus/archive/2010/08/04/1791668.html
这个文章,碰到的问题和我的类是。
看了这个文章想问下、有没有这样的设计
业务库能否只保存几天的数据,其他的数据都同步到报表库

现在我是这样设计的、A业务数据库、B报表数据库。
写了个服务端、连接A、B库。服务端配置A保留X天数据、
然后服务端每天晚上Y时间进行数据转移。使A业务数据库只保留最近X天数据。B报表数据库有所有的数据。

本来想用上面写的SQL事务快照同步、但是A业务库的数据量还是不断在增加的。
假如删除、那B报表库也会删除数据。达不到我想要的。
问下有什么好的设计方法

...全文
261 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
AcHerat 2014-09-30
  • 打赏
  • 举报
回复
工具一般都是收费的,金融类的使用数据采集器比较多,例如ETL、KETTLE等,都可以实现!或者自己写个也可以,将增量数据放一个文件,转到报表服务器再导入进去! 或者直接写数据转移的存储过程,传日期,源表,目标表之类的参数,动态去实现!添加到JOB里,这种方式对数据传输的网络比较依赖,需要在数据写入较少的时间段执行。
發糞塗牆 2014-09-30
  • 打赏
  • 举报
回复
引用 4 楼 kisshexuxia 的回复:
[quote=引用 1 楼 DBA_Huangzj 的回复:] 很多技术可以用,但是几乎都要额外编程实现,比如用复制、快照、日志传送等把数据传到报表库,在确认传输完毕后删除业务库中不需要的数据
在确认传输完毕后删除业务库中不需要的数据的话用复制、快照、日志传送等手段、也会到报表数据库吧[/quote]快照不会,但是复制的话,可以设置不同步删除操作,这样你的删除操作不影响订阅库。日志传送还没研究有没有这类功能。
还在加载中灬 2014-09-30
  • 打赏
  • 举报
回复
我觉得分库是不是应该基于业务数据的状态吧,以已月结或已归档之类为分割线。
kisshexuxia 2014-09-30
  • 打赏
  • 举报
回复
引用 3 楼 AcHerat 的回复:
一般来说类似这种需要用到数据采集,有一些第三方工具可以使用,在工具里配置数据表的采集,例如实时、日终、历史、补采等!
哪些第三方工具、我准备自己写个服务端定时扫描
kisshexuxia 2014-09-30
  • 打赏
  • 举报
回复
引用 1 楼 DBA_Huangzj 的回复:
很多技术可以用,但是几乎都要额外编程实现,比如用复制、快照、日志传送等把数据传到报表库,在确认传输完毕后删除业务库中不需要的数据
在确认传输完毕后删除业务库中不需要的数据的话用复制、快照、日志传送等手段、也会到报表数据库吧
AcHerat 2014-09-30
  • 打赏
  • 举报
回复
一般来说类似这种需要用到数据采集,有一些第三方工具可以使用,在工具里配置数据表的采集,例如实时、日终、历史、补采等!
AcHerat 2014-09-30
  • 打赏
  • 举报
回复
确定报表服务器用到的表有哪些,然后写个JOB做两个服务器之间的数据转移!
發糞塗牆 2014-09-30
  • 打赏
  • 举报
回复
很多技术可以用,但是几乎都要额外编程实现,比如用复制、快照、日志传送等把数据传到报表库,在确认传输完毕后删除业务库中不需要的数据

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧