Funciones definidas por el usuario en Amazon Redshift
Puede crear una nueva función escalar definida por el usuario (UDF) personalizada mediante una cláusula SQL SELECT o un programa Python. La función nueva se almacena en la base de datos y está disponible para cualquier usuario que tenga los privilegios necesarios para ejecutarla. Una UDF escalar personalizada se ejecuta de la misma manera que se ejecutan las funciones existentes de Amazon Redshift.
Para las UDF de Python, además de usar la funcionalidad estándar en Python, puede importar sus propios módulos personalizados desde Python. Para obtener más información, consulte Compatibilidad del lenguaje Python con las UDF. Tenga en cuenta que Python 3 no está disponible para las UDF de Python. Para obtener compatibilidad con Python 3 para las UDF de Amazon Redshift, utilice UDF de Lambda escalares en su lugar.
También puede crear UDF de AWS Lambda que utilizan funciones personalizadas definidas en Lambda como parte de sus consultas SQL. Las UDF de Lambda permiten la escritura de UDF complejas y la integración a componentes de terceros. También pueden ayudar a superar algunas de las limitaciones de las UDF actuales de Python y SQL. Por ejemplo, pueden ayudar a acceder a los recursos de red y almacenamiento, además de a escribir instrucciones SQL más completas. Puede crear UDF de Lambda en cualquiera de los lenguajes de programación admitidos por Lambda, como Java, Go, PowerShell, Node.js, C#, Python y Ruby. También puede utilizar un tiempo de ejecución personalizado.
De manera predeterminada, todos los usuarios pueden ejecutar UDF. Para obtener más información acerca de los privilegios, consulte Seguridad y permisos de UDF.