MapReduce服务 MRS-如何在Hive自定义函数中操作本地文件:回答
回答
默认情况下,可以在UDF中用文件的相对路径来操作文件,如下示例代码:
public String evaluate(String text) { // some logic File file = new File("foo.txt"); // some logic // do return here}
在Hive中使用时,将UDF中用到的文件“foo.txt”上传到HDFS上,如上传到“hdfs://hacluster/tmp/foo.txt”,使用以下语句创建UDF,在UDF中就可以直接操作“foo.txt”文件了:
create function testFunc as 'some.class' using jar 'hdfs://hacluster/somejar.jar', file 'hdfs://hacluster/tmp/foo.txt';
例外情况下,如果“hive.fetch.task.conversion”参数的值为“more”,在UDF中不能再使用相对路径来操作文件,而要使用绝对路径,并且保证所有的HiveServer节点和NodeManager节点上该文件是存在的且omm用户对该文件有相应的权限,才能正常在UDF中操作本地文件。
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是Hive_如何使用Hive
- MRS备份恢复_MapReduce备份_数据备份
- 华为GaussDB自定义函数_GaussDB教程_华为高斯数据库自定义函数
- 大数据分析是什么_使用MapReduce_创建MRS服务
- GaussDB数据库自定义函数_GaussDB 华为_高斯数据库自定义函数
- MapReduce服务_什么是Loader_如何使用Loader
- 文件存储操作指南_弹性文件存储免费_弹性文件存储概念
- 什么是Spark_如何使用Spark_Spark的功能是什么
- MapReduce服务_什么是Hue_如何使用Hue