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

数据仓库的—数据仓库的体系架构

数据仓库通常采用分层的体系架构设计,作为支撑企业决策分析需求的数据基础设施。典型的数据仓库体系架构由以下三个核心层次组成:

源数据层(Source Layer)

这是数据仓库的数据来源,包括组织内部的各种运营系统,如ERP、CRM、SCM等,以及外部数据源如互联网、社交媒体等。这些系统通常是面向不同应用构建的在线事务处理(OLTP)数据库。源数据层为数据仓库提供了初始的、未经处理的原始数据。

数据集成层(Integration Layer)

这是数据仓库架构的核心环节,也称为ETL(提取-转换-加载)层。它负责从各个源数据系统抽取所需数据,并通过复杂的转换、清理、校验等ETL过程,将这些数据加载到集中的数据存储区(数据仓库或数据集市)中。

数据集成层一般由独立服务器和专门的ETL工具软件来完成。此外,该层还包括元数据存储库,用于管理和维护整个ETL过程的元数据。

数据应用层(Access Layer)

这是数据仓库与最终用户及应用程序交互的层次。它允许用户查询、分析和可视化存储在数据仓库中的数据,为各类商业智能应用提供支持。

数据应用层通常包括以下几个主要组成部分:

  • OLAP(在线分析处理)服务器:支持多维度数据分析和挖掘
  • 数据挖掘工具:用于预测分析、关联规则挖掘等高级分析
  • 查询和报表工具:为分析人员生成各类报表和查询
  • 数据可视化工具:通过图表、仪表板等直观展现数据
  • API 接口:通过API 接口可以对外提供服务

数据仓库的分层

数据仓库的分层是一种将数据仓库中的数据按照不同的粒度和主题进行组织和管理的方法。它可以将数据仓库中的数据划分为不同的层次,每一层都具有特定的功能和特点。

数据仓库分层的目的主要有以下几个:

  • 提高数据仓库的性能和可扩展性。
  • 提高数据仓库的可用性和易用性。
  • 提高数据仓库的安全性。

数据仓库分层的常见方法是将其划分为三层:

  • 操作数据存储层(ODS)
  • 数据仓库层(DW)
  • 数据应用层(ADS)

操作数据存储层(ODS)

ODS是数据仓库的第一个层次,它用于存储来自不同业务系统的原始数据。ODS中的数据通常是未经处理的,它可以用于数据仓库的初始化和更新。

ODS的主要特点如下:

  • 数据量大,更新频率高。
  • 数据格式多样,未经处理。
  • 主要用于数据仓库的初始化和更新。

数据仓库层(DW)

DW是数据仓库的核心层次,它用于存储经过处理和整合的数据。DW中的数据通常是面向主题的,它可以用于数据分析和挖掘。

DW的主要特点如下:

  • 数据量大,更新频率低。
  • 数据格式统一,经过处理。
  • 主要用于数据分析和挖掘。

在实际应用中,数据仓库的分层可以根据具体的业务需求进行调整。例如,可以将DW层细分为数据细节层(DWD)、数据中间层(DWM)和数据汇总层(DWS)。

数据明细层(DWD)

DWD是DW层的第一个层次,它用于存储经过清洗和转换的明细数据。DWD中的数据通常是面向主题的,它可以用于数据仓库的建模和分析。

DWD的主要特点如下:

  • 数据量大,更新频率高。
  • 数据格式统一,经过清洗和转换。
  • 主要用于数据仓库的建模和分析。
数据中间层(DWM)

DWM是DW层的第二个层次,它用于存储经过汇总和加工的中间数据。DWM中的数据通常是面向主题的,它可以用于数据仓库的应用和分析。

DWM的主要特点如下:

  • 数据量中等,更新频率中等。
  • 数据格式统一,经过汇总和加工。
  • 主要用于数据仓库的应用和分析。
数据汇总层(DWS)

DWS是DW层的第三个层次,它用于存储面向应用的数据。DWS中的数据通常是经过汇总和加工的,它可以用于数据展示和决策支持。

DWS的主要特点如下:

  • 数据量小,更新频率高。
  • 数据格式多样,面向应用。
  • 主要用于数据展示和决策支持。

数据应用层(ADS)

ADS是数据仓库的最高层次,它用于存储面向应用的数据。ADS中的数据通常是经过汇总和加工的,它可以用于数据展示和决策支持。

ADS的主要特点如下:

  • 数据量小,更新频率高。
  • 数据格式多样,面向应用。
  • 主要用于数据展示和决策支持。

总结

数据仓库的分层可以带来以下几个好处:

  • 提高数据仓库的性能和可扩展性。
  • 提高数据仓库的可用性和易用性。
  • 提高数据仓库的安全性。
    分层也带来了一定的缺点
  • 增加数据仓库的复杂性。
  • 增加数据仓库的成本。
    数据仓库架构是数据仓库建设的关键环节。合理的数据仓库架构可以提高数据仓库的性能、可扩展性、可用性、易用性和安全性。
    具体来说,数据仓库的分层可以提高数据仓库的性能和可扩展性,因为它可以将数据仓库中的数据按照不同的粒度和主题进行组织和管理,从而使数据用户更容易找到和使用所需的数据。从而减少数据访问和处理的时间和资源消耗。

数据仓库的分层可以提高数据仓库的安全性,因为它可以将数据仓库中的数据按照不同的敏感级别进行组织和管理,从而使敏感数据得到更好的保护

通过分层的体系架构设计,数据仓库实现了数据的抽取、集成、存储、分析等不同功能在层与层之间的有效隔离,使整个系统具有灵活性和可伸缩性。每个层级都可以单独优化和扩展,从而提高整体的性能表现和可维护性。

这种成熟的、经过实践验证的分层体系架构,使数据仓库能够高效地集成企业海量数据资产,并为管理层的分析决策提供有力支持,是实现商业智能不可或缺的数据基础设施。

相关文章:

数据仓库的—数据仓库的体系架构

数据仓库通常采用分层的体系架构设计,作为支撑企业决策分析需求的数据基础设施。典型的数据仓库体系架构由以下三个核心层次组成: 源数据层(Source Layer) 这是数据仓库的数据来源,包括组织内部的各种运营系统,如ERP、CRM、SCM等,以及外部数据源如互联网、社交媒体等。这些系…...

【C/C++基础知识】const 关键字

文章目录 Q&A and 前言const 修饰基本变量初始化const 对象仅在文件内有效 const 的引用应用 指针与 constconst 修饰类成员函数参考写在最后 Q&A and 前言 Q:简要说一说 C 中的 const 关键字,含义以及常见的使用位置 A:const 是 C…...

Docker之数据卷和Dockerfile

Docker之数据卷与Dockerfile的详细使用介绍如下: 一、Docker数据卷 数据卷(volume)是Docker中的一个重要概念,它允许你在容器和宿主机或容器之间共享文件系统。数据卷提供了持久性存储,即使在容器被删除后&#xff0…...

pull拉取最新代码

工作区、暂存区、版本库 工作区:就是你在电脑里能看到的目录。 暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。 …...

工控 modbusTCP 报文

Tx 发送报文:00 C9 00 00 00 06 01 03 00 00 00 02 Rx 接收报文:00 C9 00 00 00 07 01 03 04 01 4D 00 01 Tx 发送报文:00 C9 00 00 00 06 01 03 00 00 00 02 00 C9 事务处理标识符 2字节 00 00 协议标识符 2字节 固定 00 00 00 06 长度 2字节 表示之后的字节总数 (…...

在Ubuntu服务器上快速安装一个redis并提供远程服务

一、快速安装一个Redis 第一步:更新apt源 sudo apt update第二步:下载Redis sudo apt install redis第三步:查看Redis是否已自启动 systemctl status redis二、配置Redis提供远程服务 第一步:先确保6379端口正常开放 如果是…...

玩机进阶教程------手机定制机 定制系统 解除系统安装软件限制的一些步骤解析

定制机 在于各工作室与商家合作定制rom中有一些定制机。限制用户私自安装第三方软件。或者限制解锁 。无法如正常机登陆账号等等。定制机一般用于固定行业或者一些部门。专机专用。例如很多巴枪扫描机型等等。或者一些小牌机型。对于没有官方包的机型首先要导出各个分区来制作…...

Bilstm双向长短期神经网络多输入单输出回归分析

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 BILSTM神经网络 Bilstm双向长短期神经网络多输入单输出回归分析 完整代码: Bilstm双向长短期神经网络多输入单输出回归分析.zip资源-CSDN文库 https://download.csdn.net/download/abc991835105/89087121 效果图 结果分析 展望 …...

ELK+Filebeat日志分析系统

一、ELK基本介绍: 1.ELK 简介: ELK平台是一套完整的日志集中处理解决方案(日志系统)。 将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。 ELK --> ELFK --> ELFKMQ2.ELK组件介绍…...

flex吃干抹净

Flex 布局是什么? Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。 .box{display: flex;//行内元素也可以使用flex布局//display: inline-flex; }display: flex; 使元素呈现为块级元素,…...

【单片机毕业设计8-基于stm32c8t6的RFID校园门禁系统】

【单片机毕业设计8-基于stm32c8t6的RFID校园门禁系统】 前言一、功能介绍二、硬件部分三、软件部分总结 前言 🔥这里是小殷学长,单片机毕业设计篇8基于stm32的RFID校园门禁系统 🧿创作不易,拒绝白嫖可私 一、功能介绍 -----------…...

uni-app web端使用getUserMedia,摄像头拍照

<template><view><video id"video"></video></view> </template> 摄像头显示在video标签上 var opts {audio: false,video: true }navigator.mediaDevices.getUserMedia(opts).then((stream)> {video document.querySelec…...

2024-简单点-观察者模式

先看代码&#xff1a; # 导入未来模块以支持类型注解 from __future__ import annotations# 导入抽象基类模块和随机数生成器 from abc import ABC, abstractmethod from random import randrange# 导入列表类型注解 from typing import List# 定义观察者模式中的主体接口&…...

STM32—DMA直接存储器访问详解

DMA——直接存储器访问 DMA&#xff1a;Data Memory Access, 直接存储器访问。 DMA和我们之前学过的串口、GPIO都是类似的&#xff0c;都是STM32中的一个外设。串口是用来发送通信数据的&#xff0c;而DMA则是用来把数据从一个地方搬到另一个地方&#xff0c;而且不占用CPU。…...

【JavaEE初阶系列】——网络编程 TCP客户端/服务器 程序实现

目录 &#x1f6a9;TCP流套接字编程 &#x1f36d;ServerSocket API &#x1f36d;Socket API &#x1f36d;TCP服务器 &#x1f36d;TCP客户端 &#x1f6a9;TCP流套接字编程 俩个关键的类 ServerSocket (给服务器使用的类&#xff0c;使用这个类来绑定端口号&#xff0…...

CMake构建OpenCv并导入QT项目过程中出现的问题汇总

前言 再此之前请确保你的环境变量是否配置&#xff0c;这是总共需要配置的环境变量 E:\cmake\bin E:\OpenCv\opencv\build\x64\vc15\bin F:\Qt\Tools\mingw730_64\bin F:\Qt\5.12.4\mingw73_64\bin 问题一&#xff1a; CMake Error: CMake was unable to find a build program…...

AcWing 796. 子矩阵的和——算法基础课题解

AcWing 796. 子矩阵的和 题目描述 输入一个 n 行 m 列的整数矩阵&#xff0c;再输入 q 个询问&#xff0c;每个询问包含四个整数 x1,y1,x2,y2&#xff0c;表示一个子矩阵的左上角坐标和右下角坐标。 对于每个询问输出子矩阵中所有数的和。 输入格式 第一行包含三个整数 n&…...

macos 查看 远程服务器是否开放某个端口

想要使用mac查看远程服务器某个端口是否开发&#xff0c;可通过 nc 命令&#xff0c;如下&#xff1a; nc -zv <服务器IP> <端口号>如果该端口开发&#xff0c;结果为&#xff1a;succeeded! Connection to <服务器IP> port <端口号> [类型] succeed…...

GraphQL注入

GraphQL概述 GraphQL是一种查询语言&#xff0c;用于API设计和数据交互&#xff0c;不仅仅用于查询数据库。GraphQL 允许客户端在一个请求中明确地指定需要的数据&#xff0c;并返回预期的结果&#xff1b;并且将数据查询和数据修改分离开&#xff0c;大大增加灵活性。GraphQL…...

以太坊源码阅读01

正所谓区块链&#xff0c;怎能不熟悉区块的数据结构呢&#xff1f;区块的结构体被保存在core/types/block.go文件中&#xff0c;下面是我截取出来的&#xff1a; type Block struct {header *Headeruncles []*Headertransactions Transactionswithdrawals Withdr…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇&#xff0c;相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程&#xff0c;其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线&#xff0c; n r n_r nr​ 根接收天线的 MIMO 系…...

无人机侦测与反制技术的进展与应用

国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机&#xff08;无人驾驶飞行器&#xff0c;UAV&#xff09;技术的快速发展&#xff0c;其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统&#xff0c;无人机的“黑飞”&…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)

目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 &#xff08;1&#xff09;输入单引号 &#xff08;2&#xff09;万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...