本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
查詢使用者定義的函數
Amazon Athena 中的使用者定義函數 (UDF) 可讓您建立自訂函數,以處理記錄或記錄群組。UDF 接受參數、執行工作,然後傳回結果。
若要在 Athena UDF中使用 ,請在SQL查詢中的SELECT
陳述式之前撰寫USING EXTERNAL FUNCTION
子句。SELECT
陳述式參考 ,UDF並定義在查詢執行UDF時傳遞給 的變數。SQL 查詢會在呼叫 時,使用 Java 執行期叫用 Lambda 函數UDF。UDFs在 Lambda 函數中定義 做為 Java 部署套件中的方法。UDFs 您可以在 Lambda 函數的相同 Java 部署套件中定義多個。您也可以在 USING EXTERNAL FUNCTION
子句中指定 Lambda 函數的名稱。
您有兩個選項可部署 Athena 的 Lambda 函數UDFs。您可以直接使用 Lambda,也可以使用 AWS Serverless Application Repository部署函數。若要尋找 的現有 Lambda 函數UDFs,您可以搜尋公有 AWS Serverless Application Repository 或私有儲存庫,然後部署至 Lambda。您也可以建立或修改 Java 原始碼、將其封裝至 JAR 檔案,並使用 Lambda 或 部署 AWS Serverless Application Repository。如需 Java 原始程式碼和套件範例來協助您開始使用,請參閱UDF 使用 Lambda 建立和部署。如需有關 Lambda 的詳細資訊,請參閱《AWS Lambda 開發人員指南》。如需詳細資訊 AWS Serverless Application Repository,請參閱 AWS Serverless Application Repository 開發人員指南。
如需使用 UDFs搭配 Athena 來翻譯和分析文字的範例,請參閱 AWS Machine Learning部落格文章使用 Amazon Athena、Amazon Translate 和 Amazon Comprehend SQL函數來翻譯和分析文字
如需使用 在 Amazon Athena 中UDFs擴展地理空間查詢的範例,請參閱AWS 大數據部落格中的使用 UDFs和 擴展 Amazon Athena 中的地理空間查詢 AWS Lambda