首页 > 其他分享 >读者提问:数据建模听起来好高大尚,但很抽象,该怎么理解 ?| 什么是数据建模?

读者提问:数据建模听起来好高大尚,但很抽象,该怎么理解 ?| 什么是数据建模?

时间:2024-09-05 08:52:21浏览次数:10  
标签:数据 模型 建模 业务 抽象 提问 数据模型

目录

1 什么是数据?

2 什么是信息?

3 什么是模型?

4 什么是数据建模?

数字化建设通关指南专栏原价99,现在活动价29.9,按照阶梯式增长,直到恢复原价

主要内容包括:

1 SQL进阶实战技巧

2 数仓建模实战技巧和个人心得


     近期跟一些读者聊,好多读者表示对数据建模这一概念不是很理解,理解起来很抽象,那么到底什么是数据建模?今天我们就聊聊这一话。

1 什么是数据?

     数据是对事实的反应,将客观存在的事物用数值的形式反应出来。以35°C为例,“温度是35°C”代表不了任何东西。它有可能是今天的天气,也有可能是水温,我们一般认为它只是一个数字事实,而“2024年9月4号上午10点,重庆市的温度是40°C”则是一个更加场景化的数据。实际上,大部分数据都是依赖于场景,我们不能脱离场景来看数据。以连锁零售行业为例,两个门店日销售额分别达到5000元和8000元,仅凭这两个数字来单独评判其经营情况,其实是有失公平的。我们要看它在一线还是二线城市?它是 CBD 商圈店、学校店或是公园店?它是旗舰、直营店或是加盟店?所以我们在描述一个数据的时候,一定要基于某些具体的场景。因此数据加场景,场景化的数据才有意义,也就是数据的数值前面必须带有必要的限定修饰语,有维度信息才有意义

2 什么是信息?

     重庆气温到达40度时候会比我们平时热,市政府会进行红色预警,这就是信息。所以数据和信息最大的区别是:信息是有比较的,有场景的,同时也是有判断标准的。从某种角度来看,我们可以将信息想象成红黄绿灯。为了认定某事物为信息,你必须要告诉我,它是好是坏?它是红灯、黄灯还是绿灯?这是数据到信息的一个重要转变,因此我们将信息抽象为它是数据+场景+规则的体现。

3 什么是模型?

     从软件设计角度, 百度百科给出了定义:通过主观意识,借助实体或者虚拟表现,构成客观阐述形态和结构的一种表达目的的事物,事物可以是虚拟可以是实体的,可以理解为就是一种输入输出的框架。

    从数学角度,模型就是描述输入与输出关系的东西(公式、方程、关系式等),也即函数。

    从生物学角度:模型是人们为了特定的目的,对认知对象所作的简化的概括的描述,这种描述可以是定性的,也可以是量化的;有的借助具体的事物或者其他形象化的手段,有的则是通过抽象的形式表达。

     也有人认为,模型用以表征现象、概念、过程、事件或者物体,它可以以不同的表征方式来呈现(如图像、文字等多元方式),以达到不同的功能与目的(如解释性、描述性等)。

     依据上面众多的定义,我们可以看出模型就是输入输出转换的规则或规律,是对现实事物各种关系以及特征进行的一种抽象描述。比如linux的进程的内存模型,说的就是创建一个进程时,进程的内存模型生成的规则是什么样的。输入就是创建进程的接口比如fork或clone,输出就是进程数据结构和按照内存模型搞的内存布局。

4 什么是数据建模?

      数据模型咋一听觉得很高大尚,很多初学者或对初次接触这个概念的人往往容易会和数学模型联系上,以为是关于算法、数学的一些高深的东西,觉得很神秘,其实他只是数据建设、数据组织中的一种术语,是对现实世界中物理实体之间关系的数据反应,通过数据来组织实体与实体,对象与对象之间的关系和行为。

     再来说数学模型,数学也是对现实世界各种复杂关系、活动的抽象,这种抽象用数学的语言表达出来,就是各种数学符合组成的数学公式,只不过用数学公式来描述现实中的逻辑、规律和活动,因此我们可以得到凡是把这种关于抽象的过程、活动都可以定义为建模的过程。又比如在数仓建设初期,我们要首先要进行指标体系的构建,指标体系的构建实际上就是将业务目标进行拆解并用数据来反映事实的过程,本质上也是业务抽象的过程,我们往往也把这一阶段称为业务建模过程或BI建模过程。

      数据模型是与数据相关的,是对业务逻辑、业务关系、业务活动、业务属性的深层次的数据抽象,而把这种数据抽象称为数据模型。数据建模的过程反应到数据库中,其实就是表设计的过程,通过一张表来反应业务活动、业务关系、业务逻辑及业务属性,把这些信息通过数据的形式呈现出来。

    因此我们给出结论:数据建模就是表设计组织数据的过程,而这种组织数据过程总结下来就是事实+规则+场景的反应,业务活动即事实,业务关系+业务逻辑 即规则,业务属性反应场景。

5 小结

本文主要对数据建模相关概念进行了深入探讨,注意不要把业务流程建模与数据建模混为一谈。业务建模与数据建模,都存在抽象设计,业务建模是对业务流程的抽象,数据建模是对数据的抽象,不同业务流程可以使用相同的数据,表现为数据在业务中流转,业务建模方法可以帮助设计概念数据模型。如果仅从业务视角看数据,实现数据模型,不可能实现企业数据的单一真相。数据建模应独立于业务流程建模,不能因业务流程的变更而影响数据模型的稳定性。比如,维度建模第一步“选择过程”,是基于现有的业务流程中产生的数据,而不是未来期望构建的业务流程,维度建模以“选择”为主,更适合业务用户。

 如果觉得本篇文章对你还有点帮助,那么不妨也可以选择去看看我的博客专栏文章,里面内容更精彩。具体专栏内容如下(部分展示):

数字化建设通关指南专栏原价99,现在活动价29.9,按照阶梯式增长,直到恢复原价

主要内容包括:

1 SQL进阶实战技巧


可以参考如下教程,具体链接如下

SQL很简单,可你却写不好?也许这才是SQL最好的教程_sql语句写的很烂怎么办-CSDN博客

上面链接中的文章及技巧会不定期更新。

2 数仓建模实战技巧和个人心得

文章部分标题展示如下:
       1)新人入职新公司后应如何快速了解业务?

       2)以业务视角看宽表化建设?

       3)  维度建模 or 关系型建模?

       4)业务模型与数据模型有什么区别?业务阶段的模型该如何建设?

       5)业务指标体系该如何建设?指标体系该如何维护?指标平台应如何建设?指标体系                           该由谁来搭建?

       6)如何优雅设计DWS层?DWS层模型好坏该如何评价?

       7)指标发生异常,该如何排查?应从哪些方面入手寻找问题点?

       8) 数据架构的选择,mpp or hadoop?

       9)数仓团队应如何体现自己的业务价值,讲好数据故事?

       10)BI与大数据有什么关系?BI与信息化、数字化之间有什么关系?BI与报表之间的关                          系?

       11)数据部门如何与业务部门沟通,并规划指引业务需求?

文章不限于以上内容,有新的想法也会及时更新到该专栏。

具体专栏链接如下:

数字化建设通关指南_莫叫石榴姐的博客-CSDN博客

标签:数据,模型,建模,业务,抽象,提问,数据模型
From: https://blog.csdn.net/godlovedaniel/article/details/141888977

相关文章

  • 2024年全国大学生数学建模竞赛A-E题思路解析+代码+论文
    2024年高教社杯全国大学生数学建模竞赛(以下简称国赛)将于9月5日晚6时正式开始。下文包含:2024国赛思路解析​、国赛参赛时间及规则信息说明、好用的数模技巧及如何备战数学建模竞赛C君将会第一时间发布选题建议、所有题目的思路解析、相关代码、参考文献、参考论文等多项资料,帮......
  • Day85 APP攻防-资产收集篇&反证书检验&XP框架&反代理VPN&数据转发&反模拟器
    知识点1、APP资产-抓包突破&反模拟器2、APP资产-抓包突破&反证书检验3、APP资产-抓包突破&反代理VPN没有限制过滤的抓包问题:1、抓不到-工具证书没配置好2、抓不到-app走的不是http/s不走http/s协议的数据包抓不到可以用封包抓有限制过滤的抓包问题:3、抓不到-......
  • 【D3.js in Action 3 精译_021】第三章 数据的处理 + 3.1 理解数据
    当前内容所在位置第一部分D3.js基础知识第一章D3.js简介(已完结)1.1何为D3.js?1.2D3生态系统——入门须知1.3数据可视化最佳实践(上)1.3数据可视化最佳实践(下)1.4本章小结第二章DOM的操作方法(已完结)2.1第一个D3可视化图表2.2环境准备2.3......
  • Cinema 4D v2024 激活版下载与安装教程 (3D建模工具)
    安装步骤Cinema4Dv2024版:Cinema4D_2024_2024.3.0.zip1、下载解压后点击如下图运行安装2、选择安装路径,将C改成D,安装到D盘符3、安装中,耐心等待2-5分钟4、安装完取消勾选,点击完成,请先不要启动软件。5、将crack文件夹c4d_base.xdl64文件覆盖corelibs文件夹,如下图所示找......
  • vue3.2 v-model 双向数据绑定实现
    代码实现示例子组件实现双向绑定<template><divclass="component-name"><inputtype="text":value="modelValue"@input="handleChange"/></div></template><scriptsetuplang=&qu......
  • pandas数据处理库使用
    1、pandas简介Pandas(PanelData的缩写)是一个开源的Python数据处理库,它提供了高性能、易用的数据结构和数据分析工具,用于处理和分析结构化数据。Pandas的核心数据结构是DataFrame和Series,它们使数据的清理、转换、分析和可视化变得非常便捷。2、Series使用2.1、Series是一种类似一......
  • 6.1.数据结构-c/c++模拟实现堆上篇(向下,上调整算法,建堆,增删数据)
    目录一.堆(Heap)的基本介绍二.堆的常用操作(以小根堆为例)三.实现代码3.1堆结构定义3.2向下调整算法*3.3初始化堆*3.4销毁堆3.4向上调整算法* 3.5插入数据3.6删除数据3.7返回堆顶数据四.下篇内容1.堆排序2.TopK问题一.堆(Heap)的基本介绍    ......
  • 数据结构——单链表查询、逆序、排序
    1、思维导图2、查、改、删算法//快慢排序法找中间值intmid_link(Link_t*plink){Link_Node_t*pfast=plink->phead;Link_Node_t*pslow=pfast;intm=0;while(pfast!=NULL){pfast=pfast->pnext;++m;if(m%......
  • 【数据结构】时间复杂度空间复杂度
    1、时间复杂度1.1大O渐进表示法大O符号(BigOnotation):是用于描述函数渐进行为的数学符号。推导大O阶方法:用常数1取代运行时间中的所有加法常数。在修改后的运行次数函数中,只保留最高阶项。如果最高阶项存在且不是1,则去除与这个项目相乘的常数。得到的结果就是大O阶......
  • 【python因果推断库6】使用 pymc 模型的工具变量建模 (IV)1
    目录使用pymc模型的工具变量建模(IV)使用pymc模型的工具变量建模(IV)这份笔记展示了一个使用工具变量模型(InstrumentalVariable,IV)的例子。我们将会遵循Acemoglu,Johnson和Robinson(2001)的一个案例研究,该研究尝试解开强大的政治机构对于以国内生产总值(GDP)......