Hive----查询执行计划(explain)和分析表数据(ANALYZE)

explain ----------------- 该命令可以返回hive的查询执行计划。不需要执行查询。 查询计划包含三个部分, 1.AST Abstract syntax tree (AST).抽象语法树。通过ANTLR类库生成。 2.Stage dependencies: 阶段...

2017-08-23 00:11:11

阅读数 3426

评论数 0

Hive优化-倾斜连接-分组倾斜

[倾斜连接] SET hive.optimize.skewjoin=true; //默认false //发送给reducer的key的上限 SET hive.skewjoin.key=100000; // //是否对分组进行倾斜优化 SET hive.groupby.skewinda...

2017-08-23 00:05:14

阅读数 158

评论数 0

Hive优化---map端连接

[连接优化] //是否自动转换map端连接 SET hive.auto.convert.join=true; //默认false //输入小文件的文件上限 SET hive.mapjoin.smalltable.filesize=600000000; //默认是25M SET hiv...

2017-08-22 20:12:15

阅读数 172

评论数 0

Hive优化--并行执行

[并行执行] 只要job间不存在依赖关系。 SET hive.exec.parallel=true; //默认false //最多允许多少job并行执行 SET hive.exec.parallel.thread.number=16; //默认8

2017-08-22 20:08:26

阅读数 534

评论数 0

Hive优化---启用local模式

[查询优化] //是否启用local模式 SET hive.exec.mode.local.auto=true; //默认false //输入的数据量max配置 SET hive.exec.mode.local.auto.inputbytes.max=50000000;        ...

2017-08-22 20:07:04

阅读数 822

评论数 0

Hive优化--存储优化、文件合并

[存储优化] 热点数据可以适当增加副本,可以尽可能多的使用本地策略。 hdfs dfs -setrep -R -w 4 /user/hive/warehouse/employee hadoop大量小文件: 1.har 2.sequenceFile 3.CombineFileInpu...

2017-08-22 20:05:12

阅读数 164

评论数 0

hive优化-压缩处理

[压缩] 1.设置mr中间的压缩处理 //设置中间结果是否可压缩,多次job的中间结果是否压缩处理。 SET hive.exec.compress.intermediate=true //设置结果压缩编解码器 SET hive.intermediate.compression.codec...

2017-08-22 20:00:44

阅读数 147

评论数 0

hive优化-文件格式-rcfile-textfile-seqfile

[数据文件] 1.文件格式,hive支持TEXTFILE, SEQUENCEFILE, RCFILE, ORC, and PARQUET. 修改文件格式: //创建表 CREATE TABLE… STORED AS //修改表指定格式 ALTER TABLE… [PARTITION ...

2017-08-22 19:58:23

阅读数 309

评论数 0

Hive优化1---分区、桶、index

1、分区表:分区是目录。 ------------------ //创建分区表 CREATE TABLE custs ( id int, name string , age int ) PARTITIONED BY (prov string, city string) ROW ...

2017-08-22 19:55:48

阅读数 118

评论数 0

Hive的分析函数操作

分析函数 -------------- 0.11之后支持的,扫描多个输入的行计算每行的结果。通常和OVER, PARTITION BY, ORDER BY,windowing 配合使用。和传统分组结果不一样,传统结果没组中只有一个结果(max)。 分析函数的结果会出现多次,和每条记录都...

2017-08-22 00:08:29

阅读数 173

评论数 0

Hive的常用函数操作

//函数 ................................... //size()提取数据大小 $hive>select size(arr) from emp ; //是否包含指定元素 $hive>select array_contains(arr,&qu...

2017-08-22 00:03:09

阅读数 138

评论数 0

Hive的高级聚合函数

高级聚合 --------------- GROUPING SETS. group by + union all  //查询每个cust的订单数 select count(*) from orders group by cid ; select count(*) from ord...

2017-08-22 00:00:36

阅读数 837

评论数 0

Hive的聚合函数

数据聚合与采样 -------------- count() sum() avg() max() min() //查询每个customer的订单数 select cid,count(*) from orders group by cid ; //错,select字段必须出...

2017-08-21 22:30:55

阅读数 1001

评论数 0

Hive的行级acid事务处理

//事务,hive 0.13.0之后完全支持行级acid事务处理。 //所有事务都是自动提交,并且存储文件只能是orc文件,而且只能在桶表中使用。 1.设置相关属性 SET hive.support.concurrency = true; SET hive.enforce.bucketin...

2017-08-21 22:27:20

阅读数 1057

评论数 0

Hive的连接操作

连接 --------------- //创建orders表。 CREATE TABLE orders ( id int, orderno string , price float, cid int ) ROW FORMAT DELIMITED FIELDS TERMINAT...

2017-08-21 21:36:49

阅读数 104

评论数 0

Hive桶表的操作

桶表:桶表是文件。 -------------- //创建桶表 CREATE TABLE buck ( id int, name string , age int ) CLUSTERED BY (id) INTO 3 BUCKETS ROW FORMAT DELIMITED ...

2017-08-21 21:35:10

阅读数 126

评论数 0

Hive中分区表的操作

分区表:分区是目录。 ------------------ //创建分区表 CREATE TABLE custs ( id int, name string , age int ) PARTITIONED BY (prov string, city string) ROW FO...

2017-08-21 21:33:29

阅读数 139

评论数 0

Hive的Map端连接方法

如果有一个连接表小到可以放入内存,Hive就可以把较小的表放入每个Mapper的内存执行连接操作。 有如下两种方法实现:        1、//连接暗示/*+ MAPJOIN(employee) */ SELECT /*+ MAPJOIN(employee) */ c.* FROM cust...

2017-08-21 21:31:11

阅读数 322

评论数 0

hive实战---动态分区

动态分区的含义: 当一个分区表创建之后,其分区的值是可以动态修改的(先创建分区值,再插入数据;或者是在插入数据的时候指定一个新的分区值),这两种方式都是需要手动的去指定分区值。   当分区变的非常多的时候(比如气象站的气温记录数据,根据年份分区之后,还有根据月份分区,下面可能还有根据日期分区...

2017-07-26 16:54:48

阅读数 246

评论数 0

大数据分析整体技术流程及架构

本文对项目中所用到的大数据分析整体流程技术及其架构进行简要的总结,以供大家在大数据分析平台对数据处理流程更加明确 1.1 数据处理流程 该项目是一个纯粹的数据分析项目,其整体流程基本上就是依据数据的处理流程进行,依此有以下几个大的步骤: 1) 数据采集 首先,通过页面嵌入JS代码的方式获取...

2017-07-21 21:44:16

阅读数 11181

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭