• Hive学习笔记01


    1. 数据仓库

      a. 概念

        数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持。不产生数据(不会新建数据),也不消费数据(只做分析),数据来源于外部,是一个仓库,不是工厂。

        b. 特征

    • 面向主题:需要先定义一个主题,比如分析计算机协会有100万人,现在需要分析所有男生的学习成绩,这时只需要拿到男生的学习成绩,而其他不相关的数据就不需要。
    • 集成性:数据仓库是不会产生数据的,数据全部是来自于外部的,这些数据全部是来自于外部的,比如我们的mysql数据库,日志,爬虫等。
    • 非易失性:全部都是发生过的数据(历史数据),不能进行更改的操作,一般都是大量的查询操作。
    • 时变性:随着时间的变化不断的更新和加载新数据到数据仓库。

        c. 数据库于数据仓库的区别

    • 数据库是面向事务的,数据仓库是面向
    • 数据库存储的业务数据,数据仓库是存储的是历史数据。
    • 数据库是为了捕获数据存储的,数据仓库是为了分析数据而存在的。
    • 数据仓库并不是大型的数据库,也不是为了取代数据库而出现的,数据仓库是在数据库大量存在的情况下,为了进一步挖掘数据资源,为了决策需要而产生的。

     d. 数据仓库架构

    2. Hive

        Hive是基于hadoop的一个数据仓库工具,它可以将结构化文件映射成一张数据表,本质是将SQL转换为MapReduce程序。

     a. Hive架构

     b. metadata和metastore

    • metadata即元数据,包括Hive创建的db,table,表,字段等元信息。
    • metastore即元数据服务,客户端连接metastore再由metastore连接mysql,这样多个客户端只需要连接metastore,不需要密码就可以连接到mysql。

     c. 三种连接方式

    • 默认开启方式

           没有配置metaStore的时候,每当开启bin/hive或者;或者开启hiveServer2的时候,都会在内部启动一个metastore。

           嵌入式服务;资源比较浪费,如果开启多个窗口,就会存在多个metastore server。

    • local mataStore(本地)

           不再使用内嵌的Derby作为元数据的存储介质,而是使用其他数据库比如MySQL来存储元数据。hive服务和metastore服务运行在同一个进程中,mysql是单独的进程,可以同一台机器,也可以在远程机器上。

            这种方式是一个多用户的模式,运行多个用户client连接到一个数据库中。这种方式一般作为公司内部同时使用Hive。每一个用户必须要有对MySQL的访问权利,即每一个客户端使用者需要知道MySQL的用户名和密码才行。

            开启metastore服务就只需要开启一次就好,避免资源浪费!

    • Remote Metastore(远程)

        Hive服务和metastore在不同的进程内,可能是不同的机器,该模式需要将hive.metastore.local设置为false,将hive.metastore.uris设置为metastore服务器URL。

      远程元存储需要单独起metastore服务,然后每个客户端都在配置文件里配置连接到该metastore服务。将metadata作为一个单独的服务进行启动。各种客户端通过beeline来连接,连接之前无需知道数据库的密码。

      仅连接远程的mysql并不能称之为“远程模式”,是否远程指的是metastore和hive服务是否在同一进程内。

      开启metastore服务就只需要开启一次就好,避免资源浪费!


  • 相关阅读:
    docer run 、docker attach 与 docker exec的区别
    filebeat-kafka:WARN producer/broker/0 maximum request accumulated, waiting for space
    json 格式要求
    词法分析
    CSS3 鲜为人知的属性-webkit-tap-highlight-color的理解
    DOMContentLoaded与load的区别
    用vue的自定义组件写了一个拖拽 组件,局部的 只能在自定义元素内的
    浮动元素遇到标准流元素 会发生转角遇到爱
    柯里化函数
    转载一篇关于toString和valueOf
  • 原文地址:https://www.cnblogs.com/qidi/p/11574229.html
Copyright © 2020-2023  润新知