1、Hive 有哪些方式保存元数据,各有哪些优缺点
(1).DerBy数据库:默认自带
优点:使用简单,不需要额外的配置。
缺点:只有一个客户端,多个客户访问会报错。
(2).使用MySql数据库存储
优点:单独的进程,可以在同一台机器上运行,也可以在远程机器上运行。
缺点:使用时需要配置,其中包括copy驱动包,执行初始化指令等。
2、Hive的HiveSQL转换为MapReduce的过程?
SQL Parser:Antlr定义SQL的语法规则,完成SQL词法,语法解析,将SQL转化为抽象 语法树AST Tree;
Semantic Analyzer:遍历AST Tree,抽象出查询的基本组成单元QueryBlock;
Logical plan:遍历QueryBlock,翻译为执行操作树OperatorTree;
Logical plan optimizer: 逻辑层优化器进行OperatorTree变换,合并不必要的ReduceSinkOperator,减少shuffle数据量;
Physical plan:遍历OperatorTree,翻译为MapReduce任务;
Logical plan optimizer:物理层优化器进行MapReduce任务的变换,生成最终的执行计划;
3、写出hive中split、coalesce及collect_list函数的用法?
split:字符串分割函数,格式为split(字符串,'分隔