我编写了一个UDF,它接收一个字符串作为唯一参数,即格式。 UDF根据格式生成代码。生成之后,我将使用JDBC将此代码插入数据库。
如果插入查询成功执行,我将从函数返回代码。如果没有,我重新生成代码(代码是使用少量随机数和几个随机字符生成的。)
问题是JDBC连接需要1秒才能从UDF内部连接到Teradata Database。
我有一个表customers_email表,里面有700万行。
当我运行以下查询时,整整一天。
select myUDF('Win#!'),email_addres
from customer_email;
如果删除所有数据库JDBC交互,结果非常快。