Hive中配置与编写自定义UDF函数

环境介绍:CentOS7+hive-1.1.0-cdh5.7.0+IntelliJ IDEA+Maven3.3.9
1、创建工程
   打开IntelliJ IDEA
     File-->New-->Project...-->Maven选择Create from archetye-->org.apache.maven.archety:maven-archetype-quitkstart

2、配置
  2.1、增加内容如下:
   在工程中找到pom.xml文件中hadoop-common 、hive-exec 、hive-jdbc

点击(此处)折叠或打开

  1. <properties>
  2.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>


  3.     <!-- hadoop、hive版本信息 -->
  4.     <hadoop.version>2.6.0-cdh5.7.0</hadoop.version>
  5.     <hive.version>1.1.0-cdh5.7.0</hive.version>
  6.   </properties>


  7.     <!-- hadoop依赖 -->
  8.     <dependency>
  9.       <groupId>org.apache.hadoop</groupId>
  10.       <artifactId>hadoop-common</artifactId>
  11.       <version>${hadoop.version}</version>
  12.     </dependency>


  13.     <!-- hive依赖 -->
  14.     <dependency>
  15.       <groupId>org.apache.hive</groupId>
  16.       <artifactId>hive-exec</artifactId>
  17.       <version>${hive.version}</version>
  18.     </dependency>
  19.   </dependencies>
  20.   
  21.   <!-- cdn资源仓库 -->
  22.   <repositories>
  23.     <repository>
  24.       <id>cloudera</id>
  25.       <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
  26.     </repository>
  27.   </repositories>
  2.2、在<repository></repository>中修改内容如下:

点击(此处)折叠或打开

  1. <dependency>
  2.       <groupId>junit</groupId>
  3.       <artifactId>junit</artifactId>
  4.       <version>4.10</version>
  5.       <scope>test</scope>
  6.     </dependency>
3、创建类,并编写一个UDF HelloUDF.java,代码如下:

点击(此处)折叠或打开

  1. package org.apache.hadoop.hive.ql.udf;


  2. import org.apache.hadoop.hive.ql.exec.UDF;
  3. import org.apache.hadoop.io.Text;


  4. public class HelloUDF extends UDF {
  5.     public Text evaluate(Text input) {
  6.         return new Text("Hello:" + input);
  7.     }


  8.     public static void main(String args[]){
  9.         HelloUDF helloUDF = new HelloUDF();
  10.         Text rs = helloUDF.evaluate(new Text("zhangsan"));
  11.         System.out.println(rs.toString());
  12.     }
  13. }
4、测试UDF类,在上又键选择Run 'HelloUDF.main()'

5、打包:
   在IDEA菜单中选择view-->Tool Windows-->Maven Projects,然后在Maven Projects窗口中选择【工程名】-->Lifecycle-->package,在package中右键选择Run Maven Build开始打包
   执行成功后在日志中找:
     [INFO] Building jar: D:\software\ruozedata_workspace\basic02-hive\target\hive-1.0.jar

若泽大数据交流群:671914634

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31511218/viewspace-2150099/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31511218/viewspace-2150099/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值