Hive的服务端组件
1.Driver组件:该组件包括:Compiler、Optimizer、Executor,它可以将Hive编译、解析、优化转化为Map Reduce任务提交给Hadoop中的Source Manager来进行实际的执行相应的任务。
2.Meta Store组件:存储着hive的元数据信息,将自己的元数据存储到了关系型数据库中,支持的数据库主要有MySQL、Derby,支持把meta store独立出来放在远程的集群上面,使得hive更加健壮。元数据主要包括了表的名称、表的列、分区和属性、表的属性(是不是外部表等等 tblproperties)、表的数据所在的目录。
3.用户接口:CLI(Command Line Interface)命令行模式接口。
Client:hive的客户端用户连接至Hive Server,再启动Client的时候,需要指定Hive Server所在的节点,并且再该节点上启动Hive Server。
WUI:通过浏览器的方式访问Hive。
Hive工作原理
一、用户接口把HQL提交到Driver驱动。
二、Driver内部工作流程
1、获取Hive元数据信息。 编译器Compiler根据用户任务去Meta Store获取需要的Hive元数据信息;
2、生成抽象语法树AST