我想创建一个使用调用user-defined function的查询的BigQuery视图。如何告诉BigQuery在哪里可以找到UDF的代码文件?
答案 0 :(得分:9)
视图可以引用存储在Google Cloud Storage,内联代码blob或本地文件中的UDF资源(内容将加载到内联代码blob中)。
要使用BigQuery UI使用UDF创建视图,只需像正常运行查询一样填写UDF资源,并另存为视图。 (换句话说,不需要采取任何特殊行动)。
要在命令行客户端创建视图期间指定这些,请使用--view_udf_resource标志:
bq mk --view="SELECT foo FROM myUdf(table)" \
--view_udf_resource="gs://my-bucket/my-code.js"
在上面的示例中,gs://my-bucket/my-code.js
将包含myUdf()
的定义。如果需要在视图查询中引用多个代码文件,则可以提供多个--view_udf_resources
标记。
您可以指定gs:// URI或本地文件。如果指定本地文件,则代码将被读取一次并打包到内联代码资源中。
通过API,这是一个名为userDefinedFunctionResources
的重复字段。它是包含视图SQL的query
字段的兄弟。