上海十大网站建,如何做一名合格的网站人,正规招聘网站有哪些,普宁做网站Hive基础概念 1.1 Hive是什么#xff1f;
基于Hadoop的数据仓库工具#xff0c;支持类SQL#xff08;HiveQL#xff09;查询#xff0c;底层转换为MapReduce/Tez/Spark任务。
核心功能#xff1a;数据ETL、查询、分析#xff1b;定位#xff1a;OLAP#xff08;分析…Hive基础概念 1.1 Hive是什么
基于Hadoop的数据仓库工具支持类SQLHiveQL查询底层转换为MapReduce/Tez/Spark任务。
核心功能数据ETL、查询、分析定位OLAP分析型非OLTP事务型。
1.2 Hive与传统数据库的区别
特性 Hive 传统数据库 (如MySQL) 数据规模 PB级 GB/TB级 延迟 高分钟级 低毫秒级 事务支持 有限Hive 0.14支持ACID 完善 存储 HDFS 本地磁盘 2. Hive架构与核心组件 2.1 元数据存储Metastore
存储表结构、分区、数据位置等信息生产环境常用MySQL。 模式内嵌模式、本地模式、远程模式推荐。
2.2 HQL执行流程
HQL → 解析器 → 编译器 → 优化器 → 执行引擎 → 结果。 3. Hive数据模型 3.1 内部表 vs 外部表
内部表数据由Hive管理删除表时数据连带删除。
外部表仅删除元数据数据保留在HDFS。
3.2 分区与分桶
– 分区表示例 CREATE TABLE logs (msg STRING) PARTITIONED BY (dt STRING);
– 分桶表示例 CREATE TABLE user_bucketed (id INT) CLUSTERED BY (id) INTO 4 BUCKETS;
| 维度 | 分区 | 分桶
|适用场景|按日期/地区过滤|JOIN优化、数据倾斜处理
Hive优化技巧 4.1 存储优化
使用列式存储ORC/Parquet和压缩Snappy。
合并小文件 SET hive.merge.mapfilestrue; 4.2 数据倾斜处理
对倾斜Key添加随机前缀
SELECT user_id, COUNT(*) FROM logs GROUP BY user_id CAST(RAND() * 10 AS INT); 5. Hive高级特性 5.1 Hive事务 仅支持分桶表ORC格式 CREATE TABLE txn_table (…) STORED AS ORC TBLPROPERTIES (‘transactional’‘true’); 5.2 Hive on Spark
优势内存计算、DAG优化比MapReduce快10倍以上。 6. 常见面试问题 6.1 如何调优Hive查询
分区/分桶、ORC格式、MapJoin、压缩数据。
6.2 Hive与HBase整合
通过Hive-HBase Handler映射表支持双向查询。
场景应用题 问题如何设计每日用户日志分析 方案
按日期分区PARTITIONED BY (dt STRING)
使用ORCSnappy压缩。
对高频用户分桶处理数据倾斜。