首页 > 其他分享 >BI项目中的数据仓库分层

BI项目中的数据仓库分层

时间:2024-08-18 23:22:17浏览次数:12  
标签:数据分析 ods 数据仓库 BI 分层 数据挖掘 dw 数据

在BI项目中,数据仓库是一个关键的组成部分,其目的是将企业中分散的数据整合到一个中心化的存储库中,并提供一个用于分析和报告的单一来源。为了更好地组织和管理数据,数据仓库通常被分为多个层级。

一、分为stg,ods,dw,dm四层

1. 数据源层(staging layer)

数据源层(stg)是数据仓库的第一层,负责接收并存储原始的数据源。该层的主要目的是数据提取、清洗、转换和加载(ETL),以确保原始数据可以被正确地导入到数据仓库中。数据源层通常包括从不同系统中提取的数据文件、日志文件、数据库、API等数据源。

2. 操作数据层(operational data store)

操作数据层(ods)是数据仓库的第二层,其目的是将stg层中的数据转换为更加可读且易于管理的格式。该层的数据模型通常与源系统相似,并且可以被用作数据仓库的数据集成层。因此,ods层通常被用于支持操作性和实时的BI需求,以及提供数据集成接口。

3. 数据仓库层(data warehouse)

数据仓库层(dw)是数据仓库的第三层,其目的是将ods层中的数据转换为更加高效的数据结构,并将其进行分类和维度化。数据仓库层通常包括一个星型或雪花型的数据模型,其中包含事实表和维度表。数据仓库层通常被用于支持企业级的数据分析和报告,以及其他复杂的BI需求。

4. 数据挖掘层(data mining)

数据挖掘层(dm)是数据仓库的第四层,其目的是支持高级数据挖掘、预测和建模。该层使用数据仓库中的历史数据和其他来源的数据,来发现关联关系、模式和趋势等信息,并进行预测和分析。数据挖掘层通常需要使用复杂的算法和工具,例如决策树、神经网络、聚类等。

5. 优缺点
优点
  • 每一层都有明确的功能和目的,使得数据仓库的架构更加清晰和易于管理。
  • 每一层都可以单独进行优化和调整,以满足不同的业务需求和数据访问需求。
  • 数据仓库层的星型和雪花型模型可以提高数据查询效率,并支持复杂的数据分析和报告需求。
  • 数据挖掘层可以帮助企业挖掘隐藏在数据中的价值,并支持高级数据分析和预测。
缺点
  • 架构复杂,需要更多的工作和资源来维护和管理。
  • 数据仓库建设周期长,需要较长的时间来完成每一层的搭建和调试。
  • 数据更新的延迟可能会影响到一些近实时的业务需求。

二、分为ods,dw,dm3层

1. 操作数据层(operational data store)

同样是第二层,ods层的功能与stg层和ods层的功能类似,负责数据的提取、清洗、转换和加载。与分为stg,ods,dw,dm四层相比,ods层在这种架构下的作用更加关键,因为它是数据仓库的数据集成层,支持实时数据的操作性。

2. 数据仓库层(data warehouse)

数据仓库层(dw)是数据仓库的第三层,与分为stg,ods,dw,dm四层中的dw层功能类似。数据仓库层的数据模型通常是星型或雪花型模型,包含事实表和维度表。数据仓库层用于支持企业级的数据分析和报告,以及其他复杂的BI需求。

3. 数据挖掘层(data mining)

数据挖掘层(dm)是第三层的一个子层,与分为stg,ods,dw,dm四层中的dm层功能类似。该层使用历史数据和其他来源的数据,来发现关联关系、模式和趋势等信息,并进行预测和分析。数据挖掘层通常需要使用复杂的算法和工具,例如决策树、神经网络、聚类等。

4. 优缺点
优点
  • 架构简单,易于理解和管理。
  • 数据更新速度较快,支持近实时的业务需求。
  • 可以根据实际业务需求和数据访问需求进行灵活的调整和优化。
缺点
  • 数据仓库层的星型和雪花型模型可能会影响数据查询效率,并限制了一些复杂的数据分析和报告需求。
  • 操作数据层的数据模型可能与源系统相似,导致数据冗余和不必要的复杂性。
  • 数据挖掘层可能需要更复杂的算法和工具来支持高级数据分析和预测。

三、应用场景和建议

分为stg,ods,dw,dm四层的架构适用于需要支持复杂的数据分析和预测场景的企业,例如金融、保险、制造等行业。该架构需要更长的建设周期和更多的资源来维护和管理,但能够提供更全面、更精细的数据分析和报告。

分为ods,dw,dm3层的架构适用于需要支持实时数据的操作性和较短的数据分析周期的企业,例如零售、物流、医疗等行业。该架构需要更少的资源来维护和管理,但在一些复杂的数据分析和预测场景中可能存在些许限制。

在实际应用中,建立数据仓库时需要根据实际情况来选择不同的架构。如果有足够的资源和需要支持复杂的数据分析和预测需求,则可以采用分为stg,ods,dw,dm四层的架构。如果需要实时数据的操作性和较短的数据分析周期,则可以采用分为ods,dw,dm3层的架构。

标签:数据分析,ods,数据仓库,BI,分层,数据挖掘,dw,数据
From: https://blog.csdn.net/weixin_72431427/article/details/141245391

相关文章

  • 叠Buff!经典麻雀优化算法+多重双向深度学习!SSA-BiTCN-BiGRU-Attention多输入单输出回
    叠Buff!经典麻雀优化算法+多重双向深度学习!SSA-BiTCN-BiGRU-Attention多输入单输出回归预测目录叠Buff!经典麻雀优化算法+多重双向深度学习!SSA-BiTCN-BiGRU-Attention多输入单输出回归预测效果一览基本介绍程序设计参考资料效果一览基本介绍1.Matlab实现SS......
  • Power BI版本介绍:看它如何“变幻莫测”
    目录一、PowerBI是什么?二、版本众多,犹如眼花缭乱的服装店1.PowerBIDesktop2.PowerBIPro3.PowerBIPremium4.PowerBIReportServer三、版本之间的“大战”四、总结——来一剂沉重的药丸大家好!今天咱们来聊聊一个非常“热闹”的话题:PowerBI的版本介绍。......
  • RabbitMQ集群 - 仲裁队列、Raft协议(最详细的选举流程)
    文章目录仲裁队列概述Raft协议概述基本概念选举流程(重点)消息复制仲裁队列的使用MQ管理平台SpringAMQP仲裁队列概述1)RabbitMQ普通队列在一个节点宕机之后,其他节点无法读写宕机节点的队列,为了解决这个问题,引入了仲裁队列.2)仲裁队列通过Raft协议,实现了不同......
  • 题解:CF1630F Making It Bipartite
    题意图上有\(n\)个点,且具有点权,点权保证互不相同,若两个点点权有倍数关系,则两点之间有一边,问你最少删去多少个点能使图变为二分图。思路因为如果\(a\)是\(c\)的倍数且\(c\)是\(b\)的个数,所以\(a\)是\(c\)的倍数。由此可以看出,若\(a\)与\(b\)相连且\(b\)与......
  • [LeetCode] 1367. Linked List in Binary Tree 二叉树中的链表
    Givenabinarytree root anda linkedlistwith head asthefirstnode.ReturnTrueifalltheelementsinthelinkedliststartingfromthe head correspondtosome downwardpath connectedinthebinarytree otherwisereturnFalse.Inthiscontext......
  • RabbitMQ-消息队列之topic使用
    1、安装rabbitmq怎么安装rabbitmq请查看之前课程,如果已经安装,请略过此步。2、创建vendor文件夹或是直接采用PHP框架mkdirvendor3、进入文件cdvendor4、安装php扩展composerrequirephp-amqplib/php-amqplib5、进入上级创建topic文件夹cd../mkdirtopic6、进入to......
  • SciTech-Mathematics-Probability+Statistics-Matlab(Mathworks Inc.): MATLAB官方文
    SciTech-Mathematics-Probability+StatisticsProbabilityDistributions:https://ww2.mathworks.cn/help/stats/probability-distributions-1.html?s_tid=CRUX_lftnavWorkingwithProbabilityDistributionsProbabilitydistributionsaretheoreticaldistributionsbas......
  • 学习-zabbix架构及术语
    Zabbix组成架构ZabbixServerzabbixserver是agent程序报告系统可用性、系统完整性和统计数据的核心组件、是所有配置信息、统计信息和操作数据的核心存储器zabbix数据库存储所有配置信息和zavvix收集到的数据都被存储再数据库中zabbixweb界面为了从任何地方和任何......
  • RabbitMQ实现消息可靠性的三种方法(发送者可靠性,MQ可靠性,消费者可靠性)
    1.发送者可靠性1.1发送者重连RabbitMQ的发送者重连机制是一种应对网络不稳定或连接中断情况的策略,它能够自动尝试重新建立与RabbitMQ服务器的连接,以确保消息能够成功发送。发送者重连通常涉及到一些配置参数,如连接超时时间、重试间隔、最大重试次数等。例如,在Spring框架的......
  • Redis中Big Key该如何解决?
    目录1、BigKey的产生2、BigKey场景分析3、BigKey的危害4、检测BigKey 5、解决BigKey问题BigKey拆分(1)按时间/业务拆分(2)按哈希(Hash)拆分(3)按前缀树拆分BigKey定期清理Bigkey压缩BigKey批处理优化持久化配置6、总结 BigKey问题是指某个键(key)的值(value)......