Hive第一篇详细介绍(小白也看得懂_入门级别)

什么是HIVE

​ Hive是一个语句Hadoop的一个数据仓库工具,是将结构化数据文件映射成为一个数据表,并提供类SQL的查询功能。

Hive可以对数据进行存储于计算

​ 数据存储依赖于HDFS

​ 数据计算依赖于MapReduce

Hive意义(目的)

​ 在hadoop是个好软件,但是不好使用(学习成本太高,坡度陡,难度大)的前提下

​ 降低了程序员使用hadoop的学习成本,降低了难度。

Hive特点

​ 可扩展性:与集群的扩展性相同

​ 延展性:Hive提供自定义函数接口,支持HQL语句直接调用java方法

​ 容错性:节点出现问题SQL仍可完成执行。

Hive架构图

在这里插入图片描述

元数据

描述数据的数据就是元数据

​ 表的名字,

​ 表的列

​ 列的类型

Hive内部执行过程

解释器 -> 编译器(会使用到元数据) -> 优化器 -> 执行器

Hive基本介绍

​ Hive中没有定义专门的数据格式,用户提供的数据是什么格式,hive直接将数据拷贝到集群。不会对数据格式进行改变。

​ 用户定义数据格式需要指定三个属性:

​ 列分隔符(通常为空格、”\t”、”\x001″)、

​ 行分隔符(”\n”)

​ 读取文件数据的方法(Hive 中默认有三个文件格式 TextFile,SequenceFile 以及 RCFile)

​ 不会对数据本身进行任何修改,甚至不会对数据进行扫描。

​ Hive 中不支持对数据的改写和添加(在 一个文本中添加新数据)

​ Hive 在加载数据的过程中不会对数据中的某些 Key 建立索引。

总结:hive具有sql数据库的外表,但应用场景完全不同,hive**只适合用来做批量数据统计分析

Hive内的基本概念

​ DB、数据库

​ Table, 表(内部表)

​ External Table, 外部表

​ Partition,分区

​ Bucket。分桶

Hive支持的数据格式

​ 可支持Text, SequenceFile ,ParquetFile,ORC格式RCFILE等

发布了26 篇原创文章 · 获赞 13 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44466534/article/details/103158394
今日推荐