如果您是为BigQuery编写自定义查询的许多Data Studio用户之一,则现在可以运行参数化查询。这为用户提供了更好的自定义和交互选项,同时使您的报告更快。从Data Studio连接到BigQuery时,您可以使用特殊的日期参数或在自定义查询中定义自己的命名参数。自定义查询中的参数具有两个主要优点:可以从报表中动态更新查询-无需创建新数据源;即使报表用户没有对数据源的编辑访问权限,此方法也有效。由于将较少的数据从BigQuery传递到Data Studio进行参数化查询,因此您可以优化查询成本并提高仪表板性能。

创建参数化的自定义查询
假设您有兴趣按语料库分析莎士比亚作品集的单词用法。以下BigQuery公共数据集bigquery-public-data.samples.shakespeare可用于执行此分析:
BQ公开数据集
为了允许报表编辑者从莎士比亚的作品中选择要分析的语料库,您可以使用Data Studio中BigQuery连接器的“自定义查询”界面将语料库定义为参数作为过滤器的一部分。您可以为参数定义UI元素的类型(例如,文本输入,单选,复选框等)并提供默认值。
在以下示例中,语料库参数已定义为单选下拉列表,其中“哈姆雷特”(Hamlet)作为默认值,以及其他作品(如“奥赛罗”,“金李尔”等)的默认值。

真正酷的是,一旦定义了配置,报表编辑器便可以使用报表属性面板的“参数”部分中的下拉列表来选择要分析的特定语料库:在日期参数之前,针对日期分片或分区表的自定义查询不能限于基于报表的日期控件的日期范围。相反,您的自定义查询将必须获取所有日期的所有行,而让Data Studio进行针对报表用户所选日期范围的过滤工作。结果是报告速度较慢且效率较低。

使用日期参数,可以将保留的开始日期和结束日期参数用作自定义查询的一部分。当报表用户选择一个日期范围进行分析时,所选日期将自动包含在您的自定义查询中,从而使查询效率更高,并且仅获取请求的日期范围所需的行。下面的示例自定义查询使用@DS_START_DATE和@DS_END_DATE参数作为表的创建日期列上过滤器的一部分。查询产生的记录将被限制在报表用户选择的日期范围内,从而减少了返回的记录数,从而加快了查询速度:

BQ自定义查询
使用开始日期和结束日期参数的BigQuery自定义查询
标准的Data Studio 日期设置和控件将确定您的自定义查询的日期值。报表编辑器可以设置默认日期或向报表添加日期控件,查询的开始和结束日期将根据报表日期控件而改变。
在这两种情况下,命名和日期参数都提供了一种更有效的方式来从单个BigQuery数据源检索数据,同时为报表用户提供了灵活的选项来分析不同的数据。