损失空间换取查询速度?

有几个表记录每天的业务,数据量很大。当统计的时候,关联起来就可能超时,怎么办呢?
      感觉比较好的方法还是定时导出数据到另一个库,让查询库保持一段时间内(客户的查询大部分都是在这个时间段内)的数据,这样就不至于数据量过大;至于查询其他数据可以连到另一个库去查。
      不过今天在网上看到一种方法,虽然说不上有上面的方法好,相对有局限性,但是感觉思路还是不错。这种方法就是:
损失空间换取查询速度
1:创建一个结果表,存放你查询的记录的结果记录集  
  2:在相关表上创建插入,修改,删除的触发器,当每一次数据的写操作就执行一个触发器,写相应的记录到结果表中(维护数据一致性)。  
  3:查询就只是相对一个表进行的。  
  这样做损失了一个结果集的空间,但把时间给分配到了每一个数据更新的时候,查询的时候结果就会更加快就出来了,因为执行关系运算是很耗费资源的!  

我感觉就是这种方法用在某些特定环境下还是不错!

转载于:https://www.cnblogs.com/Mercury/archive/2007/04/29/731866.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值