码迷,mamicode.com
首页 > 其他好文 > 详细

hive UDF自动增长列函数

时间:2015-06-18 15:25:53      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:udf   hive   

1.导入Eclipse编码jar包

    hadoop-auth-2.4.0.2.1.3.0-563.jar

    hadoop-common-2.4.0.2.1.3.0-563.jar

    hive-exec-0.13.0.2.1.3.0-563.jar

2.代码

import org.apache.hadoop.hive.ql.exec.Description;

import org.apache.hadoop.hive.ql.exec.UDF;

import org.apache.hadoop.hive.ql.udf.UDFType;

import org.apache.hadoop.io.LongWritable;

/*

 * UDF RowSequence

 */

@Description(name = "auto_sequence",

value = "_FUNC_() - Returns a generated row sequence number starting from 1")

@UDFType(deterministic = false)

public class RowSequence extends UDF {

   private LongWritable result = new LongWritable();

  

   public RowSequence(){

      result.set(0);

   }

   public LongWritable evaluate(){

      result.set(result.get() + 1);

      return result;

   }

}

3.将jar包导出上传到hive上运行

    (1)从Eclipse导出jarbao

            技术分享

    (2)将autoSequence.jar放到/usr/lib/hive/lib

            hive

            add jar /usr/lib/hive/lib/autoSequence.jar;

            create temporary function auto_sequence as ‘com.redhadoop.autosequence.RowSequence‘;

            select auto_sequence(),uname from tb_user

hive UDF自动增长列函数

标签:udf   hive   

原文地址:http://blog.csdn.net/sunlei1980/article/details/46547443

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!