数据模型是现实世界数据特征的抽象,用于描述一组数据的概念和定义。数据模型是数据库中数据的存储方式,是数据库系统的基础。在数据库中,数据的物理结构又称数据的存储结构,就是数据元素在计算机存储器中的表示及其配置;数据的逻辑结构则是指数据元素之间的逻辑关系,它是数据在用户或程序员面前的表现形式,数据的存储结构不一定与逻辑结构一致。
数据模型的分类有三种:
第一种:层次模型 层次模型是数据库系统最早使用的一种模型,它的数据结构是一棵“有向树”。根结点在最上端,层次最高,子结点在下,逐层排列。
第二种是:网状模型 网状模型以网状结构表示实体与实体之间的联系。网中的每一个结点代表一个记录类型,联系用链接指针来实现。网状模型可以表示多个从属关系的联系,也可以表示数据间的交叉关系,即数据间的横向关系与纵向关系,它是层次模型的扩展。
第三种是:关系模型 系模型以二维表结构来表示实体与实体之间的联系,它是以关系数学理论为基础的。关系模型的数据结构是一个“二维表框架”组成的集合。每个二维表又可称为关系。在关系模型中, *** 作的对象和结果都是二维表。关系模型是目前最流行的数据库模型。
为什么要建立数据模型?
当今的商业决策对对数据依赖越来越强烈。然而,正确而连贯的数据流对商业用户做出快速、灵活的决策起到决定性的作用。建立正确的数据流和数据结构才能保证最好的结果。
如何进行数据模型设计?
1:首先是要了解业务然后建立概念模型,确定实体以及实体关系。
2:在概念模型的基础上生成逻辑模型,确定实体属性,标准化数据(消除多值字段达到第一范式;消除部分依赖达到第二范式;消除传递依赖达到第三范式)。
3:模型验证:通过具体的业务来验证模型是否能满足要求。
4:在逻辑模型的基础上生产物理模型。
在建立数据模型的时候需要注意:
1.三少 整个模型中表应该尽量的少;在一个表中字段应该尽量的少同时复合主键字段应尽量的少
2.如果在大数据量或者高并发的情况下,要充分考虑数据库的压力,事先要考虑哪些表可能是热表。要尽量的降低模块的耦合。如果使用的是oracle RAC 的话要考虑一下多实例竞争的问题,不同的模块访问不同的实例。
3.一定要做压力测试、要做充分的压力测试,要不上线后会死的很惨,移动总部的一个web项目应为没有做充分的压力测试,导致上线后不的不挂维护页面,动用了n多的资源去解决问题。
4.在做模型设计的时候要考虑项目的各个生命周期阶段对模型的要求,不能仅仅把眼光限制在功能的实现,例如要考虑模型对以后维护的支持,对于大表的数据如何进行清除、转历史,显然delete、insert是首先可以想到的但是不可行的方法,建议做分区转换。
5.数据模型设计对系统可变性的支撑:业务系统的变化点通常是流程相关部分,这部分会随着不同的公司、公司的不同发展阶段而变化,因此最好将这部分单独建模,独立于系统核心模型之外。
模型可更形象、直观地揭示事物的本质特征,使人们对事物有一个更加全面、深入的认识,从而可以帮助人们更好地解决问题。利用模型对事物进行描述是人们在认识和改造世界过程中广泛采用的一种方法。计算机不能直接处理现实世界中的客观事物,而数据库系统正是使用计算机技术对客观事物进行管理,因此就需要对客观事物进行抽象、模拟,以建立适合于数据库系统进行管理的数据模型。数据模型是对现实世界数据特征的模拟和抽象 。数据模型是数据库设计中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和 *** 作手段的形式构架。数据模型是数据库系统的核心和基础。
数据库模型 数据库模型(Database Model)是描述客观事物及其联系的一种手段,这种描述包括数据内容的描述和各类型实体数据之间的描述,它是数据库设计的基础。常用的数据库模型有三种:层次模型(Hierarchical Model)、网络模型(Network Model)、关系模型(Relational Mode)。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)