首页 > 其他 > 详细

hive UDF自动增长列函数

时间:2015-06-18 15:24:48      阅读:443      评论:0      收藏:0      [点我收藏+]

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自动增长列函数

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!