如何处理具有相同结构的多个表的报告?

时间:2014-05-08 12:53:27

标签: sql sql-server database performance

我们正在创建具有相同结构的客户端智能多表,以减少操作事务的负载

但现在我们需要合并所有客户的报告。处理这种情况的最佳方法是什么?

每个表有200k - 300k行,超过100个客户端可用(100个表)

我可以创建转储表吗?或任何其他方法

2 个答案:

答案 0 :(得分:1)

尝试从OLTP数据库卸载报告,尤其是在这种情况下。

这意味着在另一个数据库中创建一个单表数据仓库,根据需要对其进行非规范化和索引,并以适当的间隔加载它。

通过这种方式,您既可以获得报告速度,也不会减慢插入速度。只需要与客户就数据的延迟达成一致。

答案 1 :(得分:0)

根据您的报告需求使用视图:

create view omni
    as
select 1 as client_id
     , *
  from tab_1
 union all
select 2 as client_id
     , *
  from tab_2
 union all
   [...]