大数据—数仓分层概论

news2025/1/17 6:02:58

        数据仓库(Data Warehouse)是一个用于集成和存储大量数据的系统,旨在支持企业的决策制定过程。它是一个面向主题的、集成的、非易失的数据集合,用于支持管理决策制定过程。数据仓库的发展源于企业对数据分析和决策支持的需求,以及传统数据库系统在处理大规模数据和复杂查询时的局限性。数据仓库概念创始人在《建立数据仓库》一书中对数据仓库的定义是:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、数据集成的(Integrated)、相对稳定(非易失)的(Non-Volatile)、反映历史变化( 时变)(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。 数据仓库通常指一个数据库环境,而不是一件产品,它提供用户用于决策支持的当前的和历史的数据,它是一整 套包括了etl、建模计算、调度在内的完整的体系。如下图:

一、建仓背景

        在当今数字化时代,数据被广泛认为是企业最宝贵的资产之一。然而,随着数据量的爆炸性增长和数据来源的多样化,企业面临着如何有效管理、存储和分析数据的挑战。为了应对这些挑战,数据仓库成为了企业必不可少的基础设施之一。而数据仓库的分层架构则被认为是构建稳健、高效数据仓库的重要组成部分。

二、数仓分层组成

2.1. 操作型数据层

        操作型数据层是数据仓库架构的基础层,也是数据的最初来源。在这一层,数据以原始的、细粒度的形式存在,通常由各种业务系统、交易系统和数据源产生。操作型数据层的主要任务是收集、存储和管理企业的操作性数据,以满足实时数据处理和业务运营的需求。

功能和特点:

  • 数据源:各种业务系统、交易系统、传感器设备等。
  • 数据形式:原始、细粒度的数据记录。
  • 数据处理:主要进行数据采集、数据传输和数据存储。
  • 数据用途:支持实时业务运营和决策制定。

示例:

  • 零售企业的POS系统产生的每笔销售交易数据。
  • 在线电商平台的用户行为日志数据。
  • 制造业中设备传感器采集的生产数据。

2.2. 数据存储层

        数据存储层是数据仓库架构的核心组成部分,用于存储经过加工和转换的数据。这一层采用多维模型或星型模型等数据模型来组织数据,以支持多维分析和复杂的查询需求。数据存储层可以进一步划分为数据湖、数据仓库和数据集市等不同的存储结构,以满足不同业务需求和使用场景。

功能和特点:

  • 数据模型:采用多维模型或星型模型等数据模型。
  • 数据存储:存储经过加工和转换的数据。
  • 数据组织:按照维度、事实等概念进行数据组织和建模。
  • 数据查询:支持复杂的数据查询和分析操作。

示例:

  • 数据仓库中的事实表和维度表,用于存储销售、客户、产品等业务数据。
  • 数据湖中存储原始的、未加工的数据,以支持数据科学和机器学习应用。
  • 数据集市中存储特定业务领域的数据,例如销售数据集市、财务数据集市等

2.3. 数据访问层

        数据访问层是数据仓库的用户接口,用于提供灵活、高效的数据访问和分析功能。这一层包括各种查询工具、报表工具和可视化工具,以及面向用户的数据服务和API接口。数据访问层的设计应该尽可能地简化用户操作,并提供丰富的数据分析和可视化功能,以帮助用户更好地理解和利用数据。

功能和特点:

  • 用户接口:提供各种查询工具、报表工具和可视化工具。
  • 数据服务:提供面向用户的数据服务和API接口。
  • 数据分析:支持复杂的数据分析和可视化操作。
  • 用户权限:实现数据的权限控制和访问管理。

示例:

  • BI工具(如Tableau、Power BI)用于创建报表和可视化仪表板。
  • 数据探索工具(如Dataiku、Alteryx)用于进行数据探索和建模。
  • 数据服务API用于向应用程序和第三方服务提供数据访问接口。

三、数据仓库四大特征

  1. 集成性(Integration):数据仓库集成了来自不同来源、不同系统的数据,包括内部和外部数据。这意味着数据仓库能够将多个数据源的数据整合到一个统一的数据存储中,使用户能够方便地进行分析和查询。

  2. 主题性(Subject-Oriented):数据仓库按照主题或业务需求来组织和存储数据,而不是按照传统的应用程序或操作系统来组织。这意味着数据仓库中的数据是围绕特定的主题或业务过程进行组织的,使用户能够更轻松地理解和分析数据。

  3. 时间性(Time-Variant):数据仓库中的数据是按照时间顺序进行存储和管理的。这意味着数据仓库中的数据包含了历史数据,用户可以进行时间序列分析或者回溯性分析,以了解数据随时间的变化趋势。

  4. 非易失性(Non-Volatile):数据仓库中的数据一旦被存储,就不会被随意修改或删除,而是被视为历史数据的一部分。即使在数据更新后,旧的数据也会保留在数据仓库中,以支持历史数据的分析和报告。

四、数仓分层的优势

        数仓分层架构在构建数据仓库时具有许多优势,这些优势包括灵活性、性能优化、数据安全和易于维护。以下是每个优势的详细说明和相关示例:

  • 3.1.灵活性

            数仓分层架构提供了灵活性,使得数据仓库可以根据不同用户的需求和使用场景进行定制化配置和扩展。这种灵活性使得企业能够适应不断变化的业务需求和数据分析需求。

    示例:

            在一个零售企业中,数据仓库可能需要支持多个部门的不同分析需求,包括销售、市场营销、库存管理等。通过数仓分层架构,可以为每个部门建立专门的数据访问层,根据其特定的需求和使用场景,提供定制化的数据访问和分析功能。例如,销售部门可能需要实时的销售数据和销售趋势分析,而市场营销部门可能需要进行用户行为分析和推荐系统建模。

    2. 性能优化

            数仓分层架构通过将数据按照不同的层次和用途进行划分和管理,可以提高数据查询和分析的性能和效率。这种性能优化使得用户能够更快速地获取所需的数据,并进行复杂的数据分析和查询操作。

    示例:

            在一个金融机构中,数据仓库可能需要处理大量的交易数据和客户数据。通过数仓分层架构,可以将数据按照不同的层次和时间粒度进行存储和管理,例如将历史数据和实时数据分开存储,将热点数据和冷数据分开存储。这样一来,可以通过对数据存储层进行优化,提高数据查询和分析的性能,减少数据访问的延迟时间,提升用户体验。

    3. 数据安全

            数仓分层架构可以实现数据的逻辑隔离和权限控制,确保数据的安全性和完整性,防止未经授权的访问和操作。这种数据安全性使得企业能够保护敏感数据,防止数据泄露和数据滥用。

    示例:

            在一个医疗保健机构中,数据仓库可能包含大量的患者健康数据和个人身份信息。通过数仓分层架构,可以为不同的用户和角色设置不同的访问权限和数据访问策略,例如将敏感数据加密存储,限制特定用户只能访问特定的数据层次。这样一来,可以有效保护患者隐私,确保数据安全。

    4. 易于维护

            数仓分层架构将数据按照不同的层次和用途进行组织和管理,使得数据仓库的维护和管理更加简单和高效。这种易于维护性使得企业能够降低数据仓库的运营成本,提高数据仓库的稳定性和可靠性。

    示例:

            在一个制造企业中,数据仓库可能需要定期更新生产数据和供应链数据。通过数仓分层架构,可以将数据加载和数据处理过程进行分层和模块化设计,例如将数据抽取、数据转换和数据加载分开进行,将数据清洗和数据质量管理自动化处理。这样一来,可以提高数据仓库的运维效率,降低人工成本,减少数据处理错误和故障风险。

五、总结

        数据仓库的发展背景源于企业对大规模数据集成、数据分析和决策支持的需求,以及数据分析技术的不断发展和成熟,标志着企业逐渐转向数据驱动的企业文化。数据仓库作为一个面向主题的、集成的、非易失的数据集合,为企业提供了一个统一的数据视图和分析环境,促进了数据资产的价值最大化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1628276.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【skill】usbwebserver的几个问题

试了几个云服务器(华为云、移动10086云),使用usbwebserver均会出现问题。 以前都是找缺少的对应的dll文件,不仅搜索半天、解压、移动复制、同时还要考虑文件的位数 有人说C:\Windows\System32存放的是64位的东西有人说C:\Windows…

#天空星硬件SPI驱动GD25Q64

一、使用方式及接线: 硬件SPI,软件片选CS(PA4) STM32F407(主机) GD25Q322(从机) 说明 PA4(SPI1_NSS) CS(NSS) 片选线 PA5(SPI1_SCK&#x…

以场景驱动CMDB数据治理经验分享

数据治理是 CMDB 项目实施中难度最大、成本最高的环节,是一个长期治理的过程,而行业很少提出 CMDB 数据治理的技术实现方案。CMDB 数据治理不仅需要解决配置管理工程性的技术问题,还要基于运维组织的特点,建立适应性的配置运营能力…

【Unity动画系统】动画状态基本属性与相关API、IK简单概述

动画状态基本属性与相关API Tag:判断是否当前播放着相对应Tag的动画,如果是,那么玩家的输入就是无效的。 using UnityEngine.InputSystem;public AnimatorStateInfo stateInfo;void State(){//stateInfo animator.GetCurrentAnimatorStateIn…

Kafka 3.x.x 入门到精通(04)——对标尚硅谷Kafka教程

Kafka 3.x.x 入门到精通(04)——对标尚硅谷Kafka教程 2. Kafka基础2.1 集群部署2.2 集群启动2.3 创建主题2.4 生产消息2.5 存储消息2.5.1 存储组件2.5.2 数据存储2.5.2.1 ACKS校验2.5.2.2 内部主题校验2.5.2.3 ACKS应答及副本数量关系校验2.5.2.4 日志文…

EOCR-i3MS-WRDUW电机保护器 韩国三和 进口施耐德

韩国三和,EOCR,SAMWHA,Schneider,施耐德,电机保护器,电动机保护器,电子式电动机保护继电器,电子式过电流继电器,电子式欠电流继电器,电子式电压继电器&#x…

Windows10系统安装IIS的步骤

在Windows 10上安装IIS的步骤如下:12 打开控制面板,选择“程序”或“程序和功能”。点击“启用或关闭Windows功能”。在列表中找到“Internet Information Services”,勾选该选项。根据需要勾选IIS的具体组件,如万维网服务、IIS可…

11 c++版本的贪吃蛇

前言 呵呵 这大概是 大学里面的 c 贪吃蛇了吧 有一些 面向对象的理解, 但是不多 最近 因为想要 在单片机上面移植一下 贪吃蛇, 所以 重新拿出了一下 这份代码 然后 将它更新为 c 版本, 还是 用了一些时间 这里 具体的实现 就不赘述, 仅仅是 发一下代码 以及 具体的使用…

Linux实验一:Linux环境及编程工具

目录 一、实验目的二、实验内容三、参考代码四、实验步骤步骤1. 编辑源代码test1.c步骤2. 编译源代码test1.c步骤3. 调试test1步骤4. 重新编译运行test1.c 五、实验结果六、实验总结 一、实验目的 1、掌握Linux C开发过程中的基本概念; 2、掌握如vim,GC…

go语言实现简单登陆返回token样例

目录 1、代码实现样例: 2、postman调用,获取登陆后的token: 1、代码实现样例: package mainimport ("net/http""time""github.com/dgrijalva/jwt-go""github.com/gin-gonic/gin" )var …

深度学习系列66:试穿模型IDM-VTON上手

1. 模型概述 如图,总体流程为: 输入为:衣服的编码xg;人物noise的编码xt;人物身上衣物的mask和人体pose分割(densepose);衣服部分经过两部分网络:1)高级语义网络IP-Adapter&#xff…

谷歌搜索留痕怎么做?

使用GLB外推技术,一个能让你的网站或者你的产品在谷歌上排名的神器 GLB外推,是利用先进的SEO技术,特别是光算科技的谷歌搜索留痕霸屏外推,来帮助你的产品或服务在谷歌上获得更高的曝光度,这项技术能让你的业务关键词在…

阿里云企业邮箱API的使用方法?调用限制?

阿里云企业邮箱API性能如何优化?配置邮箱API的优势? 阿里云企业邮箱以其稳定、高效和安全的特点,受到了众多企业的青睐。而阿里云企业邮箱API的开放,更是为企业提供了更加灵活、便捷的管理和操作方式。下面,我AokSend…

安装VMware后的相关配置

一、创建完虚拟机后 看看虚拟机设置里面的DVD;有没有自动检测到 二、打开虚拟机后 一直点击继续3、完成后进行重新下载VM——tools 来进行跨机子的复制粘贴,和屏幕大小的自适应注意:如果安装不了tools是灰色的 点开虚拟机设置——两个光盘都选用物理驱…

如何通过安全数据传输平台,保护核心数据的安全传输?

在数字化的浪潮中,企业的数据安全传输显得尤为关键。随着网络攻击手段的日益复杂,传统的数据传输方式已不再安全,这就需要我们重视并采取有效的措施,通过安全数据传输平台来保护核心数据。 传统的数据传输面临的主要问题包括&…

matlab批量读取csv文件

matlab如何批量读取csv文件 在Matlab中,有多种方法可以批量读取CSV文件。下面是几种常用的实现方法: 方法一:使用dir函数获取文件列表 folder 文件夹路径; files dir(fullfile(folder, *.csv)); numFiles length(files);for i 1:numFi…

通往AGI路上,DPU将如何构建生成式AI时代的坚实算力基石?

4月19日,在以“重构世界 奔赴未来”为主题的2024中国生成式AI大会上,中科驭数作为DPU新型算力基础设施代表,受邀出席了中国智算中心创新论坛,发表了题为《以网络为中心的AI算力底座构建之路》主题演讲,勾勒出在通往AGI…

PS入门|仿制图章工具咋用?

前言 最近讲着讲着,小白也不记得PS的内容讲到了哪。 咱们用过选择工具、钢笔工具、画笔工具、选框工具、魔棒工具,还使用过内容识别功能、蒙版功能等。 小伙伴们有没有发现,PS其实也没那么难?通过之前几次的练习,发…

牛客NC143 矩阵乘法【中等 矩阵 C++/Java/Go/PHP】

题目 题目链接: https://www.nowcoder.com/practice/bf358c3ac73e491585943bac94e309b0 思路 矩阵算法在图像处理、神经网络、模式识别等领域有着广泛的用途。在矩阵乘法中,A矩阵和B矩阵可以做乘法运算必须满足A矩阵的列的数量等于B矩阵的行的数量。运算…

ROS1快速入门学习笔记 - 05发布者Publisher编程的实现

目录 一、话题模型(发布/订阅) 二、实现步骤 1. 创建一个功能包 2. C代码的实现 3. 配置发布者代码编译规则 4. 编译并运行发布者 5. Python代码的实现 一、话题模型(发布/订阅) 二、实现步骤 1. 创建一个功能包 $ cd~/ca…