Tableau api 减少在Tableau中计算过滤器所需的时间

Tableau api 减少在Tableau中计算过滤器所需的时间,tableau-api,Tableau Api,我有一个仪表板,其中我将仪表板中使用的所有过滤器作为全局过滤器,并将大多数使用的过滤器作为上下文过滤器, 问题是计算过滤器所需的时间大约为1-2分钟,如何减少计算这些过滤器所需的时间 我在Oracle上提取了大约200万个数据,其中Tableau 9.3添加到Aron的point中,您还可以使用自定义SQL仅选择要用于仪表板的维度和度量值。我研究过大数据,加载仪表板通常需要5-7分钟。最后,使用自定义sql并删除了不必要的筛选器和参数。:) 除了Aron的观点之外,您还可以使用自定义SQL仅选择

我有一个仪表板,其中我将仪表板中使用的所有过滤器作为全局过滤器,并将大多数使用的过滤器作为
上下文过滤器
, 问题是计算过滤器所需的时间大约为1-2分钟,如何减少计算这些过滤器所需的时间
我在Oracle上提取了大约200万个数据,其中Tableau 9.3添加到Aron的point中,您还可以使用自定义SQL仅选择要用于仪表板的维度和度量值。我研究过大数据,加载仪表板通常需要5-7分钟。最后,使用自定义sql并删除了不必要的筛选器和参数。:)

除了Aron的观点之外,您还可以使用自定义SQL仅选择要用于仪表板的维度和度量值。我研究过大数据,加载仪表板通常需要5-7分钟。最后,使用自定义sql并删除了不必要的筛选器和参数。:)

有几件事可以用来指导性能优化,但细节很重要

自定义SQL可能有助于或损害性能(更常见的损害是因为它阻止了某些查询优化)。根据用户行为的不同,上下文过滤器可能有帮助也可能有伤害。提取通常有帮助,尤其是在聚合时

Alan Eldridge的以下白皮书是一个非常好的起点

您可以查看一些内容来指导性能优化,但细节很重要

自定义SQL可能有助于或损害性能(更常见的损害是因为它阻止了某些查询优化)。根据用户行为的不同,上下文过滤器可能有帮助也可能有伤害。提取通常有帮助,尤其是在聚合时

Alan Eldridge的以下白皮书是一个非常好的起点

您有没有办法重新组织工作簿?我认为您可能能够在实际工作表提取记录之前应用上下文过滤——如果您的过滤操作正确,过滤器将直接传递到SQL查询谓词(一个实际的WHERE子句,而不是真正的“过滤器”)——试试这个——打开Tableau,转到“帮助>设置和性能>开始性能录制”,然后打开工作簿并应用过滤器。加载完成后,转到帮助>设置和性能>停止性能录制。这将为您提供一个带有查询的工作表,这些查询用于双重检查,您正在使用上下文筛选器设置您不想更改的筛选器,对吗?如果你正在创建一个摘录,你可以在创建摘录时应用过滤器,我认为它先于上下文过滤器。另外,你是否使用了大量的计算字段?你可以使用一个更快的数据源,因为你的数据量表现得非常慢。或者认识到每个过滤器都由一个查询填充(因此,如果查询速度慢,那么多个过滤器将非常慢)。这可以通过在过滤器中使用过滤器计数器查询主数据源之前,在提取中拉出过滤器计数器来避免。这可能需要一些数据重组以获得最佳速度。有没有办法重组工作簿?我认为您可能能够在实际工作表提取记录之前应用上下文过滤——如果您的过滤操作正确,过滤器将直接传递到SQL查询谓词(一个实际的WHERE子句,而不是真正的“过滤器”)——试试这个——打开Tableau,转到“帮助>设置和性能>开始性能录制”,然后打开工作簿并应用过滤器。加载完成后,转到帮助>设置和性能>停止性能录制。这将为您提供一个带有查询的工作表,这些查询用于双重检查,您正在使用上下文筛选器设置您不想更改的筛选器,对吗?如果你正在创建一个摘录,你可以在创建摘录时应用过滤器,我认为它先于上下文过滤器。另外,你是否使用了大量的计算字段?你可以使用一个更快的数据源,因为你的数据量表现得非常慢。或者认识到每个过滤器都由一个查询填充(因此,如果查询速度慢,那么多个过滤器将非常慢)。这可以通过在过滤器中使用过滤器计数器查询主数据源之前,在提取中拉出过滤器计数器来避免。这可能需要一些数据重组以获得最佳速度。