Hive学习笔记

本文是关于Hive的学习笔记,介绍了Hive作为数据仓库的作用,Hive与Hadoop、传统数据库的关系,以及Hive SQL的基本操作,包括数据类型、DML语句、聚合操作、JOIN和常用函数等,旨在帮助读者理解Hive在离线数据分析中的优势。
摘要由CSDN通过智能技术生成


前言

提示:部分内容总结自https://www.bilibili.com/video/BV1CU4y1N7Sh?p=27&spm_id_from=pageDriver,仅供学习

数据仓库介绍

数据仓库(英语:Data Warehouse,简称数仓、DW),是一个用于存储、分析、报告的数据系统。
数据仓库的目的是构建面向分析的集成化数据环境,分析结果为企业提供决策支持(Decision Support)。

数仓专注分析

  • 数据仓库本身并不“生产”任何数据,其数据来源于不同外部系统;
  • 同时数据仓库自身也不需要“消费”任何的数据,其结果开放给各个外部应用使用;
  • 这也是为什么叫“仓库”,而不叫“工厂”的原因。

简介

  • Hive 由 Facebook 实现并开源,是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据映射为一张数据库表,并提供 HQL(Hive SQL)查询功能,底层数据是存储在 HDFS 上。
  • Hive 本质: 将 SQL 语句转换为 MapReduce 任务运行,使不熟悉 MapReduce 的用户很方便地利用 HQL 处理和计算 HDFS 上的结构化的数据,是一款基于 HDFS 的 MapReduce 计算框架
  • 主要用途:用来做离线数据分析,比直接用 MapReduce 开发效率更高。

为什么使用 Hive

  • 直接使用 Hadoop MapReduce 处理数据所面临的问题:

    • 人员学习成本太高
    • MapReduce 实现复杂查询逻辑开发难度太大
  • 使用 Hive

    • 操作接口采用类 SQL 语法,提供快速开发的能力
    • 避免了去写 MapReduce,减少开发人员的学习成本
    • 功能扩展很方便

一、Hive 架构

Hive 架构图

在这里插入图片描述

Hive 与 Hadoop 的关系

Hive 利用 HDFS 存储数据,利用 MapReduce 查询分析数据。

Hive是数据仓库工具,没有集群的概念,如果想提交Hive作业只需要在hadoop集群 Master节点上装Hive就可以了

Hive 与传统数据库对比

  • hive 用于海量数据的离线数据分析。
    在这里插入图片描述

二、Hive SQL

在这里插入图片描述

数据类型

在这里插入图片描述

分隔符

目的:结构化文件映射成表
在这里插入图片描述
在这里插入图片描述

CREATE TABLE student(classNo string, stuNo string, score int) row format delimited fields terminated by ',';
  • row format delimited fields terminated by ‘,’ 指定了字段的分隔符为逗号,所以load数据的时候,load的文本也要为逗号,否则加载后为NULL。hive只支持单个字符的分隔符,hive默认的分隔符是\001

DML语句

load

Load语法功能

  • Load英文单词的含义为:加载、装载;
  • 所谓加载是指:将数据文件移动到与Hive表对应的位置,移动时是纯复制、移动操作。
  • 纯复制、移动指在数据load加载到表中时,Hive不会对表中的数据内容进行任何转换,任何操作

Load语法规则

  • LOAD DATA [LOCAL] INPATH ‘filepath’ [OVERWRITE] INTO TABLE tablename;
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

insert

Insert语法功能

  • Hive官方推荐加载数据的方式:清洗数据成为结构化文件,再使用Load语法加载数据到表中。这样的效率更高。
  • 也可以使用insert语法把数据插入到指定的表中,最常用的配合是把查询返回的结果插入到另一张表中。
    在这里插入图片描述
    在这里插入图片描述

Select 语法树

在这里插入图片描述

聚合操作

在这里插入图片描述
在这里插入图片描述

Group by

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Having

在这里插入图片描述
在这里插入图片描述

Order by

在这里插入图片描述在这里插入图片描述

limit

在这里插入图片描述
在这里插入图片描述

三、 Hive join

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、Hive 常用函数入门

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Hive 常用的内置函数

  • 内置函数(build-in)指的是Hive开发实现好,直接可以使用的函数,也叫做内建函数。
  • 官方文档地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF
  • 内置函数根据应用归类整体可以分为8大种类型,我们将对其中重要的,使用频率高的函数使用进行详细讲解。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值