Hive节点及原理
1、什么是Hive:hive是一种基于hadoop的数据仓库,能够将结构化的数据映射成一张表,并提供HQL进行查询。其数据是存储在hdfs上,本质是将sql命令转化成MapReduce来执行。
2、Hive节点:用户接口,跨语言服务,元数据库,driver驱动
用户接口:用户接口分为三种,第一种是cli,利用shell命令行操作;第二种是jdbc/odbc,使用sql进行操作;第三种是webui,在浏览器上访问hive。
跨语言服务:一种软件框架,能让不同的语言调用hive的接口。
元数据:存储hive数据的描述信息,例如:表名称和属性,表列和分区属性,表数据所在目录。这里的表属性一般指的是表是内部表还是外部表。
3、Hive数据组织:
database数据库
table表
external table外部表
patition分区
bucket分桶
4、Hive内部表和外部表区别:主要分为两方面,数据加载load、删除表drop
数据加载:创建内部表时,会将数据移动到hive指向的路径,并且由hive来管理数据的生命周期。
创建外部表时,只是记录数据所在的路径,不对数据位置做改变。
删除表:删除内部表,数据和元数据会一起删除掉
删除外部表,只是删除元数据,数据不会删除
如何选择内部表还是外部表:
a、所有数据都由hive管理,就创建内部表;数据由hive和其他工具一起管理,就创建外部表。
b、管理表不方便获取数据的权限,数据由其他工具管理,选用外部表。
5、Hive和传统数据库的区别
(1)表数据验证:传统数据库是写模式,hive是读模式。传统数据库在写入数据的时候就去检查数据格式,hive在读取数据的时候检查。因此,写时模式,查询快,读时模式数据加载快。
(2)hive不支持实时处理,并且对索引支持较弱。
(3)hive不支持行级插入和事务。
(4)hive数据结构复杂,例如:数组、映射、结构体。
https://www.cnblogs.com/frankdeng/p/9381934.html
最新文章
- org.springframework.beans.MutablePropertyValues.add
- RCA:未注意Curl-library Post 1024以上字节时的HTTP/1.1特性导致 HessianPHP 传输数据失败
- dfs常见的配置文件中的value与description
- @media screen解决移动web开发的多分辨率问题
- ConnectifyHotspotInstaller3.7注册码
- 频繁模式挖掘apriori算法介绍及Java实现
- Python之路第八天,基础(9)-面向对象(下)
- 指针和引用区别 C++
- 【asp.net】asp.net遍历Request的信息
- angularjs i18n
- OnTriggerEnter2D方法
- Python学习笔记(三)
- 串口发送端verilog代码分析
- poj 1511 正向 反向 构两个图
- git小笔记
- 设计模式之Decorator(油漆工)(转)
- 页面显示This is the initial start page for the WebDriver server.的解决办法
- 利用阿里巴巴封装的FastJSON来解析json并转换成map
- USACO 6.2 Calf Flac
- Cobbler无人值守安装linux系统