热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

数据仓库知识点梳理(1)camash

近几年随着「大数据」、「数据驱动」、「数据中台」等概念在互联网界的热炒,懂数据的获取、处理到算法推荐、模型预测等人才也得到热捧。观感上,这些技能领域是随着大数据时代而来的。而实际上

数据仓库知识点梳理(1)

近几年随着「大数据」、「数据驱动」、「数据中台」等概念在互联网界的热炒,懂数据的获取、处理到算法推荐、模型预测等人才也得到热捧。观感上,这些技能领域是随着大数据时代而来的。而实际上,早在上世纪80年到90年代初数据仓库和数据决策支持系统概念已经提出,本质上都是将多源头的数据集中起来,采用统计学的方法来进行数据分析以支持企业的各种决策。

既然换汤不换药,我们可以通过数据仓库知识来指导在大数据工程的实践。本文将对数据仓库的发展历史和背景进行介绍,作为「数据仓库知识梳理」系列的第一篇文章。

01 数据存储的发展历程

从狭义上讲,数据仓库也是一种数据的存储形式。从电子计算机出现以来,数据的数字化存储大致经历了下面的几个阶段。

  • 1950s
    打孔卡(Punch cards),首个存储数据的介质
  • 1960s
    磁性存储(磁带、磁盘)
  • 1970s
    首个数据库管理软件(IMS), 层次型数据库
    DBTG,网状数据库
  • 1980s早期
    关系数据模型,RDBMS的实现
  • 1980s末-1990s
    数据挖掘,数据仓库(W. H. Inmon)
    95年数据仓库流行:IBM的dw方案,Oracle/SQL Server绑定OLAP服务
  • 2000s
    随着线上数据增长,成为BI解决方案的一部分
    与大数据,NoSQL系统的结合

02 企业的决策层级

企业中部署数据仓库,其目的还是要用数据来说明现在的情况,并对下一步的动作计划提供支持。企业的决策可以分成三个层级,如下图所示。

底层可能有操作员就可以执行,比如一个电商订单物流长期处于「发出」状态,可能是出现丢件异常,就需要联系物流进行处理。中层的销售预测,需要根据历史的销售记录为主对未来一段时间的销售进行预测,这一层级可能在特定部门内使用。顶层的新市场识别或者店铺选址等动作,需要考虑整个公司的数据甚至是外部的数据,如地理、人口、经济数据等结合起来而作出决策。

因此,在建立数据仓库或者数据中台的时候,不是说越复杂的系统就越好,关键是看需要支持怎么样的决策层级。其次还要考虑实施难度和建设周期等多个方面的因素。

03 数据库技术的限制

上一小节中的「异常订单处理」,如果单纯考虑超时提醒功能,可以直接在关系型数据库中实现。但是上层的决策,在关系型数据库上开发可能会遇到以下的3个问题。

1.性能限制:
1.不能同时保证事物处理和BI决策类型的统计查询;

2.集成度不够:
1.C/S,B/S架构,数据库独立服务特定应用,数据是分散的
2.还有外部数据源的数据
3.各系统间的名称、单位口径的统一

3.方法工具的缺失
1.统计查询的优化
2.数据建模的方法论
3.配套的统计查询和统计分析工具

基于以上原因,数据仓库与业务数据库有不同的底层设计。

04 数据仓库的定义

数据仓库是一个面向主题的、集成的、非易失的,随时间变化的用来支持管理人员决策的数据集合。

​ ——《数据仓库(第4版)》

  • 面向主题,是指对应企业中某一宏观分析领域所涉及的分析对象

    • 例如:"销售分析"就是一个分析领域

    • 这个"销售分析"所涉及到的分析对象为商品、供应商、顾客、仓库等,那么数仓主题可以确定为商品主题、供应商主题、顾客主题、仓库主题

    • 数据层面来说,主题之间可能存在数据重叠关系

  • 集成

    • 数据来自于多个异构数据源
    • 标准化的数据集成方法
  • 非易失

    • 与数据源的数据分离保存
    • 一旦数据写入数据仓库,不进行更新
    • 数据仓库的数据只支持数据的初次加载和访问
  • 随时间变化

    • 保留历史数据(数据的快照)

    • 数据仓库的数据包含时间元素(记录时间戳)

    • 数据追加方式通过不同时间上数据的变化实现

05 数据建模方式

既然数据仓库最基本的功能是存储数据,数据如何存储就是下一个问题了。数据建模方式即对数据的存储方式进行设计,目前的主流的方式为维度建模,相对而言业务数据库通常采用关心建模的方式。

上图中,左边是业务数据库模型,订单、顾客、产品表等都对于与业务中的实体,方面业务系统的数据查询和新增,减少sql的查询。其通常符合「范式」建模要求。

右边是数仓的星型模型,以一个销售主题,通过一个fact表,对接其他维度表信息。其特点是数据冗余小,大量的属性都存放在维度表中,结构清晰,便于使用相关的工具做数据分析。这里先提一下,数据仓库查询语言的工业标准其实不是sql,而是mdx,后面会单独出一篇讲下mdx的工具和简单语法。

06 架构设计

数据仓库架构设计有自顶向下构建和自底向上构建两种方式。

其中自顶向下构建方式需要从企业总体需求开始设计出整体的数据模型,然后将所有需要的数据汇集起来ETL到相应的模型对象之中,这是一种大一统的方式。最后再通过特定的权限设置,将数据的访问提供给企业下面的部门。

自底向上的方式,可以在子部门中获得特定主题的小型数据模型,建立服务于特定部门的数据仓库,它们也被称为数据集市。

至于如何选择自己的架构,可以从以下两个方面进行考虑。

  • ROI

    • 项目风险:自顶向下方式可能周期较长,部门间数据的流转必然成为制肘
    • 商业价值:数据更集中更有可能发现其中蕴含的关系
  • IT部分角度

    • 资金政策的来源:明确项目的出资方和收益方
    • 数据信息的来源:明确谁能够提供出数据

07 总结

本文简要介绍了数据储存的发展历史,数据仓库产生的原因,数据仓库的定义、数据建模方式和数仓的架构设计。

欢迎扫描二维码关注公众号


推荐阅读
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 福克斯新闻数据库配置失误导致1300万条敏感记录泄露
    由于数据库配置错误,福克斯新闻暴露了一个58GB的未受保护数据库,其中包含约1300万条网络内容管理记录。任何互联网用户都可以访问这些数据,引发了严重的安全风险。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • 非公版RTX 3080显卡的革新与亮点
    本文深入探讨了图形显卡的进化历程,重点介绍了非公版RTX 3080显卡的技术特点和创新设计。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 深入解析:手把手教你构建决策树算法
    本文详细介绍了机器学习中广泛应用的决策树算法,通过天气数据集的实例演示了ID3和CART算法的手动推导过程。文章长度约2000字,建议阅读时间5分钟。 ... [详细]
  • 在使用SQL Server进行动态SQL查询时,如果遇到LIKE语句无法正确返回预期结果的情况,通常是因为参数传递方式不当。本文将详细探讨这一问题,并提供解决方案及相关的技术背景。 ... [详细]
  • 本文介绍如何通过创建替代插入触发器,使对视图的插入操作能够正确更新相关的基本表。涉及的表包括:飞机(Aircraft)、员工(Employee)和认证(Certification)。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 深入剖析 DEX 赛道:从 60 大头部项目看五大趋势
    本文通过分析 60 大头部去中心化交易平台(DEX),揭示了当前 DEX 赛道的五大发展趋势,包括市场集中度、跨链协议、AMM+NFT 结合、新公链崛起以及稳定币和衍生品交易的增长潜力。 ... [详细]
  • 创邻科技成功举办Graph+X生态合作伙伴大会,30余家行业领军企业共聚杭州
    9月22日,创邻科技在杭州举办“Graph+X”生态合作伙伴大会,汇聚了超过30家行业头部企业的50多位企业家和技术领袖,共同探讨图技术的前沿应用与发展前景。 ... [详细]
  • 智能投顾机器人:创业者如何应对新挑战?
    随着智能投顾技术在二级市场的兴起,针对一级市场的智能投顾也逐渐崭露头角。近日,一款名为阿尔妮塔的人工智能创投机器人正式发布,它将如何改变投资人的工作方式和创业者的融资策略? ... [详细]
  • 虽然SQL因其直观易学的语法受到广泛欢迎,但转向Pandas进行数据处理时,初学者可能会感到不适应。本文旨在通过一系列实例,展示如何在Pandas中实现类似SQL的数据查询功能。 ... [详细]
author-avatar
徐大总统_584
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有