hive
文章平均质量分 64
基于实际项目中hive的应用来看其内存结构和原理,总结开发中的问题及处理方式
fly_sky333
在代码里摸爬滚打
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UDF函数开发中的坑
hive中udf函数遇到的问题和处理方式原创 2022-03-23 14:18:44 · 3096 阅读 · 0 评论 -
hive相关综合知识点汇总
一、视图:视图中保留有原表的元数据信息,但是不会保留数据,当我们查询视图的数据的时候,可以查到,但是当我们查询真正数据的时候,这是后才会去执行建立视图的时候的SQL语句。例如:表A为执行建立视图语句:create view A_view as select * from A where dt = 2020/6/13那么当我们执行descA_view的时候,会看到id,name这两列,当我们去执行select * fromA_view 的时候,才会真正去执行select * fromA ...原创 2020-06-14 17:25:01 · 222 阅读 · 0 评论 -
hivesql相关优化
1.需要做去重后count 的操作,尽量使用group by代替distinct,distinct 是去重,会将所有的key都放到一个reducer里面去做处理,所以如果数据量大,不合理。group by 是分组操作,会将不同的key去进行分组,然后进入多个reducer里面去执行,最后再count,所以效率会更高,且能达到去重的效果2.在条件允许的情况下尽量使用limit来限制查询的条数,如果是在服务器或者是web查询时,诗句量过大会直接导致heap不足而报错3.尽量减少一个表多次查询,小表放前,原创 2020-06-14 15:25:24 · 340 阅读 · 0 评论 -
hive中的数据倾斜及解决方案
一、原因:1.key的null和空值数量过多,这些都被分到一个reduce中去处理,导致某一个或几个reduce的任务要远大于平均值2.key的值分布不均匀,某一个或者多个key相同的数据量过大(有些情况是由业务本身的特性决定的)3.SQL语句不合理二、现象:在运行日志里面可以明显看出,任务执行进度一直维持在99%,由于某一个或几个reduce处理的数据量过大且资源无法平均,所以会大大拖慢查询速度。三、解决方法:1.开启预聚合MRhive.map.aggr = trueh原创 2020-06-14 14:24:08 · 551 阅读 · 0 评论 -
hive CLI、hwi、beeline、hiveserver、hiveserver2之间的关系
一、hiveserver和hiveserver2概述:这两个都是hive的一个服务,为了给外部的应用提供一个访问hive的通道。hiveserver2是hiveserver的一个升级版,由于hiveserver不能处理多于一个客户端的并发请求,并且无法通过修改hiveserver源码来实现,所以在0.11版本上,做了hiverserver2,更有利于开放API客户端,如JDBC更友好的支持二、hiveCLI概述:这个是客户端操作,直接在安装hive的节点上执行命令,bin/hive,hive -原创 2020-06-14 12:26:58 · 1987 阅读 · 0 评论 -
hive参数配置列表
注:该列表很多都用不到,如想查看作用,直接搜索即可。hive.exec.mode.local.auto=true决定 Hive 是否应该自动地根据输入文件大小,在本地运行(在GateWay运行)cal.auto.inputbytes.max=134217728L如果 hive.exec.mode.local.auto 为 true,当输入文件大小小于此阈值时可以自动在本地模式运行,默认是 128兆。hive.exec.mode.local.auto.tasks.max=4如果 hive.exe原创 2020-06-07 16:49:03 · 733 阅读 · 0 评论 -
hive相关知识简单介绍
一、hive概述hive基于Hadoop,本质就是MR,数据以结构化的方式存储在hdfs上,通过hive以表的形式来展示数据,通过hivesql来对数据进行查询分析二、原创 2020-06-07 16:56:51 · 458 阅读 · 0 评论
分享