导航:首页 > 源码编译 > hive编译

hive编译

发布时间:2022-02-21 16:17:26

A. eclipse怎么开发hive udf

Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以。
Hive的UDF开发只需要重构UDF类的evaluate函数即可。例:
package com.hrj.hive.udf;
import org.apache.hadoop.hive.ql.exec.UDF;
public class helloUDF extends UDF {
public String evaluate(String str) {
try {
return "HelloWorld " + str;
} catch (Exception e) {
return null;
}
}
}

将该java文件编译成helloudf.jar
hive> add jar helloudf.jar;
hive> create temporary function helloworld as 'com.hrj.hive.udf.helloUDF';
hive> select helloworld(t.col1) from t limit 10;
hive> drop temporary function helloworld;

注:
1.helloworld为临时的函数,所以每次进入hive都需要add jar以及create temporary操作
2.UDF只能实现一进一出的操作,如果需要实现多进一出,则需要实现UDAF

B. Apache Hive的工作原理是什么

Hadoop处理完全依赖于MapRece框架,这要求用户了解Java编程的高级样式,以便成功查询数据。Apache Hive背后的动机是简化查询,并将Hadoop非结构化数据开放给公司中更广泛的用户群。
Hive有三个主要功能:数据汇总,查询和分析。它支持名为HiveQL或HQL的语言表达的查询,HQL是一种声明性的类SQL语言,在其第一个版本中,它自动将SQL样式的查询转换为在Hadoop平台上执行的MapRece。此外,HiveQL支持自定义MapRece脚本,以便查询。
当通过Hive提交SQL查询时,它们最初由创建会话句柄的驱动程序组件接收,通过Java数据库连接/开放数据库连接接口将请求转发给编译器,随后转发作业以供执行。Hive支持数据序列化/反序列化,并通过包含名为Hive-Metastore的系统目录来提高模式设计的灵活性。

C. 如何用sql来写动态sql,本文主要是hiveql

动态SQL语句在编译时,并不知道SQL语句的内容,SQL语句的内容“不确定”,只有在运行时,才建立、解析并执行SQL语句。利用动态SQL,在存储过程中,可以动态创建表、视图、触发器等。
动态SQL主要用在以下两种场景:
编译时,无法确定SQL语句的内容
静态SQL不支持的SQL语句,就比如上面代码中的create
我们可以看到,静态SQL在编译时就已经提前检查了SQL正确性,以及涉及的数据库对象和对应的权限关系,而动态SQL则需要在运行的时候才能判断,所以,静态SQL的效率高于动态SQL。说了这么多概念的东西,我们现在就来实际看看如何编写动态SQL,以及如何运行动态SQL。

D. 如何编译hive_hbase-handler.jar

之前上传了一个文档:http://wenku..com/view/faec57fb04a1b0717fd5dd00.html?st=1你可以看看。

E. hive的安装配置

你可以下载一个已打包好的hive稳定版,也可以下载源码自己build一个版本。
安装需要 java 1.6,java 1.7或更高版本。 Hadoop 2.x或更高, 1.x. Hive 0.13 版本也支持 0.20.x, 0.23.x linux,mac,windows操作系统。以下内容适用于linux系统。 安装打包好的hive
需要先到apache下载已打包好的hive镜像,然后解压开该文件 $tar-xzvfhive-x.y.z.tar.gz设置hive环境变量 $cdhive-x.y.z$exportHIVE_HOME={{pwd}}设置hive运行路径 $exportPATH=$HIVE_HOME/bin:$PATH编译Hive源码
下载hive源码
此处使用maven编译,需要下载安装maven。
以Hive 0.13版为例 编译hive 0.13源码基于hadoop 0.23或更高版本
$cdhive$mvncleaninstall-Phadoop-2,dist$cdpackaging/target/apache-hive-{version}-SNAPSHOT-bin/apache-hive-{version}-SNAPSHOT-bin$lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore) 编译hive 基于hadoop 0.20
$cdhive$antcleanpackage$cdbuild/dist#lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore) 运行hive
Hive运行依赖于hadoop,在运行hadoop之前必需先配置好hadoopHome。 exportHADOOP_HOME=<hadoop-install-dir>在hdfs上为hive创建 mp目录和/user/hive/warehouse(akahive.metastore.warehouse.dir) 目录,然后你才可以运行hive。
在运行hive之前设置HiveHome。 $exportHIVE_HOME=<hive-install-dir>在命令行窗口启动hive $$HIVE_HOME/bin/hive若执行成功,将看到类似内容如图所示

F. hive的源代码的编译与调试怎么做

windows自带的记事本只能做编辑源代码使用,要编译需要有编译器才行,找些其他的集成化软件,编辑编译连接调试集成一体的,如vc6.0,wintc等

G. 我想学习hive,请问安装hive之前,必须安装centos、hadoop、java这些吗

安装需要
java 1.6,java 1.7或更高版本。
Hadoop 2.x或更高, 1.x. Hive 0.13 版本也支持 0.20.x, 0.23.x
Linux,mac,windows操作系统。以下内容适用于linux系统。
安装打包好的hive
需要先到apache下载已打包好的hive镜像,然后解压开该文件
$ tar -xzvf hive-x.y.z.tar.gz

设置hive环境变量
$ cd hive-x.y.z$ export HIVE_HOME={{pwd}}

设置hive运行路径
$ export PATH=$HIVE_HOME/bin:$PATH

编译Hive源码
下载hive源码
此处使用maven编译,需要下载安装maven。

以Hive 0.13版为例
编译hive 0.13源码基于hadoop 0.23或更高版本
$cdhive$mvncleaninstall-Phadoop-2,dist$cdpackaging/target/apache-hive-{version}-SNAPSHOT-bin/apache-hive-{version}-SNAPSHOT-bin$lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore)
编译hive 基于hadoop 0.20
$cdhive$antcleanpackage$cdbuild/dist#lsLICENSENOTICEREADME.txtRELEASE_NOTES.txtbin/(alltheshellscripts)lib/(requiredjarfiles)conf/(configurationfiles)examples/(sampleinputandqueryfiles)hcatalog/(hcataloginstallation)scripts/(upgradescriptsforhive-metastore)
运行hive
Hive运行依赖于hadoop,在运行hadoop之前必需先配置好hadoopHome。
export HADOOP_HOME=<hadoop-install-dir>

在hdfs上为hive创建\tmp目录和/user/hive/warehouse(akahive.metastore.warehouse.dir) 目录,然后你才可以运行hive。
在运行hive之前设置HiveHome。
$ export HIVE_HOME=<hive-install-dir>

在命令行窗口启动hive
$ $HIVE_HOME/bin/hive

若执行成功,将看到类似内容如图所示

阅读全文

与hive编译相关的资料

热点内容
ubuntu下搭建php环境 浏览:844
压缩winsxs文件 浏览:174
安卓手机系统怎么终止系统更新 浏览:703
程序员需要注重养生吗 浏览:404
php框架网页 浏览:916
sed脚本执行系统命令 浏览:911
linux选中命令 浏览:140
outlook发件加密 浏览:263
h3c历史命令 浏览:511
曙光服务器怎么创建用户 浏览:724
命令文案例 浏览:798
识别什么花app 浏览:820
线上app是什么意思 浏览:45
单片机屏蔽部分端口 浏览:329
苹果版app是什么 浏览:745
云服务器能更换地址 浏览:76
linux预读算法 浏览:558
视频用什么app编辑 浏览:70
编译原理清华实验 浏览:978
闲蛋app人气怎么样 浏览:275