精华内容
参与话题
问答
  • 数据建模

    2019-09-14 22:36:26
    数据建模大概分为三个阶段,概念建模,逻辑建模和物理建模,其中概念和逻辑建模与数据库没关系,物理建模与数据库有关系。 1.概念建模 概念建模主要做三件事: 1.客户交流 2.理解需求 3,形成实体 2.逻辑建模 对实体...

    数据建模大概分为三个阶段,概念建模,逻辑建模和物理建模,其中概念和逻辑建模与数据库没关系,物理建模与数据库有关系。

    1.概念建模

    概念建模主要做三件事:
    1.客户交流
    2.理解需求
    3,形成实体

    2.逻辑建模

    对实体进行细化,细化成具体的表,同时丰富表结构,这个阶段的产物是可以在数据库中生成具体的表及其他数据库对象(包括主键、外键、属性列、索引、约束甚至是试图以及存储过程)。实际项目中,除了主外键之外,其他的数据库对象在 物理建模 阶段建立,因为其他数据库对象更贴近于开发,需要结合开一起做。

    3.物理建模

    将在逻辑建模阶段创建的各种数据库生成为相对应的sql代码,运行来创建相应具体数据库对象,但是这个阶段我们不仅仅创建数据库对象,针对业务需要,我们也可能做数据拆分

    实体-关系图

    也称为E-R图,提供了表示实体、属性和关系的方法,用来描述现实世界的概念模型
    构成E-R图的基本要素是实体、属性和关系

    展开全文
  • 数据建模应用

    千次阅读 2019-09-05 09:43:29
    数据建模应用一、数据建模种类1、关系建模(3NF)2、维度建模 一、数据建模种类 1、关系建模(3NF) 定义:根据实体之间的关系(E-R)梳理和组织我们的数据,这里的实体可以是我们数据库中具体的一张表。通过满足3NF...

    一、为什么要数据建模

    判断一个年轻人有没有潜力,很重要的标准,就是看他如何对待一项从来没有做过的事情。我们常常会引入“体系感”来描述这个学习和上手的过程。所谓体系,就是将做事的方法、步骤和流程,通过拆分与组合,构建出一条达到目标的路径图。无论是交代下来的新任务,还是处理一件很棘手的新事情,它们背后或多或少都一定有一套体系方法存在。它既是做事诀窍,也是避坑指南,更是帮助我们快速高效达到目标的行动指引。

    然而很少有人在做事之前,会去考虑这些东西。大多数人往往是“直觉型”选手。布置下来事情了,什么都不多问,什么也不多想,不管三七二十一凭感觉吭哧吭哧去干。如果没有一个有经验的人全程监督带着你,一定会走许多冤枉路,做许多无用功。这反映在老板眼里,就是一个效率低下的印象。普通人是先干再想,出了问题再回头去琢磨原因;聪明人是先想再干,把可能出现的错误减少到最低,最大程度避免弯路出现。这中间的区别,就是体系感(如下图):

    在这里插入图片描述
    图中的小编号就是做事的步骤。这种体系流程化的思维一旦变成习惯,能够极大提升工作效率。

    “You might put up a camping tent without assembly instructions,but would you really try to build your corporate headquarters without a documented blueprint ?”
    在建房子的时候我们也需要图纸。如果没有图纸的规划,可想而知建成的房子既丑陋又不结实。

    在这里插入图片描述

    我们通过“体系感”来把控自己,通过图纸来建立高楼大厦。同样,我们可以通过“数据模型”来管理我们的数据。

    数据模型就是数据的组织和存储方法,它强调了从业务、数据存取和使用角度合理存储数据、有了适合业务和基础数据存储环境的模型,那么大数据就会获得以下好处:

    性能

    良好的数据模型你帮助我们快速查询所需要的数据,减少数据的IO吞吐。
    

    成本

    良好的数据模型能极大地减少不必要的数据冗余,也能实现计算结果复用,
    极大地降低大数据系统中的存储和计算成本。
    

    效率

    良好的数据模型能极大地改善用户使用数据的体验,提高使用数据的效率。
    

    质量

    良好的数据模型能改善数据统计口径的不一致性,减少计算错误的可能下。
    

    二、数据建模种类

    1、关系建模(3NF)

    定义:通过实体关系(E-R)体现企业经营活动的业务要素和业务规则,通过满足 3NF 设计消除数据冗余。

    优点:模型稳定、灵活、扩展性强

    缺点:牺牲一定数据访问的便利性和业务的可理解性

    适用性:适用核心基础数据的组织和管理(ODS层)

    应用行业:非互联网行业,如传统金融、证券行业、电信行业、零售、航空等

    3NF核心表间关系:1-1;n-1;1-n;n-n;

    数据库的设计:从事物出发、减少冗余;

    数据的仓库:从分析出发

    2、维度建模

    定义:按照维度表、事实表构建数据模型,通过指标评价企业经营活动

    优点:容易理解,可分析性高(DM层)

    缺点:稳定性扩展性弱、数据冗余

    适用性:从业务需求出发,为分析提供服务

    适用行业:互联网行业

    三、3NF数据建模

    三范式设计可查看之前的博客:https://blog.csdn.net/weixin_45399233/article/details/95957046

    1、范式介绍

    1NF:属性原子不可分

    2NF:满足 1NF,且表中的每一个非主属性,必须完全依赖于本表的主键

    3NF:确保每列都和主键列直接相关,而不是间接相关

    2、3NF建模实战

    业务场景:某个同学在 XXX 银行的 XXX 支行的柜台新开了一个账户,并且存入了100人民币活期。

    业务要素:客户信息、账户信息和交易信息等

    3NF建模:
    在这里插入图片描述

    四、维度建模

    1、维度和指标的概念

    按照维度表、事实表构建数据模型,通过指标评价企业经营活动。

    维度一般包括:地区、时间、部门、产品等等。

    指标一般包括:销售数量、销售金额、平均销售金额等等。

    2、星型模型

    星型模是一种多维的数据关系,它由一个事实表和一组维表组成。每个维表都有一个维作为主键,所有这些维的主键组合成事实表的主键。强调的是对维度进行预处理,将多个维度集合到一个事实表,形成一个宽表。这也是我们在使用 hive 时,经常会看到一些大宽表的原因,大宽表一般都是事实表,包含了维度关联的主键和一些度量信息,而维度表则是事实表里面维度的具体信息,使用时候一般通过 join 来组合数据,相对来说对OLAP 的分析比较方便。
    在这里插入图片描述
    星型模型以事实表为中心,周围可以有很多维度,这些维度只能有一级维度(维度下面不能有子维度)

    3、雪花模型

    当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,其图解就像多个雪花连接在一起,故称雪花模型。雪花模型是对星型模型的扩展。它对星型模型的维表进一步层次化,原有的各维表可能被扩展为小的事实表,形成一些局部的 "层次 " 区域,这些被分解的表都连接到主维度表而不是事实表。雪花模型更加符合数据库范式,减少数据冗余,但是在分析数据的时候,操作比较复杂,需要 join 的表比较多所以其性能并不一定比星型模型高。
    在这里插入图片描述
    雪花模型以事实表为中心,周围可以有很多维度,维度下面可以有子维度

    4、星型与雪花模型对比

    查询速度 扩展性 冗余度 对事实表的情况 表个数
    星型模型 快(一般2张表join) 扩展性比较弱
    雪花模型 慢(一般多张表join) 扩展性比较强 增加宽度 字段比较少,冗余低

    5、维度建模测试案例

    业务需求高层领导想看不同地区、不同时间、不同部门、不同产品的销售数量、销售金额和平均销售金额?

    梳理维度和指标

    维度包括:

    • 地区

    • 时间(每天、每周、每月)

    • 时间是yyyy-mm-DD HH:mm:ss

      基本维度:yyyy-mm-DD HH:mm:ss

      衍生维度:day、week、month、quarter、year

    • 部门

    • 产品

    指标包括:

    • 基础指标

      销售数量、销售金额

    • 衍生指标

      平均销售金额

    业务系统里面有一张销售表:

    saler_id productName date amount price city
    001 P30 2019-09-05 20:05:30 1 3000 北京

    产品维度:

    productId productName
    s001 iphoneX
    s002 P30
    s003 MI8
    s004 R20

    时间维度:

    date day week month quarter year
    2019-09-05 20:05:30 20190905 36 201909 3 2019

    地区维度:

    area_id cityName
    010 北京

    创建事实表(fact):

    saler_id productId date area_id count price
    01 P30 2019-09-05 010 1000 3000

    在这里插入图片描述
    分析指标:

      select p.productName,sum(price) from fact f join product p on f.productId = p.productId group by p.productName; 
    

    五、3NF建模与维度建模的区别

    业务场景:大家去超市买东西,付完钱会给你一张购物明细,同学们想一下,这张购物明细分别用3NF建模和维度建模,怎么做?

    3NF建模如下:

    在这里插入图片描述
    维度建模如下:

    在这里插入图片描述

    六、指标和维度建模步骤

    1、业务需求转化为数据接口

    2、维度梳理

    3、指标梳理和确认

    指标分类:

    • 可加:如金额、数量等

    • 不可加:如折扣、汇率等

    4、一致性分析矩阵

    维度\指标 销售量 销售金额 平均销售金额
    日期
    时间
    地区
    商品
    展开全文
  • 数据建模 & 过程建模

    2019-05-24 09:23:00
    数据建模 过程建模 转载于:https://www.cnblogs.com/gameforpeace/p/10916092.html

    数据建模

     

    过程建模

     

    转载于:https://www.cnblogs.com/gameforpeace/p/10916092.html

    展开全文
  • 数据建模步骤

    2020-05-04 16:03:14
    数据建模,通俗地说,就是通过建立数据科学模型的手段解决现实问题的过程。数据建模也可以称为数据科学项目的过程,并且这个过程是周期性循环的。 数据建模的具体过程可分为六大步骤,如下图所示: 一、制订目标...

     

    数据建模,通俗地说,就是通过建立数据科学模型的手段解决现实问题的过程。数据建模也可以称为数据科学项目的过程,并且这个过程是周期性循环的。

    数据建模的具体过程可分为六大步骤,如下图所示:

    一、制订目标

    制订目标的前提是理解业务,明确要解决的商业现实问题是什么?

    如:电商平台用户评价的情绪分类。

    二、数据理解与准备

    基于要解决的现实问题,理解和准备数据,一般需要解决以下问题:

    1. 需要哪些数据指标(特征提取)
    2. 数据指标的含义是什么?
    3. 数据的质量如何?(是否有缺失值)
    4. 数据能否满足需求?
    5. 数据还需要如何加工?(如:数据指标装换,标签化)
    6. 探索数据中的规律和模式,进而形成假设。(模型选择)

    需要注意的是,数据准备工作可能需要尝试多次。因为在复杂的大型数据中,较难发现数据中存在的模式,初步形成的假设可能会被很快推翻,这时一定要静心钻研,不断试错。

    数据建模后需要评估模型的效果,因此一般需要将数据分为训练集和测试集。

    三、建立模型

    在准备好的数据基础上,建立数据模型,这种模型可能是机器学习模型,也可能不需要机器学习等高深的算法。选择什么样的模型,是根据要解决的问题(目标)确定的。

    当然可以选择两个或以上的模型对比,并适当调整参数,使模型效果不断优化。

    四、模型评估

    模型效果的评估有两个方面:一是模型是否解决了需要解决的问题(是否还有没有注意和考虑到的潜在问题需要解决);二是模型的精确性(误差率或者残差是否符合正态分布等)。

     

    五、结果呈现

    结果呈现主要关注以下三个方面:

    1. 模型解决了哪些问题?
    2. 解决效果如何?
    3. 如何解决问题?具体操作步骤是什么?

    六、模型部署

    通过大量数据解决了一个或多个重要的现实问题,需要将方案落实下去,一般情况下需要通过线上技术环境部署落实,从而为后面不断优化模型、更好地解决问题打下基础。

    交由工程人员部署技术环境,需要数据建模团队撰写需求文档,并确保工程人员理解需求文档的内容,才能达到较好的模型部署效果。

     

    展开全文
  • UML建模之数据建模

    2014-11-24 22:37:15
    二、数据建模元素 1、表(Table) 2、表索引(Table Index) 3、表触发器(Table Trigger) 4、表约束(Table Constraint) 5、视图(View) 6、存储过程(Stored Procedure) 三、数据建模实例 四、总结 ...
  • 领域建模 领域建模-概念与数据建模
  • 数据建模过程

    2019-04-25 17:04:46
    数据建模过程1. 获取数据2. 数据处理2.1 二值化2.2 分箱2.3 one-hot2.4 tf-idf3. 选择算法4. 模型评估 仅仅是自己学习的小记录,可能会和大佬的有出入,有错误欢迎指出~~ 1. 获取数据 根据需求可以爬虫,还有一些在...
  • 支付宝数据建模介绍

    千次阅读 2015-12-21 00:42:32
    支付宝数据建模介绍
  • 大数据数据建模

    千次阅读 2018-11-19 18:08:54
    今天给大家分享一下 数据开发工作中数据建模的步骤,  第一步:选择模型或者自定义模型 这第一步需要我们基于业务问题,来决定我们需要选择哪种模型,目前市场中有很多模型可以供我们选择, 比如,如果要预测...
  • 对数据仓库进行数据建模

    千次阅读 2019-04-07 19:43:57
    数据仓库引入了新的术语,扩展了数据建模的术语表。为使本文的阐述能够完备,下面我介绍一下最常用的术语。 数据仓库 数据仓库是一个支持管理决策的数据集合。数据是面向主题的、集成的、不易丢失的并且是时间变量...
  • 13- 数据建模-建模方法三:实体建模

    千次阅读 2019-07-11 20:36:13
    我们在数据仓库的建模过程中完全可以引入这个抽象的方法,将整个业务也可以划分成一个个的实体,而每个实体之间的 关系,以及针对这些关系的说明就是我们数据建模需要做的工作。  虽然实体法粗看起来好像有一些...
  • 主数据管理方法论之主数据建模

    千次阅读 2019-09-13 17:35:11
    主数据管理方法论之主数据建模 当我们确定了企业中到底有多少主数据后,下一步就需要为每个主数据确定它的属性字段了,也就是我们通常说的主数据建模。主数据建模有时可以做的非常繁琐,元数据建模,数据库建模...
  • 数据建模与分层

    千次阅读 2019-01-10 11:05:04
    数据分层 1 ods层:近源数据层,表结构与源系统表结构高度相似,通常在ods层主要会做字段的筛选,枚举值转换,编码统一,异常&缺失数据处理等操作。...数据建模方式: 1 维度建模源于Kimball提出的总线...
  • MySQL Workbench数据建模与开发

    热门讨论 2014-06-24 15:34:22
    Oracle ACE Michael最新作品,史上最全面的MySQL Workbench数据建模图书,大数据时代来临,从数据建模开始,一步步地创建自己的数据库
  • 关系建模 维度建模
  • Elasticsearch 数据建模

    千次阅读 2018-06-27 23:09:59
    数据建模:英文为Data Modeling,为创建数据模型的过程 数据模型(Data Model) 对现实世界进行抽象描述的一种工具和方法 通过抽象的实体及实体之间联系的形式去描述业务规则,从而实现对现实世界的映射 数据...
  • 数据建模(Data Modeling)是什么?

    万次阅读 2019-05-23 21:33:05
    什么是数据建模数据建模(Data modeling)是为要存储在数据库中的数据创建数据模型的过程。数据建模在概念上包括以下3个部分: 数据对象(Data objects) 不同数据对象之间的关联(The associations b...
  • 数据建模那点事儿

    万次阅读 多人点赞 2016-04-15 11:44:38
    作者:陈丹奕今天要说内容是建模。为啥我作为一个数学能力并不...第一部分:数据建模理论和逻辑一、从数据分析的定义开始维基百科对数据分析的定义如下:Analysis of data is a process of inspecting, cleaning, t...
  • ER数据建模工具

    千次阅读 2018-11-22 18:18:55
    目录 PowerDesigner ER/Studio MySQL Workbench ...这个过程叫做数据建模。为了避免认为错误并且加快进度,我们需要使用专业的软件来帮助我们建立数据逻辑模型和物理模型、生成DDL,并且能够生...
  • 数据建模讲解和案例分析

    万次阅读 多人点赞 2017-04-18 13:34:09
    第一部分:数据建模理论和逻辑 一、从数据分析的定义开始 维基百科对数据分析的定义如下: Analysis of data is a process of inspecting, cleaning, transforming, and modeling data with the goal of ...
  • 数据建模及常见分类算法 数据建模指的是对现实世界各类数据的抽象组织,建立一个适合的模型对数据进行处理。建模流程解读 建模数据的抽取,清洗和加工以及建模算法的训练和优化会涉及大量的计算机语言和技术。比如:...
  • 浅谈数据分析和数据建模

    千次阅读 2018-03-20 07:33:42
    浅谈数据分析和数据建模大数据应用有几个方面,一个是效率提升,帮助企业提升数据处理效率,降低数据存储成本。另外一个是对业务作出指导,例如精准营销,反欺诈,风险管理以及业务提升。过去企业都是通过线下渠道...
  • 数据建模方式

    千次阅读 2012-03-10 10:52:51
    提起数据建模来,有一点是首先要强调的,数据建模师和DBA有着较大的不同,对数据建模师来说,对业务的深刻理解是第一位的,不同的建模方法和技巧是为业务需求来服务的。而本文则暂时抛开业务不谈,主要关注于建模...
  • 二、数据建模元素 1、表(Table) 2、表索引(Table Index) 3、表触发器(Table Trigger) 4、表约束(Table Constraint) 5、视图(View) 6、存储过程(Stored Procedure) 三、数据建模实例 四、总结 ...
  • 数据建模概要 数据建模的过程是将现实中的业务不断地进行抽象化(Abstraction),实现从现实世界(RealWorld)中的业务为概念世界(Conception World)中的模型,再到计算机世界(ComputerWorld)中的表的转换...
  • 金融风控数据建模导论

    千次阅读 2018-11-09 14:35:16
    金融风控具体在哪个环节才需要数据建模 贷前审核 贷后管理 反欺诈 1.2 金融机构信贷风控流程介绍 (1)客户申请 没啥可说的 (2)资料填写 具体个人信息填写错误,金融机构会要求客户重新填写,...

空空如也

1 2 3 4 5 ... 20
收藏数 31,456
精华内容 12,582
关键字:

数据建模