Hive
曳落
数据策略,数据挖掘
展开
-
Hive 脚本执行
转自:https://blog.csdn.net/zz657114506/article/details/53576711 hive执行脚本 hive -e “sql语句” 会将查询的结果打印在控制台上。 hive -e “sql语句” >> xxx 会将查询的结果重定向到xxx文件中,会显示OK和抓取的数据条数 hive...转载 2018-08-01 11:09:22 · 1670 阅读 · 0 评论 -
执行sql时出现错误 extraneous input ';' expecting EOF near '<EOF>'
原文问题:调用jdbc执行hive sql时出现错误Error while compiling statement: FAILED: ParseException line 5:22 extraneous input ';' expecting EOF near '<EOF>'错误原因是因为sql语句中多了分号 执行脚本时需要在sql后面添加分号但是调用jdbc...转载 2018-10-15 11:04:15 · 45230 阅读 · 2 评论 -
【转】【HDFS】hive任务报HDFS异常:last block does not have enough number of replicas
HIVE运行查询脚本时报错,last block does not have enough number of replicas: 1 2018-10-15 2018-07-17 2 2018-10-15 10:00:01 3 Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512M; s...转载 2018-10-15 11:48:39 · 9260 阅读 · 3 评论 -
HQL FAILED: ParseException line 13:4 missing KW_END at ‘,’ near ‘‘
hive查询报错:FAILED: ParseException line 13:4 missing KW_END at ',' near '<EOF>'原因:case when then else end;少写了end原创 2018-10-18 14:14:29 · 9645 阅读 · 0 评论 -
hive导出查询结果到本地文件
hive -e "select * from test" >> res.csv或者:hive -f sql.hql >> res.csv其中文件sql.hql内容为查询语句原创 2018-10-18 17:04:56 · 2843 阅读 · 0 评论 -
Hive 时间日期处理总结
获取当前时间截:select unix_timestamp();//结果1539595903获取当前时间1:select current_timestamp();//结果2018-10-15 17:34:09.721获取当前时间2:select from_unixtime(unix_timestamp());//结果2018-10-15 17:36:13...转载 2018-10-15 17:47:41 · 442 阅读 · 0 评论 -
提升hive效率的最佳实践
表相关存储格式:避免使用text,JSON,有可能的haul也应避免sequence文件;理想的格式是RCFile (Row Columnar File)压缩:block compression 比 value compression更高效,最终结果及中间结果都应压缩,set hive.exec.compress.output=true;set hive.exec.comp...原创 2018-10-15 19:52:35 · 745 阅读 · 0 评论 -
hive执行报错:Both left and right aliases encountered in JOIN 's1'
原因:两个表join的时候,不支持两个表的字段 非相等 操作。可以把不相等条件拿到 where语句中。例如:right JOIN test.dim_month_date p2 on p1.month=p2.y...转载 2018-10-26 09:47:54 · 1133 阅读 · 0 评论 -
【转】基于Hadoop的数据仓库Hive 基础知识
基于Hadoop的数据仓库Hive 基础知识 - miao君的文章 - 知乎 https://zhuanlan.zhihu.com/p/25608332Hive是基于Hadoop的数据仓库工具,可对存储在HDFS上的文件中的数据集进行数据整理、特殊查询和分析处理,提供了类似于SQL语言的查询语言–HiveQL,可通过HQL语句实现简单的MR统计,Hive将HQL语句转换成MR任务进行执行。...转载 2018-10-27 10:04:02 · 303 阅读 · 0 评论 -
HQL子查询别名问题
HQL子查询别名问题 HQL的书写,select * from (select * from table_name) ; 执行此HQL,应该会报错:FAILED: ParseException line 3:52 cannot recognize input near '<EOF>' '<EOF>' '<EOF>' in subquery...原创 2018-10-12 15:18:00 · 1679 阅读 · 0 评论 -
hive中的字符串函数
原始数据hive> select * from Tri100;1 rahul Hyderabad 30000 400002 Mohit Banglore 22000 250003 Rohan Banglore 33000 400004 Ajay Ba...原创 2018-09-14 18:07:57 · 395 阅读 · 0 评论 -
hive中将string数据转为bigint
使用 CAST 函数将 STRING 转为 BIGINT:SELECT CAST('00321' AS BIGINT) FROM table;As a BIGINT it will show on the screen and in delimited text files as 321.参考:Hive - Converting a string to bigint...原创 2018-09-19 23:38:43 · 48072 阅读 · 0 评论 -
hive 中控制符作为分隔符
hive 默认的字段分隔符为ascii码的控制符\001,建表的时候用fields terminated by '\001',如果要测试的话,造数据在vi 打开文件里面,用ctrl+v然后再ctrl+a可以输入这个控制符\001。按顺序,\002的输入方式为ctrl+v,ctrl+b。以此类推。控制符在java代码中如何输入呢?采用如下方式: byte[] bytes = new byt...转载 2018-08-01 13:58:18 · 548 阅读 · 0 评论 -
【转】Hive的严格模式
在hive里面可以通过严格模式防止用户执行那些可能产生意想不到的不好的效果的查询,从而保护hive的集群。用户可以通过 set hive.mapred.mode=strict 来设置严格模式,改成unstrict则为飞严格模式。 在严格模式下,用户在运行如下query的时候会报错。1. 分区表的查询没有使用分区字段来限制。select * from strategy.log whe...转载 2018-08-16 23:08:29 · 391 阅读 · 0 评论 -
【转】hive分区(partition)简介
一、背景1、在Hive Select查询中一般会扫描整个表内容,会消耗很多时间做没必要的工作。有时候只需要扫描表中关心的一部分数据,因此建表时引入了partition概念。2、分区表指的是在创建表时指定的partition的分区空间。3、如果需要创建有分区的表,需要在create表的时候调用可选参数partitioned by,详见表创建的语法结构。二、技术细节1、一个表可以拥...转载 2018-08-16 23:10:12 · 320 阅读 · 0 评论 -
hive报错 ParseException line 10:7 missing EOF at 'by' near 'group'
HIVE查询:SELECT order_cnt, COUNT(user_id), COUNT(DISTINCT user_id)FROM ( SELECT * FROM daojia_ml.sy_codesubsidy_discount_info WHERE dt = '2018-09-03')GROUP BY order_cnt;报错:FAILED: Par...原创 2018-09-04 23:07:08 · 16912 阅读 · 0 评论 -
Hive查询结果输出到文件
进入hive执行:insert overwrite local directory '/tmp/ftp0803/' select * from tmp_ftp where userno='XX' order by starttime; 在/tmp/ftp0803/目录下看到文件。 或者直接执行:hive -e 'select f28 from tmp_fjs_dba' >...转载 2018-09-04 23:11:14 · 9448 阅读 · 0 评论 -
hive导入数据到表
转自:hive数据操作(翻译自Hive wiki+实例讲解)hive有两种数据修改方式从文件加载到hive表加载数据到表时,hive不会做任何转换。加载操作是纯粹的复制/移动操作,移动数据文件到相应的hive表。语法LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (...转载 2018-09-14 14:39:01 · 482 阅读 · 0 评论 -
Hive解析字段为Json的数据
HIVE直接读入json的函数有两个:(1)get_json_object(string json_string, string path)返回值: string说明:解析json的字符串json_string,返回path指定的内容。如果输入的json字符串无效,那么返回NULL。举例:hive> select get_json_object(‘{“store”:{“...转载 2018-09-19 22:38:29 · 3662 阅读 · 0 评论 -
Hive的hql命令的三种执行方式
Hive的hql命令的三种执行方式:1、CLI 方式直接执行 shell 中键入hive,即可启动hive的cli交互模式2、作为字符串通过shell调用hive –e执行(-S开启静默,去掉”OK”,”Time taken”) hql作为字符串在shell脚本中执行,如 hive -e "use ${database};select * from tb" ...原创 2018-09-19 23:35:06 · 4332 阅读 · 0 评论