Hive笔记

71 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第21天,点击查看活动详情


⭐️前面的话⭐️

✉️坚持和努力一定能换来诗与远方!
💭推荐书籍:📚《王道408》,📚《深入理解 Java 虚拟机-周志明》,📚《Java 核心技术卷》
💬算法刷题:✅力扣🌐牛客网
🎈Github
🎈码云Gitee


一、Hive概述

1 什么是 Hive

  • Hive 由 Facebook 开源用于解决海量结构化日志的数据统计。
  • Hive 是基于Hadoop的一个数据仓库系统工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。
  • 要点
    • 1)Hive处理的数据存储在HDFS
    • 2)Hive分析数据底层的实现是MapReduce
    • 3)执行程序运行在Yarn上

2 Hive 的优缺点

优点

  • 1)操作接口采用类 SQL 语法,提供快速开发的能力(简单,容易上手)。
  • 2)避免了去写 MapReduce,减少开发人员的学习成本。
  • 3)Hive的执行延迟比较高,因此Hive常用于数据分析,对实时性要求不高的场合。
  • 4)Hive优势在于处理大数据,对于处理小数据没有优势,因为Hive的执行延迟比较高。
  • 5)Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。

缺点

3 架构原理

4 和数据库比较

对比项HiveRDBMS
查询语言HQLSQL
数据存储HDFSRaw Device or Local FS
执行器MapreduceExecutor
数据插入支持批量导入和单条插入支持单条或者批量导入
数据操作覆盖追加行级更新删除
处理数据规模
执行延时
分区支持支持
索引0.8之后加入简单索引支持复杂索引
扩展性高(好)有限(查)
数据加载模式读时模式(快)写时模式(慢)
应用场景海量数据查询实时查询

5 数据

Hive安装

Hive 三种连接方式

CLI

进入到 bin 目录下,直接输入命令:

[hadoop@hadoop01 ~]$ hive

补充: 1.上面的 hive 命令相当于在启动的时候执行:hive --service cli
2.使用 hive --help,可以查看 hive 命令可以启动那些服务
3.通过 hive --service serviceName --help 可以查看某个具体命令的使用方式

参考