hive的架构
Hive接收到用户的指令(HQL)以后,使用自己的Driver和元数据(Meta Store),将这些HQL解析为MapReduce,提交到Hadoop中执行,执行结束后将结果返回到用户交互接口。
1.Client
Hive的用户接口层,CLI即Shell命令行,CLI最常用。
2.Meta store
Hive将元数据存储在数据库中,连接到这些数据库(mysql,derby)的模式分三种:单用户模式,多用户模式,远程服务器模式。
元数据包括Database,表名,表的列及类型,存储空间,分区,表数据所在目录等。
3.Driver
完成HQL的查询语句的词法分析,语法分析,编译,优化以及查询计划的生成。生成的查询计划存储在HDFS中,并由MapReduce调用执行。
4.Hive的数据存储在HDFS中,针对大部分的HQL查询请求,Hive内部自动转换为MapReduce任务执行。