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
Hive节点及原理的更多相关文章
- [Hive]HiveSQL解析原理
Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用.美团数据仓库也是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析.Hive的稳定性和 ...
- cocos子节点转父节点坐标 原理浅析(局部坐标转世界坐标同理)
在CCNode的类中,有一个得到 一个节点坐标系转换父亲坐标系的一个矩阵,节点内坐标乘以这个矩阵,就可以转换为在节点父节点中的坐标,方法名为: Mat4& Node::getNodeToPar ...
- Hive 特性及原理
特点:Hive是构建在hadoop之上的数据仓库.数据存储在hdfs上,数据计算用的mapreduce框架.用户无需掌握MR的编写,通过类SQL语句即可自动生成查询计划. 主要内容: 接入入口 ...
- Omi框架学习之旅 - 获取DOM节点 及原理说明
虽然绝大部分情况下,开发者不需要去查找获取DOM,但是还是有需要获取DOM的场景,所以Omi提供了方便获取DOM节点的方式. 这是官网的话,但是我一直都需要获取dom,对dom操作,所以omi提供的获 ...
- Hive的架构原理&Hive的安装步骤
Hive架构图 元数据默认数据库是:Derby.开发使用MySQL Hive如何将SQL语句翻译成MapReduce的? 1.使用SQL解析器解析SQL语句 2.使用编译器进行编译逻辑 3.使用优化器 ...
- HDFS节点及原理
HDFS节点角色: (1)namenode:1.用来存储HDFS的元数据信息,这里的元数据信息指的是文件系统的命名空间.启动时,将这些信息加载到namenode内存. 2.元数据信息也会在磁盘上保存成 ...
- zk 创建瞬时、顺序节点的原理
命令: create -s -e /worker/lock xx zk 的实现代码在:PrepRequestProcessor.pRequest2Txn 中 //The number of chang ...
- Hbase节点及原理
1.Hbase架构:Clinet.Zookeeper.Master.RegionServer.Region.Store.MemStore.HLog 1.读过程 2.写过程 https://www.cn ...
- Hive原理总结(完整版)
目录 课程大纲(HIVE增强) 3 1. Hive基本概念 4 1.1 Hive简介 4 1.1.1 什么是Hive 4 1.1.2 为什么使用Hive 4 1.1.3 Hive的特点 4 1.2 H ...
随机推荐
- python 之 Django框架(模板系统、过滤器、simple_tag、inclusion_tag、Tags、母版、组件)
12.35 Django模板系统 {{ }}和 {% %},变量相关的用{{}},逻辑相关的用{%%} app02/views: # 模板语言测试函数 def template_test(reques ...
- django中的media
我们用Django写一个网站,可能会需要将用户注册时的头像展示到页面上,当然一开始学的用户上传头像文件都是在项目目录下的,那我们在网页上获取这个头像文件是获取不到的,此时我们需要配置一下media,才 ...
- IOS - UDID IDFA IDFV MAC keychain
在开发过程中,我们经常会被要求获取每个设备的唯一标示,以便后台做相应的处理.我们来看看有哪些方法来获取设备的唯一标示,然后再分析下这些方法的利弊. 具体可以分为如下几种: UDID IDFA IDFV ...
- 学习笔记之MongoDB
MongoDB - Wikipedia MongoDB is a cross-platform document-oriented database program. Classified as a ...
- mysql 表关系 与 修改表结构
目录 mysql 表关系 与 修改表结构 两张表关系 分析步骤 修改表结构 mysql 表关系 与 修改表结构 两张表关系 多对一 以员工和部门举例 多个员工对应一个部门 foreign key 永远 ...
- Node学习之(第三章:仿Apache显示目录列表的功能)
前言 今天咱们用Node.js中的核心模块以及上节学习的模板引擎art-template来实现服务器软件Apache的大体功能.用过Apache的朋友都知道,我们只需把本地文件放置在Apache的ww ...
- day28-python之property
1.property用法 # class Goods: # def __init__(self): # # 原价 # self.original_price = 100 # # 折扣 # self.d ...
- git 命令删除文件操作
在github上只能删除仓库,却无法删除文件夹或文件, 所以只能通过命令来解决 1.添加文件并提交命令 2.推送到git服务器命令 3.删除文件并提交命令 4.推送到git服务器 查看下git 是否存 ...
- OS UIButton之UIButtonType详解-转
我做了一个关于UIButtonType的Demo,效果如下图: UIButtonType各个类型的解释: typedef NS_ENUM(NSInteger, UIButtonType) { UIBu ...
- 微信小程序实现下拉刷新上拉加载
代码片段:https://developers.weixin.qq.com/s/K9VbWZmy7e8C