首页 > 解决方案 > COGNOS 报告使用中继器时性能不佳

问题描述

我有一个包含 3 列的表:CLIENT_ID、STORE_ID 和 MADE_PURCHASE。基本上,我试图获取客户购买的 CLIENT_ID 列表和 STORE_ID 数组。对于以下数据,这是预期的结果:

数据:

CLIENT_ID STORE_ID MADE_PURCHASE
1 一个 是的
1 b 是的
1 C 是的
2 一个 是的
2 b
2 C 是的
3 一个
3 b
3 C

预期结果:

CLIENT_ID STORE_ID
1 a,b,c
2 a, c

通过创建一个查询来过滤掉 MADE_PURCHASE = 'NO' 的行,我能够达到预期的结果。然后我在报告中创建了一个列表。第一列是 CLIENT_ID,然后我在包含 STORE_ID 的第二列中插入一个转发器。

问题是转发器将我的报告减慢了大约等于检索到的 CLIENT_ID 数量的因子。例如,如果我在没有中继器的情况下运行查询,并且它在 10 秒内返回 10 个唯一的 CLIENT_ID,那么添加中继器会将报告速度减慢到 100 秒。一旦我在提示中输入了超过几百个 CLIENT_ID,报告需要几个小时才能运行。

我尝试编辑列表和转发器之间的主从关系,没有太大的变化。任何人都知道如何让它运行得更快?

PS 我知道所需的输出格式并不理想,但目标是模仿基于 excel 使用 STORE_ID 连接的遗留报告,因此,客户希望保留原始格式。

标签: repeatercognos-10

解决方案


您可以尝试使用“Cache Relaional Detail Query”编辑带有参数 (DQM) Master-Detail Optimization 的 FM - Governors。


推荐阅读