第 4 步:在 Snowflake 中为 GCP 创建的外部函数¶
本主题提供有关在 Snowflake 中创建外部函数对象的说明。此对象存储有关远程服务的信息,例如远程服务接受的参数。
本主题内容:
上一步¶
创建外部函数对象¶
此任务假定您位于 Classic Console 的 Worksheets 页面中:
输入 CREATE EXTERNAL FUNCTION 语句。该语句应类似于以下内容:
create or replace external function <external_function_name>(<parameters>) returns variant api_integration = <api_integration_name> as '<function_url>';
替换
<external_function_name>
with a unique function name (e.g.echo
)。此名称必须遵循 对象标识符 的规则。此外,在跟踪工作表的“外部函数名称”字段中记录函数名称。
将
<parameters>
替换为函数的参数的名称和 SQL 数据类型(如果有)。例如:a integer, b varchar
参数必须与远程服务所需的参数相对应。参数名称不需要一致,但数据类型需要兼容。
此外,在跟踪工作表的“外部函数名称”字段中记录参数名称和数据类型。
将
<api_integration_name>
替换为跟踪工作表中“API 集成名称”字段中的值。
将
<function_URL>
替换为Gateway Base URL
和Path Suffix
字段中的值,用正斜杠 (/
) 分隔。URL 应类似于:
https://<gateway-base-url>/<path-suffix>
如果尚未执行,请执行您输入的 CREATE EXTERNAL FUNCTION 命令。
测试外部函数¶
现在,您应该能够调用外部函数来验证它是否正常工作。
备注
如果您在本教程的 第 2 步:在控制台中创建代理服务(Google Cloud API Gateway) 中将安全定义添加到配置文件中以保护网关,则在更新本教程 第 5 步:在控制台中为代理服务创建 GCP 安全策略 中配置文件中的安全定义之前,您将无法测试外部函数。
有关详细信息,请参阅 为 GCP 调用外部函数。