码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【Hive---01】数据仓库『 整体概述』


    文章目录

    • 1. 数据仓库是什么?
    • 2. 为什么要引入数据仓库?
    • 3. 数据仓库 vs 数据库
    • 4. 数据仓库 vs 数据集市
    • 5. 数据仓库分层架构
      • 5.1 三层架构
      • 5.2 为什么数据仓库要分层?
      • 5.3 ETL 与 ELT

    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没必要区分的太清,在实际开发中,什么顺序对业务帮助更大就用哪种。

  • 相关阅读:
    阿里云服务操作指南-个人购买版
    初学C#必须要掌握的基础例题
    测评:腾讯Coding平台好不好用?
    别看了!亚马逊选品工具全都在这儿了(上)
    【Android UI】贝塞尔曲线 ④ ( 使用 android.graphics.Path 提供的 cubicTo 方法绘制三阶贝塞尔曲线示例 )
    企业微信下班后能收到通知吗?不接收消息怎么设置?
    设计模式-迭代器模式-笔记
    基于智能优化算法实现自动泊车的路径动态规划(Matlab代码实现)
    服务器出现了一个新软件,一帮大佬吵起来了!
    我只是还没有全力以赴
  • 原文地址:https://blog.csdn.net/qq_43546676/article/details/127424557
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号