选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

使用用户定义函数进行查询

聚焦模式
使用用户定义函数进行查询 - Amazon Athena

Amazon Athena 中的用户定义函数 (UDF) 使您可以创建自定义函数来处理记录或记录组。UDF 接受参数,执行工作,然后返回结果。

要在 Athena 中使用 UDF,请在 SQL 查询中的 SELECT 语句之前写入 USING EXTERNAL FUNCTION 子句。SELECT 语句引用 UDF 并定义在查询运行时传递给 UDF 的变量。SQL 查询在调用 UDF 时使用 Java 运行时调用 Lambda 函数。UDF 在 Lambda 函数中定义为 Java 部署包中的方法。可以在同一个 Java 部署包中为某个 Lambda 函数定义多个 UDF。您还可以在 USING EXTERNAL FUNCTION 子句中指定 Lambda 函数的名称。

部署 Athena UDF 的 Lambda 函数有两个选项。您可以直接使用 Lambda 部署函数,也可以使用 AWS Serverless Application Repository 来部署。要查找 UDF 的现有 Lambda 函数,您可以搜索公共 AWS Serverless Application Repository 或私有存储库,然后部署到 Lambda。您还可以创建或修改 Java 源代码,将其打包到 JAR 文件中,然后使用 Lambda 或 AWS Serverless Application Repository 来部署它。有关能够帮助您开始使用的示例 Java 源代码和软件包,请参阅 使用 Lambda 创建和部署 UDF。有关 Lambda 的更多信息,请参阅《AWS Lambda 开发人员指南》。有关 AWS Serverless Application Repository 的更多信息,请参阅《AWS Serverless Application Repository 开发人员指南》。

有关使用 UDF 与 Athena 一起翻译和分析文本的示例,请参阅 AWS Machine Learning 博客文章:使用 Amazon Athena、Amazon Translate 和 Amazon Comprehend 的 SQL 函数翻译和分析文本,或观看 video

有关在 Amazon Athena 中使用 UDF 扩展地理空间查询的示例,请参阅 AWS 大数据博客中的使用 UDF 和 AWS Lambda 在 Amazon Athena 中扩展地理空间查询

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。