HIVE入门,进阶

    xiaoxiao2025-06-06  13

    HIVE入门,进阶

    首先,我们要对Hadoop有一定的了解

            比如说,什么是HDFS,什么是mapreduce

            以及Hadoop里面的一些最基本的操作

    Hadoop和Hive都是基于Linux操作系统构建的

           我们也需要掌握

                       如何创建一个文件

                       如何编辑一个文件

                       如何切换一个目录

    最后,我们需要了解数据库的基本知识

             Hive是一个数据仓库,本质上也就是一个数据库,他跟我们一般意义上的数据库有什么样的区别,一定要对数据库的基本知识有一定的了解。

    HIve是基于Hadoop之上的数据仓库

    学习目标:

    1、Hive和一般意义上的数据库有什么区别

    Hive是构建在hadoop HDFS上的一个数据仓库

    Hive的体系结构是什么

    Hive如何与hadoop HDFS 进行相互操作

    Hive数据与Hadoop中的文件之间的关系

    2、如何搭建数据库

    3、创建的过程是什么

    4、如何把数据导入到数据仓库

    Hive的安装和管理

    Hive的数据模型和操作

    第一章 概述

    1-1

    1-2 数据仓库简介

          数据仓库:数据仓库是一个面向主题的、集成的、不可更新的、随时间不变化的数据集合,他用于支持企业或组织的决策分析处理

          商品推荐系统---------主题

          集成的 ------不同的数据集成起来

          不可更新-------数据查询

          数据仓库的结构和建立过程

          数据源(业务数据系统、文档资料、其他数据)----------------数据存储及管理(ETL   抽取Extract  转换 Transform  装载  Load)---------------数据仓库引擎(服务器)

          ------------------------前端展示(数据查询、数据报表、数据分析、各类应用)

          OLTP应用----同时成功或同是失败-----银行的转账

          OLAP应用---- 商品推荐系统-------------基于原始数据-----查询

          数据仓库中的数据模型

          1、星形     面向主题:商品信息------客户信息、订单信息、促销信息、厂家信息、物流信息           

          2、雪花模型        客户信息----客户家庭信息、教育背景信息、地址信息、银行卡信息。。。。。。

                                        厂家信息----地址信息、员工信息

                                                              员工信息:。。。。。。。。。

    1-3 什么是Hive

          Oracle Mysql

          1、Hive 是建立在Hadoop HDFS上的数据仓库基础架构

          2、Hive可以用来进行数据提取转化加载(ETL)

          3、Hive定义了简单的类似SQL查询语言,称为HQL,它允许熟悉SQL的用户查询数据

          4、Hive允许熟悉Mapreduce开发者的开发自定义的mapper和reduce来处理内建的mapper和reducer无法完成的复杂的分析工作

          5、Hive是SQL解析引擎,他将SQL语句转移成M/R Job然后在Hadoop执行

          6、Hive的表其实就是HDFS的目录/文件

    第二章 Hive的体系结构

    2-1 Hive的体系结构之元数据

    Hive的元数据---Hive将元数据存储在数据库中(metastore),支持mysql,derby等数据库

    Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等---derby

    2-2 Hive的体系结构之HQL

    一条HQL语句是如何在hive中进行查询的?

    解释器、编译器、优化器完成HQL查询语句从词法分析、语法分析、编译、优化以及查询计划(Plan)的生成。

    生成的查询计划存储在HDFS中,并在随后又MApReduce调用执行

    HQL                   解释器                             编译器                                      优化器                                           执行

    select                词法分析                    生成HQL的执行计划               生成最佳的执行计划

    explain plan for select * from emp where deptno=10;

    select * from table(dbms_xplan.display):

    用索引的方式可以提高查询速度

    create index myindex on emp(depto);

    explain plan for select * from emp where deptno=10;

    2-3 Hive的体系结构

    Hadoop ---用HDFS进行存储,利用MapReduce进行计算

    元数据存储(MetaStore)  ----通常是存储在关系数据库如mysql,derby中

    第三章 Hive的安装

    第四章 Hive的管理

    4-1 Hive的管理之CLI方式

     hive         quit;

     hive --service cli          exit;

    CLI(命令 行方式)

    清屏 ctrl+L 或者!clear

    查看数据仓库的表    show tables;

    查看数据仓库中内置的函数 show functions;

    查看表结构   desc表名;

    查看HDFS上的文件: dfs -ls 目录

    执行操作系统的命令:  !命令

    执行SQL程序    source 文件位置

    静默模式 hive -S

    hive -e "show tables";

    hive  -S -e "show tables";

    4-2 HIve的管理之WEB界面

    4-3 Hive的管理之远程服务

    第五章 Hive的数据类型

    5-1 Hive的数据类型之基本类型

    5-2 Hive的数据类型之复杂

    5-3 Hive的数据类型之时间

    第六章 Hive的数据模型

    6-1 Hive的数据存储

    6-2 内部表

    6-3 分区表

    6-4 外部表

    6-5 桶表

    6-6 视图

    第七章 总结

    转载请注明原文地址: https://ju.6miu.com/read-1299675.html
    最新回复(0)