Wenn ich einen SELECT-Vorgang in Amazon Athena ausführe, erhalte ich den Syntaxfehler „function not registered“ und muss ihn beheben.
Lösung
Wenn du versuchst, eine Funktion zu verwenden, die Athena nicht unterstützt, erhältst du einen Fehler, der einer der folgenden Meldungen ähnelt:
„SYNTAX_ERROR: line 1:8: Function function_name not registered“
„FUNCTION_NOT_FOUND: line 1:8: Function 'function_name' not registered“
Unterstützte Funktionen identifizieren
Eine Liste der von Athena unterstützten Funktionen findest du unter Funktionen der Athena-Engine Version 3. Oder führe den folgenden Befehl aus:
SHOW FUNCTIONS
Beispielausgabe:
Function Return Type Argument Types Function Type Deterministic Description
abs bigint bigint scalar true absolute value
abs decimal(p,s) decimal(p,s) scalar true absolute value
abs double double scalar true absolute value
Eine benutzerdefinierte Funktion erstellen
Wenn Athena die Funktion, die du verwenden möchtest, nicht unterstützt, verwende AWS Lambda, um eine benutzerdefinierte Funktion (UDF) zu erstellen und bereitzustellen in Athena.
Ähnliche Informationen
Amazon Athena UDF Connector auf der GitHub-Website
Connect Amazon Athena to your Apache Hive Metastore and use user-defined functions (Amazon Athena mit deinem Apache Hive Metastore verbinden und benutzerdefinierte Funktionen verwenden)