Google Data Studio:使用 Google BigQuery 数据连接器应用自定义维度作为过滤器
Posted
技术标签:
【中文标题】Google Data Studio:使用 Google BigQuery 数据连接器应用自定义维度作为过滤器【英文标题】:Google Data Studio: Apply custom dimension as filter using Google BigQuery data connector 【发布时间】:2017-12-20 09:17:10 【问题描述】:不知道 *** 是否适合提出这个问题,因为技术性质可能会受到限制。我正在使用 BigQuery 数据连接器“ga_sessions_YYYMMDD”连接设置仪表板。此连接在 Google Analytics 中设置了几个自定义维度,我可以在 BigQuery 控制台中访问它们,因此我知道它们存在并包含数据。其中两个自定义维度是Language(页面显示的语言)和Country(访问者访问的区域)。它们的自定义维度索引分别为 4 和 5。
我正在尝试在我的报告中将这些自定义维度过滤器中的值应用于我的仪表板中的其他小部件。我尝试通过添加基于维度的报告过滤器来做到这一点:“customDimensions.value”并在此报告过滤器中应用过滤器,“customDimensions.index”等于 4。但这种方法不起作用。
谁能帮助我使用 Google BigQuery 数据源在 Google Data Studio 中正确设置自定义维度作为报告过滤器?
我已经尝试了很多事情并一直在问这个问题,但似乎没有人能够帮助我。总而言之,我只是尝试使用 BigQuery 中的自定义维度制作报告过滤器。
非常感谢您的帮助!
约斯特
【问题讨论】:
【参考方案1】:您的查询应该被编译成一个视图,然后该视图用作数据源。从那里你可以使用视图,因为它是一张桌子。
SELECT
fullvisitorid,
( SELECT MAX(IF(index=1,value, NULL))FROM UNNEST(hits.customDimensions)) AS CustomDimension1,
( SELECT MAX(IF(index=2,value, NULL))FROM UNNEST(hits.customDimensions)) AS CustomDimension2
FROM
`XXXXXXX`, unnest(hits) as hits
【讨论】:
感谢您的快速回复。只是要确定。我需要组成一个全新的数据集才能开始在我的数据工作室可视化中使用自定义维度?标准连接器不允许我开始使用自定义维度作为过滤器? 您需要使用 BQ Web UI 并编写一个查询,将您的 customDimensions 实现为列。获得该查询后,您需要在 BQ 中另存为视图。然后在 DataStudio 中,您使用 UI 创建一个使用创建的视图的数据集。 您也可以在 Data Studio 中使用自定义查询(取消选中旧版 SQL 的复选框)。【参考方案2】:在数据工作室中,您可以使用类似的东西
case when customDimensions.index=1 then customDimensions.value end
创建新维度时。
您只需要确保 customDimensions.index
事先已将聚合设置为“无”。否则会出现维度/指标混合错误。
BigQuery 中基本相同:
SELECT
(SELECT value FROM t.customDimensions WHERE index=1) cd1
FROM `project.dataset.ga_sessions_201712*` AS t
或在命中范围内:
SELECT
(SELECT value FROM h.customDimensions WHERE index=1) cd1
FROM `project.dataset.ga_sessions_201712*` AS t, t.hits AS h
如果您想了解 DataStudio 正在编写的查询,您可以在已连接(计费)项目的 BigQuery 查询历史记录中查看它们(如果它正在以您的名义创建查询作业)。
【讨论】:
以上是关于Google Data Studio:使用 Google BigQuery 数据连接器应用自定义维度作为过滤器的主要内容,如果未能解决你的问题,请参考以下文章
Google Data Studio:使用 Google BigQuery 数据连接器应用自定义维度作为过滤器
Google Data Studio:将用户输入写回 Google Big Query 表