Hive初步认识,理解Hive(一)

用了有一段时间的Hive了,之前一直以为hive是个数据库,类似Mysql、Oracle等数据库一样,其实不然.

Hive是实现Hadoop 的MapReduce的一种方式(Hive是一种MapReduce,优化的时候不能以sql的方式进行优化)

Hive表分类:内部表 外部表 分区表 分桶表 (创建表的时候需要指定行数据的分隔符 以及字段的分隔符)

内部表与外部表

  删除表时内部表表数据表结构都删除

  删除表时外部表只删除表结构

内部表与外部表的使用规则:

  当前表数据如果有多个使用者 那就使用外部表 避免删除的时候影响到其他用户使用

  如果只有一个用户使用就定义为内部表就好了

分区表与分通表

   分区表用户自己定义 每个区存储在不同文件

   分桶表由程序计算而来 针对某个字段通过哈希函数求出分桶散列信息

Hive的数据存储:(元数据+表数据)

hive的元数据存储在数据库里(mysql/derby)  :元数据表示表的定义语句

hive表数据存储在hdfs文件上:每个表对应一个目录(可能会有分区、分桶表 所以是对应目录 而不是文件)

hive元数据存储位置 

  数据库信息 DBS表中
  表信息 TBLS表中
  数据列信息 COLUMNS_V2 表中 列字段有顺序 会记录下来

创建视图的时候 仅仅表示创建sql语句的快捷方式,但是没有物化视图(没有执行sql)

Hadoop简介

mapreduce主要做数据的加工计算

hdfs主要是存储数据分布式文件系统

yarn  主要负责作业调度 集群资源管理

map主要处理输入数据,reduce将整理好的数据进一步加工,然后存入hdfs分布式文件系统中。

MapReduce计算步骤:

1.hdfs 将文件拆分 切片

2.mapper将任务拆分 对应启动进程

3.shuffle将数据写入磁盘

4.reducer通过shuffle从磁盘读取数据

5.reducer进程进行数据聚合,将最后的结果存入磁盘

Hive初步认识,理解Hive(一)的更多相关文章

  1. 对于HIVE架构的理解

    1.Hive  能做什么,与 MapReduce 相比优势在哪里 关于hive这个工具,hive学习成本低,入手快,对于熟悉sql语法的人来说,操作简单,熟悉. 2.为什么说 Hive 是 Hadoo ...

  2. hive的简单理解--笔记

    Hive的理解 数据仓库的工具  Hive仅仅是在hadoop上面包装了SQL: Hive的数据存储在hadoop上 Hive的计算由MR进行 Hive批量处理数据  Hive的特点 1 可扩展性(h ...

  3. hive:框架理解

    1. 什么是hive  •Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能. •本质是将HQL转换为MapReduce程序  2. 为什么 ...

  4. 037 对于HIVE架构的理解

    0.发展 在hive公布源代码之后 公司又公布了presto,这个比较快,是基于内存的. impala:3s处理1PB数据. 1.Hive  能做什么,与 MapReduce 相比优势在哪里 关于hi ...

  5. hive的初步认识与hive的本质

    Hive是什么?就从这儿开始学习.... Hive是建立在Hadoop hdfs上的数据仓库基础架构. Hive可以用来数据抽取转换加载(ETL). Hive定义了简单的类SQL查询语句,称为HQL. ...

  6. Hive初步使用、安装MySQL 、Hive配置MetaStore、配置Hive日志《二》

    一.Hive的简单使用 基本的命令和MySQL的命令差不多 首先在 /opt/datas 下创建数据  students.txt 1001 zhangsan 1002 lisi 1003 wangwu ...

  7. 深入理解hive基础学习

    Hive 是什么?  1.Hive 是基于 Hadoop处理结构化数据的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类 SQL 查询功能. 2.Hive 利用 HDFS 存储数据 ...

  8. Spark入门实战系列--5.Hive(上)--Hive介绍及部署

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 .Hive介绍 1.1 Hive介绍 月开源的一个数据仓库框架,提供了类似于SQL语法的HQ ...

  9. 【Hive学习之七】Hive 运行方式&权限管理

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...

随机推荐

  1. python_tornado

    1.创建Tornado服务器    1.创建Application对象        Application是Torando最核心的类        所有关于服务器的配置信息都写在Applicatio ...

  2. jquery树形结构

    <div class="tree_content"> <div class="tree_node"> <div class=&qu ...

  3. Spring Boot 2.0 学习笔记(一)——JAVA EE简介

    本章内容:JAVA EE>Spring>Spring Boot 一.JAVA EE简介 1.1 Java ee优点:结束了Web开发的技术无序状态,让程序员.架构师用同一种思维去思考如何架 ...

  4. 文件上传之靶场upload-labs (1-10)

    第一关 sj 绕过 源码如下: lasIndexOf是返回函数最后一次出现的地方(从右到左) substring是用来截取函数的 indexOf是返回 表示从.出现的地方开始截取并判断是否在允许的字符 ...

  5. js杂项积累

    主要内容: 一 浏览器重定向Http请求跨域 二 html select标签 可以设置属性multipe,变为多选 三 document.wirte只应在script标签的顶层代码中使用.不能放在函数 ...

  6. 【原创】002 | 搭上SpringBoot事务源码分析专车

    前言 如果这是你第二次看到师长,说明你在觊觎我的美色! 点赞+关注再看,养成习惯 没别的意思,就是需要你的窥屏^_^ 专车介绍** 该趟专车是开往Spring Boot事务源码分析的专车 专车问题 为 ...

  7. syslog日志

    Syslog协议 系统日志(Syslog)协议是在一个IP网络中转发系统日志信息的标准,它是在美国加州大学伯克利软件分布研究中心(BSD)的TCP/IP系统实施中开发的,目前已成为工业标准协议,可用它 ...

  8. Pandas学习(二)——双色球开奖数据分析

    学习笔记汇总 Pandas学习(一)–数据的导入 pandas学习(二)–双色球数据分析 pandas学习(三)–NAB球员薪资分析 pandas学习(四)–数据的归一化 pandas学习(五)–pa ...

  9. Spring Boot结合Mybatis

    pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...

  10. USB工业摄像头设计之上位机

    在工业相机中对摄像头要求较高,且采集的图像数据要求是源数据,未经过任何处理. 为了兼容xp.win7(32bit 64bit) 程序采用VS2008  MFC编制,参考网上一些应用. CYUSB驱动与 ...