hive任务转换为mapreduce:
转换过程描述:
1、通过客户端或者UI界面执行HQL语句给Driver
2、Driver会为查询操作创建一个Session Handler,并将查询操作传递给Compiler去创建Execute Plan
3、Compiler根据任务去MetaStore查询hive元数据信息
4、Compiler得到元数据信息,对task进行编译,将HQL转换为抽象语法树,再将抽象语法树转换为查询块,
再转换为逻辑查询plan,再转换为物理执行plan(mapreduce),最后选择最佳策略
5、将最佳的plan转交给Driver
6、Driver将plan转交给Execute Engine去执行,将获取到的hive元数据提交到ResouceManager去执行task
7、获取执行的结果并返回给Driver,然后UI/Cli去Driver中获取到结果