体系结构
1、 Hive是建立在Hadoop HDFY上的数据仓库基础构架。
用HDFS存储数据,用MapReduce进行计算(查询分析)
2、 HSQL是Hive的查询语言,类似SQL。
Hive将HSQL解析成MapReduce的job,在Hadoop里执行
3、 Hive允许开发者自定义Map和Reduce来执行复杂的分析工作
4、Hive的表,就是HDFS的目录及目录下的文件。
目录名是表名,目录的下面文件是表的数据。
表的元信息存在关系数据库里:自带的derby或另外部署的Mysql。
创建表的物理实现过程如下:
Hive的metadata元信息
元信息包括:表名;列信息;目录位置;分区及其属性;表的属性(是否为外部表等);表的数据所在目录等。
详细参加下图:
Hive的元信息HSQL的执行过程
1、 解释器、编译器、优化器完成HQL查询语句,词法分析、语法分析、编译、优化器、以及查询计划Plan(类似java的.class文件)的生成。
2、 生成的查询计划,放在HDFS目录中,将在随后的Map/Reduce中被调用执行。、、
更信息的过程如下:
用explain plan for + select语句,可以查看该SQL的执行计划详情。
网友评论