数据仓库【1】:简介

数据仓库【1】:简介

1、诞生背景

1.1、数据仓库诞生原因

  • 历史数据积存
  • 企业数据分析需要

1.2、历史数据积存

  • 历史数据使用频率低,堆积在业务库中,导致性能下降

1.3、企业数据分析需要

  • 各个部门自己建立独立的数据抽取系统,导致数据不一致

2、基本概述

2.1、数据仓库(Data Warehouse,DW)

  • 由数据仓库之父比尔·恩门(Bill Inmon)提出
  • 数据仓库是一个面向主题的、集成的、非易失的且随时间变化的数据集合
  • 主要用于组织积累的历史数据,并使用分析方法(OLAP、数据分析)进行分析整理,进而
    辅助决策,为管理者、企业系统提供数据支持,构建商业智能

2.2、数据仓库特点

  • 面向主题:为数据分析提供服务,根据主题将原始数据集合在一起
  • 集成:原始数据来源于不同数据源,要整合成最终数据,需要经过抽取、清洗、转换的过程
  • 非易失:保存的数据是一系列历史快照,不允许被修改,只允许通过工具进行查询、分析
  • 时变性:数仓会定期接收、集成新的数据,从而反映出数据的最新变化

2.3、数据仓库 VS 数据库

  • 数据库面向事务设计,属于OLTP(在线事务处理)系统,主要操作是随机读写;在设计时尽
    量避免冗余,常采用符合范式规范来设计
  • 数据仓库是面向主题设计的,属于OLAP(在线分析处理)系统,主要操作是批量读写;关
    注数据整合,以及分析、处理性能;会有意引入冗余,采用反范式方式设计

3、技术实现

3.1、数据仓库建设方案

  • 传统数据仓库
  • 大数据数据仓库

3.2、传统数据仓库

  • 由关系型数据库组成MPP(大规模并行处理)集群

3.3、大数据数据仓库

  • 利用大数据天然的扩展性,完成海量数据的存放
  • 将SQL转换为大数据计算引擎任务,完成数据分析

4、MPP & 分布式架构

4.1、MPP架构

  • 传统数仓中常见的技术架构,将单机数据库节点组成集群,提升整体处理性能
  • 节点间为非共享架构(Share Nothing),每个节点都有独立的磁盘存储系统和内存系统
  • 每台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供服务
  • 设计上优先考虑C(一致性),其次考虑 A(可用性),尽量做好P(分区容错性)
    架构优点
    • 运算方式精细,延迟低、吞吐低
    • 适合中等规模的结构化数据处理
      架构缺点
    • 存储位置不透明,通过Hash确定数据所在的物理节点,查询任务在所有节点均会执行
    • 并行计算时,单节点瓶颈会成为整个系统短板,容错性差
    • 分布式事务的实现会导致扩展性降低

4.2、分布式架构

  • 大数据中常见的技术架构,也称为Hadoop架构/批处理架构
  • 各节点实现场地自治(可以单独运行局部应用),数据在集群中全局透明共享
  • 每台节点通过局域网或广域网相连,节点间的通信开销较大,在运算时致力减少数据移动
  • 优先考虑的是P(分区容错性),然后是A(可用性),最后再考虑C(一致性)
    架构特点
    • 解决了单点故障问题,会将出错的任务调度到其他副本节点
    • 运算方式粗犷,吞吐量大
    • 扩展性极强,适合处理非结构化、半结构化数据
    • 需要将中间结果进行存储,且数据移动开销较大

4.3、MPP + 分布式架构

  • 数据存储采用分布式架构中的公共存储,提高分区容错性
  • 上层架构采用MPP,减少运算延迟

5、常见产品

5.1、传统数据仓库

  • Oracle RAC
  • DB2
  • Teradata
  • Greenplum

5.2、大数据数据仓库

  • Hive
  • Spark SQL
  • HBase
  • Impala
  • HAWQ
  • TIDB
相关推荐
Jason不在家1 小时前
Flink 本地 idea 调试开启 WebUI
大数据·flink·intellij-idea
Elastic 中国社区官方博客2 小时前
使用 Vertex AI Gemini 模型和 Elasticsearch Playground 快速创建 RAG 应用程序
大数据·人工智能·elasticsearch·搜索引擎·全文检索
CHICX12293 小时前
【Hadoop】改一下core-site.xml和hdfs-site.xml配置就可以访问Web UI
xml·大数据·hadoop
权^4 小时前
MySQL--聚合查询、联合查询、子查询、合并查询(上万字超详解!!!)
大数据·数据库·学习·mysql
bin91538 小时前
【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化
极客先躯11 小时前
Hadoop krb5.conf 配置详解
大数据·hadoop·分布式·kerberos·krb5.conf·认证系统
2301_7869643613 小时前
3、练习常用的HBase Shell命令+HBase 常用的Java API 及应用实例
java·大数据·数据库·分布式·hbase
matlabgoodboy14 小时前
“图像识别技术:重塑生活与工作的未来”
大数据·人工智能·生活
happycao12314 小时前
Flink 03 | 数据流基本操作
大数据·flink
Neituijunsir15 小时前
2024.09.22 校招 实习 内推 面经
大数据·人工智能·算法·面试·自动驾驶·汽车·求职招聘