1. Hive 有哪些方式保存元数据,各有哪些特点。
自身带的一个数据库derby
也可以将原数据库设置为MYSQL
2. Hive内部表和外部表的区别
1、在导入数据到外部表,数据并没有移动到自己的数据仓库目录下,也就是说外部表中的数据并不是由它自己来管理的,而是由!而内部表是由hive本身管理的;
2、在删除表的时候,Hive将会把属于表的元数据和数据全部删掉;而删除外部表的时候,Hive仅仅删除外部表的元数据,数据是不会删除的!
3.hql是怎么转换成MapReduce的
4.hive如何调优
1.join优化,尽量将小表放在join的左边,如果一个表很小可以采用mapjoin;
2.排序优化,order by 一个reduce效率低,distirbute by +sort by 也可以实现全局排序;
3.使用分区,查询时可减少数据的检索,从而节省时间。
hive最终都会转化为mapreduce的job来运行,要想hive调优,实际上就是mapreduce调优,可以有下面几个方面的调优:解决收据倾斜问题,减少job数量,设置合理的map和reduce个数,对小文件进行合并,优化时把我整体,单个task最优不如整体最优