Hive

转载 2016年04月28日 16:02:33

Hive数据仓库 可以将sql变成mapreduce任务
HIVE:HQL和MySQL语句相差不多

2.Hive中数据库的概念本质上仅仅是表的一个目录或者命名空间。如果用户没有显式指定数据库,就会默认使用默认库default。
3.默认创建的是托管表,在load时不检查数据是否符合格式,因为load是移动操作,将数据从原来的地方移动到了hive的warehouse下,只有查询时才会知道
4.将日志文件以时间戳进行分区,可以提高查询效率。关键字是partitioned by
5.将表或者分区放入桶时,将获得更好的查询效率,同时取样更方便,关键字是CLUSTERED BY(userid) [SORTED BY(viewTime)] INTO 32 BUCKETS,使用了hash,建议使用hive来进行划分桶的操作。
6.location指定的是hive中的表存储的文件夹的路径,而使用默认路径的话,则在/user/hive/warehouse下创建表名对应的文件夹,truncate table可以删除内部表的数据,但不会删除表即不会删除hdfs上的文件夹
7.外部表不可以使用truncate table删除表的数据,使用drop table 时不会将location下的文件删除
8.load导入数据本质上是移动数据,即hdfs上数据的位置发生了改变。
9.hive 中的表在mysql中的位置是hive–>TBLS,字段在COLUMNS_V2表中,SDS保存着表在hdfs中的位置

命令位置:
/letv/data/apache-hive-0.13.1-bin/bin

查看所有的数据库:
hive> show databases ;
查看当前有DB有啥表:hive> SHOW TABLES IN DbName;
查看表信息:desc sys_user_info
删除表数据:truncate table nglog_analyze;

创建表
hive>create table wyp (id int, name string, age int, tel string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’ LINES TERMINATED BY ‘\n’ STORED AS TEXTFILE;

FIELDS TERMINATED BY ‘\t’:表示字段之间用tab分割,
LINES TERMINATED BY ‘\n’:表示行之间用回车分割
STORED AS TEXTFILE:表示储存为txt格式


加载的数据必须严格按照这个格式,否则就是null

**

而且数据本身之间的空格如果有其他分隔符存在是无需在字段分割中体现的,否则就会出现数据全都在,但在每一行数据之后都会存在null字段,而且null字段的数量比数据字段数少一个,而如果字段之间仅仅以空格分隔,则创建表时必须使用’ ‘来分隔,而不能使用’\0’。

hive 导入数据出错,可以使用 select * from nglog_analyze1 limit 10; 和原始数据对比

**


加载数据

hive>LOAD DATA LOCAL INPATH '/root/id' INTO TABLE t1; // 从本地文件加载
hive>LOAD DATA INPATH '/root/id' INTO TABLE t1; // 从HDFS中加载

从其他hive表导入,只需要创建字段即可,不用分割之类的东西

insert into table  nglog_analyze2 select remote_addr,http_marketChannelName,http_x_forwarded_for,upstream_addr from  nglog_analyze3;

查看表信息

desc formatted ChannelSort;

参考:
hive教程:
http://blog.csdn.net/lifuxiangcaohui/article/details/40588929
http://blog.csdn.net/lifuxiangcaohui/article/details/40615843
http://blog.csdn.net/hguisu/article/details/7256833
http://my.oschina.net/yangzhiyuan/blog/228362
http://www.cnblogs.com/edisonchou/p/4426096.html
http://jingyan.baidu.com/album/624e7459b705f734e8ba5a1d.html

hive优化
http://itindex.net/detail/53011-hive-%E6%80%A7%E8%83%BD-%E4%BC%98%E5%8C%96
hive、hbase、pig的关系
http://www.linuxidc.com/Linux/2014-03/98978.htm
Hive点滴 – 数据类型
http://debugo.com/hive-datatype/
http://www.bkjia.com/yjs/1049153.html
类型转换:
http://www.iteblog.com/archives/892
函数:
http://dataguild.org/?p=6381
http://blog.csdn.net/skywalker_only/article/details/38752003
http://my.oschina.net/repine/blog/193867
http://blog.csdn.net/yhao2014/article/details/46312469
hive分析
http://life.leanote.com/post/c2242f5a500e
https://www.zybuluo.com/aitanjupt/note/209968

动态分区
http://blog.csdn.net/jiedushi/article/details/7356015

小技巧
http://www.iteblog.com/archives/831
http://sjq597.github.io/2015/11/11/Hive-SemanticException-Error-10025-Line-1-7-Expression-not-in-GROUP-BY-key/
where 陷进
http://blog.csdn.net/mashroomxl/article/details/22223777

hive 搭建
http://www.jianshu.com/p/763d5c665a23

关于Hive中的复杂数据类型Array,Map,Structs的一些使用案例

写在前边的话:         同样是在做豆瓣电影数据分析的小课题的时候遇到的一个问题:hive表中的电影类型存储格式为array,那么我如何针对每一个类型做统计呢?         本来是想在基于豆...
  • Gamer_gyt
  • Gamer_gyt
  • 2016年08月10日 13:39
  • 11197

Hive 实现 IN 和 NOT IN 子句

在hive中通过left join来实现 sql中in或not in 中包含查询子句的语法。
  • yzhhughyzh
  • yzhhughyzh
  • 2015年05月09日 20:22
  • 3429

hive 空值、NULL判断

hive空值、NULL判断以及存储
  • jyl1798
  • jyl1798
  • 2014年12月11日 19:34
  • 24398

hive数据类型及其数据转换

由于需要使用hive sql进行数据查询,同时涉及多个不同类型的字段的组合,看Hive sql的文档相关和资料才知道,hive是支持大部分基础数据类型之间的相互转换的。 那么,hive本身支持哪些数据...
  • zbc1090549839
  • zbc1090549839
  • 2016年04月08日 21:39
  • 17851

Hive日志分析案例(一)

例如: 在实际的项目中,需要分析网站服务器的日志文件数据 需求: 统计每日六项指标 浏览量PV、访客数UV、IP数、跳出率、平均访问时长、转化次...
  • haoyuexihuai
  • haoyuexihuai
  • 2016年12月03日 21:46
  • 1394

Hive 没有 not in 解决方案

hive 里面没有 not in ,where 查询时候可以 使用LEFT OUTER JOIN dpods_wfa_processhistory 表结构 需要查询 param不为 ‘协议被...
  • mccand1234
  • mccand1234
  • 2016年06月13日 20:06
  • 2808

hive转置

wmj
  • star20081745
  • star20081745
  • 2015年08月21日 08:14
  • 1346

hive应用实例1

现在我们在hive上新建一张wordcount的数据表:
  • wangmuming
  • wangmuming
  • 2014年05月07日 16:49
  • 6780

Hive 0.13 数据类型

hive支持的数据类型路下 数值类型 Numeric Types TINYINT (1字节,数据范围: -128 to 127) SMALLINT (2字节,数据范围: -32,768 to 32,7...
  • wind520
  • wind520
  • 2014年09月11日 19:55
  • 12031

hive创建分区表

hive创建分区表
  • high2011
  • high2011
  • 2016年09月18日 13:45
  • 7889
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hive
举报原因:
原因补充:

(最多只允许输入30个字)