1.(执行查询操作)Execute Query 命令行或Web UI之类的Hive接口将查询发送给Driver(任何数据库驱动程序,如JDBC、ODBC等)以执行。 2.(获取计划任务)Get Plan Driver借助查询编译器解析查询,检查语法和查询计划或查询需求 3.(获取元数据信息)Get Metadata 编译器将元数据请求发送到Metastore(任何数据库)。 4.(发送元数据)Send Metadata Metastore将元数据作为对编译器的响应发送出去。 5.(发送计划任务)Send Plan
编译器检查需求并将计划重新发送给Driver。到目前为止,查询的解析和编译已经完成 6.(执行计划任务)Execute Plan Driver将执行计划发送到执行引擎。 7.(执行Job任务)Execute Job 在内部,执行任务的过程是MapReduce Job。执行引擎将Job发送到ResourceManager, ResourceManager位于Name节点中,并将job分配给datanode中的NodeManager。在这里,查询执行MapReduce任务. 7.1.(元数据操作)Metadata Ops 在执行的同时,执行引擎可以使用Metastore执行元数据操作。 8.(拉取结果集)Fetch Result 执行引擎将从datanode上获取结果集;
9.(发送结果集至driver)Send Results 执行引擎将这些结果值发送给Driver。 10.(driver将result发送至interface)Send Results Driver将结果发送到Hive接口
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。