当前位置: 首页 > article >正文

浅谈数据仓库的架构及其演变

一、数据仓库分层架构

数据仓库分层一般分为三层,分别为数据仓库ODS层(数据进出口贴源层)、CDM层(数据公共层)和ADS层(数据应用层)。

1. ODS层这是数据仓库的最底层,直接对接数据源系统,用来临时存储从业务系统抽取过来的原始数据,数据结构和粒度与源系统基本保持一致。其主要功能是作为数据进入数据仓库的缓冲区域,在这一层可以对数据进行简单的清洗和转换操作,比如去除明显的噪声数据、统一数据格式等,但不会进行复杂的数据处理。它为后续的数据处理提供了原始的数据基础,确保数据的完整性和准确性,方便在数据出现问题时进行追溯。

2.CDM层分为DWD明细层、DWS轻度汇总层和DIM维度层。

· DWD层中,需要将数据仓库ODS层的原样数据按照主题去建立相应的数据模型,对数据进行统一的清洗和一致性处理。

· DWS层,就会以分析对象为建模驱动,把DWD清理好的一些表进行跨关联,建立面向业务主题的大宽表模型,为应用层提供统一的计算口径和数据标准,提高效率。

· DIM层需要通过添加维度属性、关联维度等定义计算逻辑,完成属性定义的过程并建立一致的数据分析维度表。

3. 在ADS层,根据业务需要来存放个性化的报表数据,可以直接为前端的报表提供查询和展现的服务。

二、数据仓库的发展演变

数据仓库的发展演变可以分为以下几个阶段:

1. 单一数据仓库。在这个阶段,企业通常只有一个大型数仓,用于存储所有的企业数据。这种方式虽然能够提供全局视图,但是由于数据量过大、复杂度高,导致开发和维护成本较高。

2. 多维数据仓库。在这个阶段,企业开始将数据按照不同的主题进行划分,并建立多个小型数仓。这种方式能够提高查询效率和灵活性,但是由于各个数仓之间缺乏集成和协作,会导致问题。

3. 集成式数据仓库。在这个阶段,企业开始将多个小型数仓进行整合,并建立一个统一的、集成式的数据仓库。这种方式能够解决信息孤岛问题,并提供更加全面和准确的企业视图。

4. 实时数据仓库。在这个阶段,企业开始将实时流式数据与批处理数据进行整合,并建立一个实时化的、可扩展的、高性能的实时数据仓库。这种方式能够满足企业对实时数据分析和决策的需求。

5. 云数据仓库。在这个阶段,企业开始将数据仓库部署到云端,并利用云计算技术提供更加灵活、可扩展、高效的数据仓库服务。这种方式能够降低企业的IT成本,提高数据处理效率和安全性。

三、数据仓库构建步骤

构建数据仓库需要经过以下几个步骤:

1. 需求分析:明确业务需求和数据分析目标,确定数据仓库的范围和规模。

2. 设计架构:选择适合企业的数据仓库分层架构,包括数据源层、数据采集层、数据存储层和应用层等。

3. 建设基础设施:包括硬件设备、数据库管理系统、数据仓库ETL工具等。

4. 实施数据仓库ETL过程:将各种异构的数据源进行抽取、转换和加载,形成统一的数据仓库。

5. 开发报表和分析工具:根据业务需求开发相应的报表和分析工具,以支持企业决策。

6. 测试和上线:对整个系统进行测试,并逐步上线使用。

7. 维护和优化:对系统进行日常维护,并不断优化以满足不断变化的业务需求。

了解更多数据仓库与数据集成关干货内容请关注>>>FineDataLink官网

免费试用、获取更多信息,点击了解更多>>>体验FDL功能


http://www.kler.cn/a/399982.html

相关文章:

  • 对PolyMarket的突袭
  • jmeter常用配置元件介绍总结之配置元件
  • 前端处理input框只能输入带小数点的数字
  • Solana应用开发常见技术栈
  • android framework ams/wms常见系统日志(main\system\events\crash,protoLog使用)
  • 华为ensp实验二--mux vlan的应用
  • C++中的观察者模式:通俗易懂的讲解与实现
  • 113页PPT制造业研发工艺协同及制造一体化
  • 四十、Python(pytest框架-下)
  • github进不去解决办法-误打误撞进去了
  • Redis GEO 功能解析
  • Spring Cloud Ribbon 实现“负载均衡”的详细配置说明
  • Stable Diffusion概要讲解
  • Jenkins的pipeline Script的 每个组件的详细讲解
  • LangChain学习--LangChain-chatchat代码研读
  • 2024年09月CCF-GESP编程能力等级认证Python编程二级真题解析
  • 爬虫——数据解析与提取
  • 高阶C语言之六:程序环境和预处理
  • 解决 IDEA 修改代码重启不生效的问题
  • 自动驾驶系列—面向自动驾驶的模型迭代:工具、平台与最佳实践
  • 矩阵的对角化特征值分解
  • 【网络云计算】2024第46周小测第2次-Shell编程类简要解析
  • 刘艳兵-DBA044-关于cardinality的描述,正确的是?
  • .NET 通过模块和驱动收集本地EDR的工具
  • org.springframework.context.support.ApplicationListenerDetector 详细介绍
  • Thinkphp-Laravel在线教育系统设计与实现us5uu