Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google bigquery 像素跟踪到BQ:如何将querystring参数值直接保存到BQ表字段_Google Bigquery - Fatal编程技术网

Google bigquery 像素跟踪到BQ:如何将querystring参数值直接保存到BQ表字段

Google bigquery 像素跟踪到BQ:如何将querystring参数值直接保存到BQ表字段,google-bigquery,Google Bigquery,我正在使用本文设置无服务器跟踪像素: 这是可行的,但将整个像素GET URL保存到BQ中的一个字段中-因为像素URL将携带多个查询字符串参数值,最好是这些值进入BQ中的各个字段:我想调整它,将GET跟踪像素的每个查询字符串参数值保存到它自己的BQ表字段中 假设querystring参数的名称和数量是已知的,并且它们与BQ表列1对1匹配,那么建议采用什么方法来实现这一点 我在文章中查看了logs查询是否可以调整以实现这一点。 我还看到,数据流可能是一种方式,但考虑是否可能以更直接、更简单的方式实现

我正在使用本文设置无服务器跟踪像素:

这是可行的,但将整个像素GET URL保存到BQ中的一个字段中-因为像素URL将携带多个查询字符串参数值,最好是这些值进入BQ中的各个字段:我想调整它,将GET跟踪像素的每个查询字符串参数值保存到它自己的BQ表字段中

假设querystring参数的名称和数量是已知的,并且它们与BQ表列1对1匹配,那么建议采用什么方法来实现这一点

我在文章中查看了logs查询是否可以调整以实现这一点。
我还看到,数据流可能是一种方式,但考虑是否可能以更直接、更简单的方式实现。

简单直接的方式是在BigQuery中创建一个查询,将它们公开到列中。 您可以先将此查询作为视图,然后可以查询视图而不是完整查询

然后,您可以在BigQuery中设置一个定时查询,定期运行该查询并保存到新表中。这样,旧表就可以按原样获取链接。将创建新表的计划程序


您可以调整以从传入表中删除现有行,并将新行追加到物化表中

这会起作用,但在成本和速度方面不是最好的。更多背景信息:这个跟踪像素将收到大量的请求,数据应该可以几乎实时地用于报告查询。对于上述解决方案,我们必须经常运行计划查询,每1分钟运行一次,比如说,这将有2个缺点:1。成本:查询将为该列读取当天的最小数据(如果已分区),并丢弃大部分已读取的数据,仅使用新插入的行2。配额:我们每天必须运行1440个insert查询,最大值是1000。流媒体解决方案是可能的吗?哦,为了获得高吞吐量,您可以使用Pub/Sub和Dataflow来进行BigQuery,这样您就可以获得高速度,最高每秒1M行。