Hive
新东方毕业生
严于律己,宽以待人
展开
-
Hive的基本语法
DDL DDL:data-define-lauguage 数据定义语言 库操作 建库:create database if not exists dbname; 切换库 :use dbname; 查询正在使用的库:select current_database(); 查询库列表 查询所有数据库:show databases; 模糊查询:show databases like "*test"; 查...原创 2020-03-07 13:55:44 · 428 阅读 · 1 评论 -
Hive分区与分桶
分区 定义:分区表是指按照数据表的某一字段或多个字段分为多个区,每一个区都可以可以理解为一个文件夹 优点:在数据庞大的情况下创建分区表便于对数据进行管理,也可以提高查询的效率 使用:在生产上一般以日期作为分区的字段,每一天的数据即时一个分区,存储在一个单独的文件夹内 建表:Hive中创建分区表时可以使用partitioned by(col_name data_type 字段名与类型) 来指定分区表...原创 2020-03-06 16:52:38 · 147 阅读 · 0 评论 -
Hive的优化
hql会转换成MapReduce执行,所以应该从MapReduce的运行角度来优化性能,最要解决的问题是数据倾斜的问题。比如: 尽量不要使用count(distinct) ,因为此时map端没有去重的操作,可以用嵌套子查询来替代,子表是去重后的表 尽量使用MapJoin,在Map阶段把小表读入内存,扫描大表完成Join,就没有MapReduce的shuffle过程,也就不存在数据倾斜的问题 聚合...原创 2020-03-05 19:14:16 · 200 阅读 · 0 评论 -
Hive中的函数
函数分类 UDF user-define-function:用户定义函数 进一条出一条 UDAF user-define-aggregation-function:用户定义聚合函数 进多条出一条 如:max min avg sum count UDTF user-define-table-function:用户定义表函数 进一条出多条 如:explode函数 内置函数 在Hive2.3.2中...原创 2020-03-05 13:59:57 · 726 阅读 · 0 评论