赞
踩
HQL:不建议,因为Hive定位是数据仓库 ,主要应用是数据的分析,不是查询
SQL:支持,增删改查
为什么说hive是离线的,因为他的延迟高
UDF:就是一个一对一关系,一进一出。
如:
①字段的格式处理
②直接用于select语句,常见于大小写转换 。
③Hive自带的udf:如lower()
UDAF:多对一情况,常见于wordcount,group by 阶段
UDTF:一对多
json:{key:value,key1:value,…}需要进行数据解析
读时模式:
只有hive读取的时候才会检查,字段的解析和schema(数据结构的表达)
优点:加载数据非常迅速,在写得过程中不需要解析数据
写时模式:
优点:读取数据的时候得到优化
缺点:写得慢,写之前建立索引,数据压缩,数据的一致性,字段检查等等
对比传统关系型数据块:
hive和关系数据库存储文件的系统不同,hive使用的是hadoop的HDFS(hadoop的分布式文件系统),关系数据库则是服务器本地的文件系统
hive使用的计算模型mapreduce,而关系数据库则是自己设计的计算模型
①传统sql场景:实时查询的业务(粗粒度)设计 达到一定指标会查询的非常慢
②hive场景:进行数据挖掘,海量数据,实时性很差数据仓库涉及
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。