• 【Hive---01】数据仓库『 整体概述』


    1. 数据仓库是什么?

    1. 数据仓库(DataWarehouse / DW):是一个用于 存储、分析、报告 的数据系统。
    2. 目的:构建 面向分析 的集成化数据环境,以数据分析结果驱动决策

      注意:

      1. OLAP系统:面向分析处理的系统。故数据仓库只是OLAP系统的一种。
      2. OLTP系统:面向业务支持事务系统。
    3. 特点:
      1. 数据仓库本身不生产任何数据。从数据库或文件系统中拿数据并保存。【所以叫数据仓库,而不叫数据工厂】
      2. 数据仓库本身不消费任何数据。分析的结果不是给自己用而是用于驱动决策。

    在这里插入图片描述

    2. 为什么要引入数据仓库?

    问:直接在OLTP环境中,即直接在Mysql、Oracle、HDFS等数据库或分布式文件系统上进行数据分析可以吗???

    答:可以,但没必要。

    • 因为这样会对数据库或分布式文件系统造成巨大的压力;另外OLTP存储数据的周期是一周或一个月,无法对更久时间的数据进行分析。
    • 所以要建立一个既不影响OLTP系统运行,又专门面向分析的系统。因此,数据仓库产生了。

    3. 数据仓库 vs 数据库

    数据仓库不是大型的数据库。数据仓库并不是要取代数据库。

    1. 目标不同:数据仓库是为数据分析而设计,数据库是为捕获数据而设计。
    2. 存储数据不同(最重要的差别):数据库存储最新的业务数据,数据仓库存储不仅会存储最新数据还会存储历史数据。
    3. 操作不同:数据库支持CRUD,而数据仓库只支持查询。

    4. 数据仓库 vs 数据集市

    1. 数据仓库 (DataWarehouse ):是面向整个公司组织的数据。
    2. 数据集市 (DataMart) :是面向某单个部门使用的。可以认为数据集市是数据仓库的子集。

    数据集市通常只涉及一个主题,主要是这样更加的具体、易于维护,能更好的为数据分析提供支持。

    在这里插入图片描述

    5. 数据仓库分层架构

    5.1 三层架构

    由于数据仓库不产生数据,也不消费数据,所以很自然的按照输入、存储、输出分为三层:

    1. 操作数据层 (ODS):又叫 源数据层、临时数据层。主要负责临时存放从数据源中解耦出来数据,做为数据仓库的输入
    2. 数据仓库层 (DW):主要负责对ODS层提供的数据进行加工与整合
    3. 数据应用层 (DA):面向业务为数据分析定制的数据
      在这里插入图片描述

    这是自然的分层,在实际开发中可在此基础上增加新的分层或删除某层都是可以的。

    5.2 为什么数据仓库要分层?

    1. 结构更加清晰,降低耦合,减少重复开发
    2. 将复杂的问题简单化:将复杂问题分多步解决,每一步只进行单一的处理。
    3. 屏蔽业务的影响:不需要改一次业务就从新接入数据

    等等。。。。。。。。。。。。。

    5.3 ETL 与 ELT

    数据在数据仓库中的流动都属于ETL,其中:

    1. E:代表 数据的抽取 Extra
    2. T:代表 数据的转化 Transfer
    3. L:代表 数据的加载 Load

    ETL 与 ELT 代表数据在数据仓库中整体的处理流程不同:

    1. ETL
      在这里插入图片描述
    2. ELT
      在这里插入图片描述

    ETL与ELT没必要区分的太清,在实际开发中,什么顺序对业务帮助更大就用哪种。

  • 相关阅读:
    计算机视觉: 三维物体生成
    汽车IVI中控开发入门及进阶(二十四):杰发科技AC8015
    入门机器学习落地AI量化的最佳路径:类kaggle的算法竞赛
    C++征途 --- string容器
    Flink 运行时架构梳理
    Linux源码&文件系统目录结构
    web前端面试题附答案003-说一下你都用过那些格式的图片
    Linux进程控制
    FUTR3D: A Unified Sensor Fusion Framework for 3D Detection 论文笔记
    java企业数据管理系统
  • 原文地址:https://blog.csdn.net/qq_43546676/article/details/127424557