BigQuery -- 在公开共享项目中使用 UDF 的问题

Posted

技术标签:

【中文标题】BigQuery -- 在公开共享项目中使用 UDF 的问题【英文标题】:BigQuery -- Problem Using UDF in publicly shared project 【发布时间】:2021-03-24 15:29:36 【问题描述】:

我无法理解为什么我不能使用公开共享的 UDF。我有兴趣使用公共项目“jslibs”中可用的 UDF,如下所述:

https://carto.com/blog/spatial-functions-bigquery-uber/

如果我在 BigQuery SQL UI 中执行以下 SQL:

SELECT jslibs.h3.ST_H3(ST_GEOGPOINT(-74.00,40.7128),7)

它运行得很好。

但是,如果我尝试对我自己数据集中表中的数据使用相同的函数,我会收到一个错误,即找不到该函数。

例子:

SELECT a.*, jslibs.h3.ST_H3(ST_GEOGPOINT(-74.00,40.7128),7) 
from bargetracker.ais a where dt_utc = '2019-01-01' limit 10

这会导致错误“未找到函数:jslibs.h3.ST_H3 at [1:13]”

有人知道为什么会报错吗?

【问题讨论】:

【参考方案1】:

在这里回答我自己的问题(经过大量搜索):

UDF不能跨区域共享。来自 Github 的这个帖子给出了答案:

https://github.com/CartoDB/carto-spatial-extension/issues/46

【讨论】:

以上是关于BigQuery -- 在公开共享项目中使用 UDF 的问题的主要内容,如果未能解决你的问题,请参考以下文章

BIGQUERY Golang客户获取项目列表

对使用共享 MFC 核心 DLL 的 MFC 项目使用 CTrace::SetLevel

表情符号在上传到 Bigquery 时崩溃

C# 在共享项目中使用引用/类库

UDF 上的 Bigquery 配额限制

sbt共享项目之间的依赖关系