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 ...
随机推荐
- 函数的学习3——传递任意数量的实参&将函数存储在模块——参考Python编程从入门到实践
传递任意数量的实参 形参前加一个 * ,Python会创建一个已形参为名的空元组,将所有收到的值都放到这个元组中: def make_pizza(*toppings): print("\nM ...
- flask框架(七)——蓝图、请求上下文、g对象、信号、flask_session
蓝图 作用:对程序进行目录结构划分 不使用蓝图情况下,自己分文件 目录结构: -templates -views -__init__.py -user.py -order.py -app.py app ...
- MOOC web前端开发笔记(二)
HTML HTML概述 HTML(HyperText MarkUp Language) "超文本标记语言",以标签的形式规定网页结构,它是制作网页的标准语言 HTML不区分大小写 ...
- 2.2_Database Interface:ODBC基本概念
一.无ODBC时代 一般来讲不同的数据库厂商都有自己的数据库开发包,这些开发包支持两种模式的数据库开发; 1.预编译的嵌入模式(例如Oracle的ProC,SQL Server的ESQL) 2.API ...
- CSS的基本知识
与HTML相同,CSS也是一种标识语言,即可以在任何文本编辑器中打开和修改 CSS的基本结构 选择器(Selector) 选择器告诉浏览器该样式将会作用于哪些对象,这些对象可以是某个标签.某个对象.网 ...
- drf安装与APIView初步分析
drf安装 1. pip install djangorestframework 2. 在settings文件中注册app : INSTALLED_APPS = [..., 'rest_framewo ...
- Eclipse - servlet显示无法导入javax.servlet包问题的解决方案
项目名-->右键 Property-->选择 Java Build Path-->选择 Add External JARs-->选择 把servlet-api.jar的路径输入 ...
- sqlserver TOP 问题(转载)
来谈谈SQL数据库中"简单的"SELECT TOP—可能有你从未注意到的细节 首先从博客园的Jerome Wong网友说起 他提出了一个这样的问题 本人写了好几年SQL ...
- dota2从窗口模式切换到独占全屏模式后黑屏解决办法
在dota2安装目录中查找video.txt,修改setting.defaultres与setting.defaultresheight两个参数与显示器的分辨率相同. 修改setting.fullsc ...
- mybatis中如何将多个表的查询结果,放入结果集中返回
1.首先需要将resultMap进行改造,为了避免对其他sql的影响建议另外定义一个resultMapExtral,避免id相同, 2.然后在resultMapExtral中添加其它表的字段,若多个表 ...