一、填空题
1、数据仓库是面向 主题的 、集成的 、 非易失的 和时变的数据集合,用于支持管理决策。
2、Hive默认元数据存储在 Derby数据库 数据库中。
3、Hive建表时设置分割字符命令 row format delimited fields terminated by char 。
4、Hive查询语句select ceil(2.34)输出内容是 3 。
5、Hive创建桶表关键字 clustered by ,且Hive默认分桶数量是 -1 。
二、判断题
1、Hive使用length()函数可以求出输出的数量。(×)
2、再创建外部表的同时要加载数据文件,数据文件会移动到数据仓库指定的目录下。(×)
3、Hive是一款独立的数据仓库工具,因此在启动前无需启动任何服务。(×)
4、Hive默认不支持动态分区功能,需要手动设置动态分区参数开启功能。(√)
5、Hive分区字段不能与已存在字段重复,且分区字段是一个虚拟的字段,它不存放任何数据,该数据来源于装载分区表时所指定的数据文。(√)
三、选择题
1、Hive是建立在( C )之上的一个数据仓库
A、HDFS
B、MapReduce
C、Hadoop
D、HBase
2、Hive查询语言和SQL的一个不同之处在于( C )操作
A、Group by
B、Join
C、Partition
D、Union
3、Hive最重视的性能是可测量性、延展性、( B )和对于输入格式的宽松匹配性
A、较低恢复性
B、容错性
C、快速查询
D、可处理大量数据
4、以下选项中,哪种类型间的转换是被Hive查询语言所支持的( D )
A、Double—Number
B、BigInt—Double
C、Int—BigInt
D、String--Double
5、按粒度大小的顺序,Hive数据被分为:数据库、数据表、( C )、桶?
A、元祖
B、栏
C、分区
D、行
四、简答题
1、简述Hive的特点是什么。
答:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
2、简述Hive中内部表与外部表区别。
答:创建表阶段:
外部表创建表的时候,不会移动数到数据仓库目录中(/user/hive/warehouse),只会记录表数据存放的路径,内部表会把数据复制或剪切到表的目录下。
删除表阶段:
外部表在删除表的时候只会删除表的元数据信息不会删除表数据,内部表删除时会将元数据信息和表数据同时删除
五、编程题
1、创建字段为id、name的用户表,并且以性别gender为分区字段的分区表。
答:create table t_user (id int, name string)
partitioned by (gender string)
row format delimited fields terminated by ',';