博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hive0.13 cli启动缓慢问题
阅读量:6079 次
发布时间:2019-06-20

本文共 732 字,大约阅读时间需要 2 分钟。

  hive由0.11升级至0.13之后,cli的启动时间由5s增加为10s,影响了部分etl job的运行时间,经过debug,发现时间主要消耗在下面3个地方:
1. hadoop jar的时候要把相关的jar包上传到hdfs中(这里大概消耗5s,hive0.11一样,这个地方不太好优化)
2. 在每次hive cli启动的时候,初始化HiveMetaStore时,在init时,会调用下面3个方法,创建default db,role ,admin。

具体代码:

1
2
3
4
5
synchronized 
(HMSHandler.
class
) {
  
createDefaultDB();
  
createDefaultRoles();
  
addAdminUsers();
}

生成环境这些都是有的,不需要每次都创建,这里可以直接注释掉.
3. 还有5s是在加载.hiverc的文件时造成的。
在做Create function的analyze时,会通过FunctionSemanticAnalyzer类的addEntities方法操作元数据。在hive0.11中是没有这个方法的。

关于这个方法,看说明是和function的权限有关系的,我们目前不需要。
Add write entities to the semantic analyzer to restrict function creation to priviliged users.

在测试环境直接注释掉没有发现什么影响。

具体实现放在后面分析。

本文转自菜菜光 51CTO博客,原文链接:http://blog.51cto.com/caiguangguang/1541746,如需转载请自行联系原作者

你可能感兴趣的文章
epoll的lt和et模式的实验
查看>>
Flux OOM实例
查看>>
07-k8s-dns
查看>>
Android 中 ListView 分页加载数据
查看>>
oracle启动报错:ORA-00845: MEMORY_TARGET not supported on this system
查看>>
Go方法
查看>>
Dapper丶DapperExtention,以及AbpDapper之间的关系,
查看>>
搞IT的同学们,你们在哪个等级__那些年发过的帖子
查看>>
且谈语音搜索
查看>>
MySQL数据库导入导出常用命令
查看>>
低版本Samba无法挂载
查看>>
Telegraf+Influxdb+Grafana构建监控平台
查看>>
使用excel 展现数据库内容
查看>>
C#方法拓展
查看>>
MySql.Data.dll的版本
查看>>
Linux系统磁盘管理
查看>>
hdu 2191 (多重背包+二进制优化)
查看>>
home.php
查看>>
neo4j---删除关系和节点
查看>>
redis分布式锁redisson
查看>>