数据层的设计.

上传人:最**** 文档编号:117997091 上传时间:2019-12-11 格式:PPT 页数:42 大小:862KB
返回 下载 相关 举报
数据层的设计._第1页
第1页 / 共42页
数据层的设计._第2页
第2页 / 共42页
数据层的设计._第3页
第3页 / 共42页
数据层的设计._第4页
第4页 / 共42页
数据层的设计._第5页
第5页 / 共42页
点击查看更多>>
资源描述

《数据层的设计.》由会员分享,可在线阅读,更多相关《数据层的设计.(42页珍藏版)》请在金锄头文库上搜索。

1、基于.NET的需求分析和解决方案设计设计 l第1章 商务务解决方案设计设计 l第2章 收集和分析信息 l第3章 解决方案的构思 l第4章 概念设计设计 的创创建 l第5章 逻辑设计逻辑设计 的创创建 l第6章 物理设计设计 的创创建 l第7章 表示层层的设计设计 l第8章 数据层层的设计设计 l第9章 设计设计 安全规规范 l第10章 完成计计划阶阶段 l第11章 稳稳定和部署方案 第8章 数据层层的设计设计 l设计设计 数据存储储 l优优化数据访问访问 l实现实现 数据有效性检查检查 设计设计 数据存储储 l设计过设计过 程 l确定实实体和属性 l确定表和列 l实现实现 关系 8.1 设计设

2、计 数据存储储 设计过设计过 程 l概念设计设计 l逻辑设计逻辑设计 l物理设计设计 8.1.1 设计过设计过 程 概念设计设计 l整理收集的信息 系统需求、使用案例和场景等 l分析对对数据的需求 l确定哪些数据需要存储储和处处理 8.1.1 设计过设计过 程 逻辑设计逻辑设计 l描述将会存储储在数据库库中的实实体和属性,可参考 逻辑对逻辑对 象模型 使用场场景 现现成数据 l说说明用户户如何访问访问 、操作、浏览浏览 数据 8.1.1 设计过设计过 程 物理设计设计 l创创建数据库结库结 构示例 l确定过过程 l规规划数据服务务 l整合存储储技术术(一大挑战战) 8.1.1 设计过设计过 程

3、 物理设计设计 l常见见的物理存储储技术术 平面文件 层层次型 关系型 面向对对象型 8.1.1 设计过设计过 程 确定实实体和属性 l实实体 存储储信息的对对象 定义义数据关系 l属性 描述实实体 仅仅与实实体一同存在 定义义了数据库库中的列 8.1.2确定实实体和属性 确定实实体和属性 l表的行与列 实实体 可以转换转换 成表,实实例可以成为为行 属性 可以转换转换 成列 l确定实实体和属性 实实体 通过过在数据层层的逻辑设计逻辑设计 中分析使用案例确定 属性 通过过描述每个实实体确定 8.1.2确定实实体和属性 确定表和列 l表 在关系型数据库库中对实对实 体的物理表示 数据以行的形式存

4、储储在表中,可使用XML进进 行操作 可反映不同类类型实实体之间间的关系 8.1.3 确定表和列 确定表和列 l行 又称记录记录 每一行表示一个实实体的实实例 每一行必须须惟一 可通过过XML进进行操作 可通过过SQL语语句进进行操作 8.1.3 确定表和列 确定表和列 l列 又称字段 每一行数据的数据项项以列形式存储储 每一列有不同类类型的数据项项,如电话电话 号码码 表示实实体的属性 8.1.3 确定表和列 确定表和列 l数据类类型 允许许数据库库引擎验证验证 数据的有效性 l分类类 系统统提供的数据类类型,如整型 自定义义数据类类型 8.1.3 确定表和列 确定表和列 l键键 惟一标识标

5、识 了每个实实体的实实例 l分类类 主键键:惟一标识标识 了表中的每一行 外键键:连连接两张张表 8.1.3 确定表和列 实现实现 关系 l在两张张以上实实体表之间创间创 建键键,从而实实体能通 过过同一键值键值 关联联起来 l关联联的多样样性 一对对一关联联 一对对多关联联 多对对多关联联 8.1.4 实现实现 关系 实现实现 关系 l一对对一关系 一个实实体的实实例与其他实实体的对应实对应实 例直接 相关 以一张张表、两张张表或多张张表的形式出现现 Attribute1 Attribute2 Attribute3 E2_Key (PK) E1_Key (FK) Entity2 Attrib

6、ute1 Attribute2 Attribute3 E1_Key (PK) E2_Key (FK) Entity1 8.1.4 实现实现 关系 实现实现 关系 l一对对多关系 一个父实实体可对应对应 有多个子实实体 在子实实体上需要采用外键键表明关系 Attribute1 Attribute2 Attribute3 E1_Key (PK) Attribute1 Attribute2 Attribute3 E2_Key (PK) E1_Key (FK) Entity1 Entity2 8.1.4 实现实现 关系 实现实现 关系 l多对对多关系 使用连连接表 在连连接表中存储储两个实实体的关系信

7、息 Attribute1 Attribute2 Attribute3 E1_KeyID Attribute1 Attribute2 Attribute3 E2_KeyID E1_KeyID (FK) E2_KeyID (FK) Employee Customer Contacts 8.1.4 实现实现 关系 第8章 数据层层的设计设计 l设计设计 数据存储储 l优优化数据访问访问 l实现实现 数据有效性检查检查 优优化数据访问访问 l优优化数据访问访问 的最佳实实践 l索引数据 l分片数据 l规规范化数据 8.2 优优化数据访问访问 优优化数据访问访问 的最佳实实践 l优优化应应用程序 尽可能

8、减少结结果集请请求的往返次数 尽可能缩缩小结结果集 减少并发发 解决冲突 对应对应 用程序进进行压压力测试测试 8.2.1 优优化数据访问访问 的最佳实实践 优优化数据访问访问 的最佳实实践 l优优化事务处务处 理 设计设计 精简简、持续时间续时间 短的事务处务处 理 尽量少用分布式事务处务处 理 在跨边边界的情况下有效地进进行通信 8.2.1 优优化数据访问访问 的最佳实实践 优优化数据访问访问 的最佳实实践 l优优化数据库库 创创建索引,但不要使用过过多的索引 划分、规规范经经常需要修改的数据 反规规范化经经常需要读读取的数据 8.2.1 优优化数据访问访问 的最佳实实践 索引数据 l索引

9、是一个已排序的数据列表 l好处处 良好的索引可优优化数据访问访问 和更新 索引还还可保证证数据的完整性 8.2.2 索引数据 索引数据 l类类型 聚簇索引 通常是表的主键键 物理上记录记录 了表中数据行的顺顺序 高效率的查询查询 增加了数据写入的时间时间 非聚簇索引 记录记录 了表中一列或者多列的索引信息 8.2.2 索引数据 分片数据 l将数据划分为为多张张表 l无法通过过数据优优化来提高访问访问 速度时时使用 l好处处 降低单张单张 表的数据量 提高数据访问访问 速度 8.2.3 分片数据 分片数据 l类类型 水平分片 将含多行的数据表划分成几张张含相同列的数据 表 垂直分片 将含多列的数

10、据表划分成几张张含相同行的数据 表 8.2.3 分片数据 规规范化数据 l定义义数据模型,将数据库库分割成几张张相关表的集 合 l好处处 将信息冗余减小到最小,提高查询查询 效率 降低数据不一致 加快数据修改操作,如插入、更新、删删除 8.2.4 规规范化数据 规规范化数据 l第一范式 表必须为须为 两维维,分行和列 每个单单元格仅仅能有一个值值 每一列只能表达一个意思 Employee Customer Job Task Date Expenses Hours Description Timesheet EmployeeFirstName EmployeeLastName CustomerN

11、ame CustomerLocation JobName JobDesc TaskName TaskDesc Date Expenses TotalHours BillableHours Description TimesheetID Timesheet 第一范式 8.2.4 规规范化数据 规规范化数据 EmployeeID CustomerID JobDesc TaskName TaskDesc Date Expenses TotalHours BillableHours Description TimesheetID Timesheet 第二范式 EmployeeFirstName Emp

12、loyeeLastName CustomerName CustomerLocation JobName JobDesc TaskName TaskDesc Date Expenses TotalHours BillableHours Description TimesheetID Timesheet l第二范式 通过实过实 体减少冗余 将仅仅与部分值值相关的属性移到其他表中 尽可能的整合信息 8.2.4 规规范化数据 规规范化数据 TimeSheetID EmployeeID CustomerID JobID TaskID TaskDesc Date Expenses TotalHours B

13、illableHours Description 时间时间 表 员员工 客户户 JobID JobDesc 工作 TaskID JobID TaskDesc 任务务 完成 与之签约签约 花费时间费时间 有多个 主键键 外键键 关系字 l第三范式 去除所有不依赖键值赖键值 的列 一般将不与表直接相关的实实体移到其他表中 消除删删除和更新的不规规范 没有冗余 8.2.4 规规范化数据 规规范化数据 l反规规范化数据 规规范化数据的逆过过程 减少表的关联联形成较较多列的表 l好处处 优优化性能 降低复杂杂度 l需要考虑虑的问题问题 增加了冗余 数据同步问题问题 8.2.4 规规范化数据 第8章 数据

14、层层的设计设计 l设计设计 数据存储储 l优优化数据访问访问 l实现实现 数据有效性检查检查 l数据完整性 l数据完整性需求的验证验证 l确定业务规则业务规则 l在数据库库中实现业务规则实现业务规则 l在组组件中数据有效性检查检查 的实现实现 实现实现 数据有效性检查检查 8.3 实现实现 数据有效性检查检查 数据完整性 l数据的一致性和准确性 为为列定义义一组组有效的值值并确定是否允许许空值值 表中每行都有惟一的标识标识 ,即主键值键值 确保主键键(父实实体)与外键键(子实实体)的关系一直存在 确保数据库库中的数据正确且有效(正确的数据类类型、格式并在 范围围限制之内) 实实体完整性 引用完

15、整性 数据有效性 域完整性 8.3.1 数据完整性 数据完整性需求的验证验证 l参考解决方案设计阶设计阶 段确定的数据需求 l特别别注意需求中对对以下方面的要求 惟一性 限制和约约束 l确保解决方案数据要求中所有逻辑逻辑 和物理需求都 已满满足 8.3.2 数据完整性需求的验验 证证 确定业务规则业务规则 例如:未到款的货货是否能发发 例如:产产品售价是否能降到某一水平或者库库存能否小于零 例如:当库库存产产品为负为负 或者订单订单 到款时时,确定进进行何种操作 l确定业务规则业务规则 是将数据需求得到的逻辑逻辑 模型转转 变变成解决方案的基础础 l确定业务规则业务规则 包括 数据有效必须满须满 足的条件 必须须避免的条件 事件发发生的顺顺序 8.3.3 确定业务规则业务规则 l业务规则业务规则 可通过过一组组条件来实现实现 l利用数据库库自身的功能 数据类类型 l利用编编程实现业务规则实现业务规则 存储过储过 程 脚本 在数据库库中实现业务规则实现业务

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号