我们正在构建一个包含许多报告的仪表板。表之间的关系在微策略中定义。我们发现Microstrategy并没有为不同的报告使用不同的SQL。它从数据库中提取所有数据(4600万),然后对这些数据进行后处理以生成单独的报告。这需要花费很多时间,而且它没有使用数据库的查询引擎。我们如何配置微策略,以便它为不同的报告生成不同的查询,并仅收集特定报告所需的数据,而不是所有数据。
一种方法是使用fre form SQL。但是我们想要有拖放报告的能力。我们如何才能做到这一点?我们使用的是Microstrategy 10.1
发布于 2016-01-19 20:18:44
从您的描述中,听起来Microstrategy首先使用其SQL引擎从数据库中提取所有数据(4600万条记录),然后在此之后应用过滤。
如果您的报告是在Microstrategy developer (或web)中使用属性筛选器创建的,则每个报告都应该正确地执行sql,该sql具有明确的where条件,可转换为这些属性筛选器。例如,如果您有一个标题为'Fruit‘的报告,并且您只想显示苹果,那么您应该在该报告上使用一个属性过滤器,只显示'Fruit’= 'Apple‘的结果。这将在执行报表时转换为SQL引擎中的where条件。但是,如果您要对报告应用视图筛选器,则引擎将首先获取所有内容,然后在分析引擎中筛选整个数据集,这将很慢,特别是在仪表板上运行多个报告时。
重要的是要知道如何将数据集带入仪表板-是将多维数据集用作数据集,还是将其用作报表,或者?有几种方法可以实现你想要的性能,下面是几种方法:
以下是我第一步要做的事情:
SQL检查您的属性和属性关系是否已定义,然后创建一个测试报告并尝试根据其中一个attributes
语句。
发布于 2015-12-16 14:19:57
这听起来像是你有两种情况:
发布于 2015-12-23 09:23:39
你在使用多维数据集吗?我假设你所说的执行一次查询是什么意思。
您需要用新的报告-常规报告-而不是由多维数据集组成的报告来替换单个报告。这是唯一的办法
https://stackoverflow.com/questions/34299012
复制相似问题