Funções definidas pelo usuário (UDFs) no Amazon Redshift
Você pode criar uma função escalar personalizada definida pelo usuário (UDF) usando uma cláusula SQL SELECT ou um programa Python. A nova função é armazenada no banco de dados e está disponível para qualquer usuário com privilégios suficientes para ser executada. Você executa um UDF escalar personalizado da mesma forma que executa funções existentes do Amazon Redshift.
Para UDFs Python, além da utilização da funcionalidade padrão Python, você pode importar seus próprios módulos Python personalizados. Para ter mais informações, consulte Suporte da linguagem Python para UDFs. O Python 3 não está disponível para UDFs do Python. Para obter suporte ao Python 3 para UDFs do Amazon Redshift, use UDFs escalares do Lambda.
Você também pode criar AWS Lambda UDFs que usam funções personalizadas definidas no Lambda como parte de suas consultas SQL. UDFs do Lambda permitem que você escreva UDFs complexas e integre com componentes de terceiros. Eles também podem ajudá-lo a superar algumas das limitações dos atuais UDFs Python e SQL. Por exemplo, eles podem ajudá-lo a acessar recursos de rede e armazenamento e escrever mais instruções SQL completas. Você pode criar UDFs do Lambda em qualquer uma das linguagens de programação compatíveis com o Lambda, como Java, Go, PowerShell, Node.js, C#, Python e Ruby. Ou você pode usar um tempo de execução personalizado.
Por padrão, todos os usuários podem executar UDFs. Para obter mais informações sobre privilégios, consulte Segurança e permissões de UDFs.