【发布时间】:2017-09-18 11:15:41
【问题描述】:
我们在 Google Cloud DataLab 中有一个工作原型,我们在其中广泛使用 %%bq“魔法”来使用各种 UDF 构建参数化查询。
比如:
customFn1 = bq.UDF("customFn1",theJsCode1,theDataTypeDef1,params=paramDefs1)
customFn2 = bq.UDF("customFn2",theJsCode2,theDataTypeDef2,params=paramDefs2)
然后:
%%bq query --name finalQry --udfs customFn1 customFn2
SELECT
customFn1(bell, whistle) AS Output1,
customFn2(rank,serialNo) AS Output2
FROM
myImaginaryTable
WHERE
id < @param1 AND id > @param2
然后:
%%bq sample -q finalQry
parameters:
- name: param1
type: STRING
value: "ab1"
- name: param2
type: STRING
value: "ab3"
我们希望开始着手部署此原型,并且需要访问最终查询文本以在我们的生产代码中使用(将在适当的时候通过 API 调用)。
我知道 GC datalab 正在后台做一些工作来编写这个查询(我们的现实世界的例子要复杂得多),我需要在我们的代码中复制它。
如果我可以访问 GC datalab 在组成 udf、替换参数等之后生成的实际查询字符串,那将非常有用?我可以手动完成复制和粘贴等,但如果我可以在某处自动访问这个最终查询字符串,那将是超级有用的吗?
我在这里阅读过文档:http://googledatalab.github.io/pydatalab/datalab.bigquery.html,但似乎找不到我需要的东西。任何人都可以帮忙吗?
【问题讨论】:
标签: google-bigquery google-cloud-datalab