1.0.2、服务启动
在搭建Hadoop的环节中,已经将Hadoop服务启动了,这里将Hive Metastore服务启动
hive --service metastore
1.0.2.1、服务端启动Debug模式
为了方便学习,大家可以在IDEA中打开Terminal,开启debug模式和metastore服务启动。
hive --debug
1.0.2.2、客户端断点模式
1.0.2.2.1、配置remote debug
在IDEA中配置Remote DeBug信息
1.0.2.2.2、断点
由于是在客户端进行源码追溯,所以一般会进入CliDriver类中,比如在main方法中打上断点,然后开始Debug
到这里,整个调试功能就已经实现了,大家可以在本地编写HSQL,然后根据断点深入学习Hive底层具体的执行流程,甚至自己改造源码!
下一章节:流程剖析
大致流程:
1、客户端连接到HS2(HiveServer2,目前大多数通过beeline形式连接,Hive Cli模式相对较重,且直接略过授权访问元数据),建立会话
2、提交sql,通过Driver进行编译、解析、优化逻辑计划,生成物理计划
3、对物理计划进行优化,并提交到执行引擎进行计算
4、返回结果
详细解读见下一章节 大数据技术架构(组件)——Hive:流程剖析1