关于1.9使用hive中的udf

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

关于1.9使用hive中的udf

like
各位大佬好:
        目前我在使用1.9版本中hive的udf碰到如下问题:
        1、hive的udf都是注册在default库中,sql里面带有default关键词,flink程序就会报错
        我通过 tableEnv.useCatalog("hive") 、tableEnv.useDatabase("default")这种方式解决了default关键词的问题
        同时发现如果不使用tableEnv.useDatabase("xx_db"),直接使用  xx_db.fun是找不到函数的


        2、使用上面的方式能使用hive中指定某个库的udf,但是需要使用flink中注册的表会很麻烦
        sql里需要这么写(default_catalog.default_database.xx_table)


 请问大家有没有好的使用方式和建议?感谢 !  
Reply | Threaded
Open this post in threaded view
|

Re: 关于1.9使用hive中的udf

Terry Wang

问题1:
        default关键词报错是否试过   hive.`default`.xx_udf 方式, 这样转义应该能解决关键词报错的问题。

问题2:
        flink 1.10 中会支持modular plugin的方式,使用起来会更方便


Best,
Terry Wang



> 在 2019年9月25日,下午7:21,like <[hidden email]> 写道:
>
> 各位大佬好:
>        目前我在使用1.9版本中hive的udf碰到如下问题:
>        1、hive的udf都是注册在default库中,sql里面带有default关键词,flink程序就会报错
>        我通过 tableEnv.useCatalog("hive") 、tableEnv.useDatabase("default")这种方式解决了default关键词的问题
>        同时发现如果不使用tableEnv.useDatabase("xx_db"),直接使用  xx_db.fun是找不到函数的
>
>
>        2、使用上面的方式能使用hive中指定某个库的udf,但是需要使用flink中注册的表会很麻烦
>        sql里需要这么写(default_catalog.default_database.xx_table)
>
>
> 请问大家有没有好的使用方式和建议?感谢 !  

Reply | Threaded
Open this post in threaded view
|

回复: 关于1.9使用hive中的udf

like
非常感谢,但是我试过的 hive.xx_db.xx_udf 这种方式是找不到这个udf的,必须使用 tableEnv.useCatalog("hive") 、tableEnv.useDatabase("default")




在2019年9月26日 16:43,Terry Wang<[hidden email]> 写道:

问题1:
default关键词报错是否试过   hive.`default`.xx_udf 方式, 这样转义应该能解决关键词报错的问题。

问题2:
flink 1.10 中会支持modular plugin的方式,使用起来会更方便


Best,
Terry Wang



在 2019年9月25日,下午7:21,like <[hidden email]> 写道:

各位大佬好:
目前我在使用1.9版本中hive的udf碰到如下问题:
1、hive的udf都是注册在default库中,sql里面带有default关键词,flink程序就会报错
我通过 tableEnv.useCatalog("hive") 、tableEnv.useDatabase("default")这种方式解决了default关键词的问题
同时发现如果不使用tableEnv.useDatabase("xx_db"),直接使用  xx_db.fun是找不到函数的


2、使用上面的方式能使用hive中指定某个库的udf,但是需要使用flink中注册的表会很麻烦
sql里需要这么写(default_catalog.default_database.xx_table)


请问大家有没有好的使用方式和建议?感谢 !