数据模型设计需要什么技能?

作者: 6chen | 来源:发表于2017-08-13 11:54 被阅读97次

数据模型的设计是需要精雕细琢的,很多时候把数据模型的设计比喻为建筑设计,虽然,我并不会建筑设计,但是,我觉得每一个行业的设计工作都不是一件容易的事情,也都不是入门者一天两天能精通的。设计本身就是一件基于知识、经验和认知来预想未来事物的事情。必须具备对某个行业知识的大量储备,才可能客观地做出取舍,设计出可行的、高质量的产出,并经过不断的迭代和积累来创新。

数据模型设计的工作和用途,不同的人都有不同的理解和看法,比如说,有的人认为数据模型就是数据库表结构的设计,有的人认为数据模型可以看做是对业务数据的分类和关联。这些都没有错,这些都是模型的用途,就是为了让使用模型的人知道系统或数据库里的数据都有什么、放在了哪以及有啥关联性。

也正是因为模型里能够表达这些内容,决定了设计数据模型时要具备多样化的技能,首先要知道设计什么内容的模型,这就需要反复的收集需求,反复地分析和确认。而理解了需求之后还要知道怎么将这些内容给画在一张图里,在画图的时候还要考虑到系统程序处理的逻辑,数据和数据之间的关系。不仅如此,设计出来的模型最终要放到数据库中使用,所以,不仅需要知道怎么放和怎么取,还要考虑放到数据库里使用时候的便利性、效率性能等。要想设计出合理和通用的模型,还需要和大量的参考模型进行对标、分析和改造等。

简单地罗列一下我觉得想学好数据建模,需要的能力:

  • 通过良好的沟通收集、分析、确认需求
  • 使用建模工具画实体关系图,理解模型的表达方式
  • 理解程序处理逻辑
  • 了解行业业务和参考模型
  • 会使用SQL处理数据
  • 理解数据库性能优化相关知识

这么多东西想学会也不可能一天两天就能搞定的,只能循序渐进地来,随着了解的知识越来越多,对数据模型也就会不断有新的认识。

虽然从某种角度划分了多个阶段,但是,初级阶段会存在一定的先后顺序,达到中级以后就不一定非要按照顺序来,每一部分知识的学习都会扩展思维,提高设计的能力。

第一阶段

学会使用建模工具画实体关系图,着重理解实体、属性和关系等的含义,尤其是各种关系的表达方式

第二阶段

深入模型的表达和数据的实际形态,并理解不同的表达方式有哪些区别,在这个阶段强化通过模型看数据的思维

第三阶段

理解数据和数据之间的关系和层级概念,懂得对数据进行抽象,并根据实际需求判断合理性

第四阶段

理解高级模型设计的方法,应用这些方法在需要的部分提高模型的灵活性

第五阶段

理解关系型数据库性能优化的相关知识,能够从性能角度评价模型,并结合需求应用优化手段和反范式等物理模型设计方法提高模型的质量

第六阶段

业务是核心中的核心,对业务知识有了通透的理解才能通过模型表达的手段,设计出符合业务需求的模型。不仅如此,各个行业内都有很多参考模型,分析和理解参考模型,了解不同行业模型的共同点和不同点,也是提高模型设计能力的手段之一

相关文章

  • 数据模型设计需要什么技能?

    数据模型的设计是需要精雕细琢的,很多时候把数据模型的设计比喻为建筑设计,虽然,我并不会建筑设计,但是,我觉得每一个...

  • Power Designer—物理数据模型

    1、物理数据模型 PDM 物理数据模型(Physical Data Model)PDM,提供了系统初始设计所需要的...

  • 什么?“针”居然是设计师最需要的东西!

    文|卜泉 图| 网络 对于设计师来说,什么是最需要的东西? 设计技能?技能越高,也就意味着设计起来越得心应手。 创...

  • 【DAX学习】1、DAX的一些事儿

    DAX是专门为在数据模型上计算业务公式而设计的。 大家可能已经知道什么是数据模型。 如果没有,我们将从数据模型和关...

  • 游戏设计艺术

    Chapter1 太初之时,有设计师 1 咒语 我是游戏设计师 2 游戏设计师需要什么技能 3 最重要的技能 倾听...

  • 基于Swagger的RESTful API开发之工具篇

    基于Swagger的RESTful API开发之工具篇 一、数据模型设计(docson) 数据模型设计采用docs...

  • 维度建模的实施流程

    什么是 建模? 决定了数据存储的方式,表的设计 为什么要建模? 大数据系统需要数据模型方法来帮助更好地组织和存储数...

  • UI设计师需要掌握什么知识?怎么学?

    UI设计师需要掌握什么技能吗? 每一个公司对UI设计师的技能要求都不尽相同,你需要查看你想去的公司对岗位的要求,有...

  • ORM 简介

    ORM简介 MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖...

  • 如何设计权限系统

    # 权限系统的数据模型 常用的数据模型如图,设计角色的目的是为了方便批量管理用户的权限;设计权限码的目的是避免角色...

网友评论

本文标题:数据模型设计需要什么技能?

本文链接:https://www.haomeiwen.com/subject/mdosrxtx.html