1.
什么是Hive?Hive的内部组成模块,作用分别是什么?
简答题 (50 分)
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能(HQL)
1.元数据:Metastore
元数据包括:表名、表所属的数据库(默认是default)、表的拥有者、列/分区字段、表的类型(是否是外部表)、表的数据所在目录等;
默认存储在自带的derby数据库中,推荐使用MySQL存储Metastore元数据存储
(1)解析器(SQLParser):解析HQL语义
(2)编译器(PhysicalPlan):将HQL根据语义转换成MR程序
(3)优化器(QueryOptimizer):对逻辑执行计划进行优化。(对MR程序进行优化)
(4)执行器(Execution):把任务提交到hadoop集群
2.
用一条SQL语句查询出 student表中每门功课都大于80分的学生姓名。
Name kecheng fenshu
张三 语文 81
张三 数学 75
李四 语文 76
李四 数学 90
王五 语文 81
王五 数学 100
王五 英语 90
简答题 (50 分)
SELECTName FROMstudent GROUPBYName HAVINGMIN(fenshu)>80;