hive
文章平均质量分 61
azhao_dn
关注hadoop 数据挖掘
展开
-
hive cli命令行选项
Hive Command line OptionsUsage: Usage: hive [-hiveconf x=y]* []* [|] [-S] -i Initialization Sql from file (executed automatically and silently before any other commands) -e转载 2011-10-31 14:37:35 · 4685 阅读 · 1 评论 -
hive运维记录20111117
1)运行hive cli客户端时报错:Mkdirs failed to create /tmp/hadoop-test/hadoop-unjar15513 错误原因:hive客户端所在服务器/tmp目录已满 解决办法:a)清空/tmp目录;b)修改hive的临时目录2)hive提交的作业始终是map 0% red 0%的状态: 作业图示如下:原创 2011-11-17 11:18:38 · 6598 阅读 · 1 评论 -
hive外部表使用分区partition
1)创建外部表create external table test(username String,work string) PARTITIONED BY(year String, month String, day String) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/tmp/test/'; 2)修改表创建原创 2012-07-03 19:34:20 · 18495 阅读 · 0 评论 -
hive partition 使用记录1
最近在使用hive的partition时,发生这么一件有意思的事情: 我们在定义hive表时,partition字段的定义为int,而在增加partition时,对partition字段的赋值却是string,很遗憾的是,hive这时并没有对字段类型进行检查,也就是说,我们的增加partition语句执行成功了。在我们使用刚才增加的partition时,hadoop job管理页面显原创 2013-11-27 14:46:39 · 7030 阅读 · 0 评论 -
hive自定义mapred脚本运行机制分析
1. hive自定义mapred脚本运行机制 1.1)HQL中使用自定义mapred脚本的语法格式及案例语法格式:FROM ( FROM src MAP expression (',' expression)* (inRowFormat)? USING 'my_map_script' ( AS colName (',' col原创 2013-09-25 14:01:19 · 8040 阅读 · 2 评论 -
hive查询优化总结
一、join优化Join查找操作的基本原则:应该将条目少的表/子查询放在 Join 操作符的左边。原因是在 Join 操作的 Reduce 阶段,位于 Join 操作符左边的表的内容会被加载进内存,将条目少的表放在左边,可以有效减少发生内存溢出错误的几率。Join查找操作中如果存在多个join,且所有参与join的表中其参与join的key都相同,则会将所有的join合并到一个mapred原创 2012-07-02 09:33:41 · 11477 阅读 · 2 评论 -
hive的create table 问题
在使用hive DDL语句时,遇上了一些问题: create table if not exists temp.temp1 like vv_20111023; 表创建成功,describe temp1也输出正常; 然后执行数据插入操作: insert OVERWRITE table temp1 select a.* from vv.vv_20111023原创 2011-11-01 11:40:50 · 16492 阅读 · 0 评论 -
hive查询实战1
1)json操作hive> select get_json_object("{\"a\":1}","$.a") from filterd_url limit 2; OK 1 1 Time taken: 364.962 seconds, Fetched: 2 row(s) hive> select * from filterd_url where原创 2014-08-13 17:44:38 · 5227 阅读 · 0 评论 -
hive UDF开发注意事项
在开发的hive UDF中,有时候需要使用到第三方jar包,一般的做法是把第三方jar包和udf一起打包,结果在测试udf时,hive报错:java.lang.ClassNotFoundException 解决办法: 1)在运行hive hql时,手动将udf所需要的jar包 通过add语句 添加(测试通过); 2)将udf所需原创 2012-11-14 12:04:14 · 8201 阅读 · 2 评论 -
在windows搭建hive eclipse开发环境
1)安装jdk2)安装ant 2.1)下载ant最新版本 2.2)建ant解压到安装目录 2.3)修改环境变量,添加变量:ATN_HOME ,修改path,添加:%ANT_HOME%/bin3)在cmd中测试ant是否安装成功: 在cmd 中运行ant命令,如果安装成功,则输出:Buildfile: build.xml does not原创 2012-12-04 18:31:02 · 14549 阅读 · 1 评论 -
HIVE UDAF和UDTF实现group by后获取top值
作者:liuzhoulong 发表于2012-7-26 14:52:57 原文链接先自定义一个UDAF,由于udaf是多输入一条输出的聚合,所以结果拼成字符串输出,代码如下:public class Top4GroupBy extends UDAF { //定义一个对象用于存储数据 public static class State { priva转载 2012-10-30 16:12:43 · 2576 阅读 · 2 评论 -
hive SQL优化之distribute by和sort by
本文出自 “炽天使” 博客,请务必保留此出处http://3199782.blog.51cto.com/3189782/703873原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://3199782.blog.51cto.com/3189782/703873 最近在优化hiveSQL,下面是一段排序,分组转载 2012-02-07 17:37:12 · 10364 阅读 · 0 评论 -
开发hive UDF函数
1)首先创建一个java 项目,命名为HelloUDF,使用默认选项;2)在src目录上右键,选择创建package,命名为com.test.hive.udf;3)在package上右键,选择new class,如下图: 然后在点击Browse,如下图: 如果你还没有导入过hive的jar包,则需要自行导入: 右键点击jav原创 2011-11-17 11:58:30 · 12619 阅读 · 1 评论 -
hive配置远程metastore
hive配置远程metastore的方法: 1)首先配置hive使用本地mysql存储metastore(服务器A 111.121.21.23)(也可以使用远程mysql存储) 2)配置完成后,在服务器A启动服务:bin/hive --service metastore (默认监听端口是:9083) 3)配置hive客户端,修改hive-site.xml:(服务原创 2011-10-31 18:33:11 · 25369 阅读 · 2 评论 -
HQL遇上的问题
在使用hql时遇上了一个问题,执行以下语句时报错:SELECT sum(row_count),city,provinceFROM tmp_active2_group_type_ip_20110815 where province='四川省'GROUP BY city LIMIT 1000;错误信息为: FAILED: Error in semantic analysis:原创 2011-10-31 14:47:09 · 2289 阅读 · 1 评论 -
hive服务迁移
由于hive当前运行的服务器A需要添加其他业务,所以计划将hive服务迁移到另外一台服务器B上,执行操作: 1)在B服务器上安装mysql,server和client端,可以再mysql官方网站上下载。 2)在B服务器上的mysql中创建hive连接mysql的用户,创建数据库hive 3)在A服务器上运行命令:mysqldump hive >>hive_backup.sql,导原创 2011-10-31 14:29:38 · 2254 阅读 · 0 评论 -
hive函数 regexp_extract实践
在使用hive中函数regexp_extract需要注意的是正则表达式的\需要使用\进行转义,也就是说,需要使用\\两道斜线。 使用案例: 提取数字:select regexp_extract('4.2.3.','\\d',0) from error_20111101 limit 4; 提取版本信息:select regexp_extract('4原创 2011-11-02 16:08:26 · 29000 阅读 · 0 评论 -
hadoop mapred(hive)执行目录 文件权限问题
在配置其他linux用户使用hive 的cli客户端时,发现该用户没有对/tmp目录的写权限,于是将/tmp目录下权限设置为777:bin /hadoop fs -chmod -R 777 /tmp,然而第二天来时发现hadoop的文件rush任务失败,报错的日志信息如下:Job Submission failed with exception 'java.io.IOException(The原创 2011-10-31 14:36:07 · 26614 阅读 · 0 评论 -
hive union 的问题
在hive上执行查询:select count(*) from user_active_vv_20110801_31 where active_type_3>0UNION ALLselect count(*) from user_active_vv_20110801_31 where active_type_7>0union allselect count(*) from user_原创 2011-10-31 14:42:13 · 25314 阅读 · 1 评论 -
hive启动错误
hive部署完成后,运行bin/hive命令进入hive的客户端,执行show databases;时出错:hive> show databases;FAILED: Error in metadata: javax.jdo.JDOFatalInternalException: Unexpected exception caught.NestedThrowables:java.lang.r原创 2011-12-31 11:47:48 · 3434 阅读 · 0 评论 -
hive导出查询结果到本地文件
最近在使用hive时,需要将hive查询的数据导出到本地文件系统,HQL语法如下:INSERT OVERWRITE [LOCAL] DIRECTORY directory1 select_statement1 查询结果导出到本地文件后,试图使用excel加载时遇上了麻烦:不知道hive导出文件时使用的分隔符, 使用文本编辑器打开也显示乱码。 最后在官方文档上找了半天才发现,h原创 2011-10-31 14:41:21 · 55649 阅读 · 0 评论