240 likes | 389 Views
分布式数据库系统展示. 公司内部管理系统. 成员:郜正对 韩超 卢宇亮 路乃光. 一、背景需求. 一个较大的企业,由于各地需求不同,分别在北京、上海、广州三地设立了机构。其中在北京设有公司总部,总部人力资源部门需要对各地分公司的部门设置、人员及项目开展情况进行全局的管理;. 背景需求( Cont. ). 各地设有分公司 ,分公司处理本地各部门的人员及项目开展情况。 本系统只针对全局应用进行设计。 系统特点 全局集中性 本地自治性. 二、主要对象说明. 员工 每个员工只存在于一个部门,表设计中采用员工编号作为员工的唯一标识,允许员工重名.
E N D
分布式数据库系统展示 公司内部管理系统 成员:郜正对 韩超 卢宇亮 路乃光
一、背景需求 一个较大的企业,由于各地需求不同,分别在北京、上海、广州三地设立了机构。其中在北京设有公司总部,总部人力资源部门需要对各地分公司的部门设置、人员及项目开展情况进行全局的管理;
背景需求(Cont.) • 各地设有分公司 ,分公司处理本地各部门的人员及项目开展情况。 • 本系统只针对全局应用进行设计。 • 系统特点 • 全局集中性 • 本地自治性
二、主要对象说明 • 员工每个员工只存在于一个部门,表设计中采用员工编号作为员工的唯一标识,允许员工重名
主要对象说明(Cont.) • 部门设置 • 北京部门设置:人力资源部、网络搜索部、软件开发部、系统设计部、产品研发部、市场部; • 上海部门设置:网络搜索部、系统设计部、产品研发部、市场部 • 广州部门设置:软件开发部、产品研发部、系统设计部、测试部 • 各地设置的部门允许同名,但具有唯一的部门编号,表设计中采用部门编号作为部门的唯一标识。同名的部门是一个部门。
主要对象说明(Cont.) • 项目 • 项目开发由总公司统一协调,从各地分公司抽取员工进行开发,每个员工只参加一个项目。项目的存储采用冗余设计,在各地站点上保存项目表的冗余。方便各地的局部应用,只有总公司有对项目进度监管和成立项目、结束项目的权限。
三、用户需求 • 部门管理 • 员工管理 • 项目管理
用户需求(Cont.) • 针对公司所有人员信息的检索功能,提供用户对人员表的按员工ID及姓名查找;允许修改、删除员工信息 • 输入:员工ID或员工姓名 • 输出:该员工的基本信息 • 约束:事先并不了解该员工所在地和工作单位
用户需求(Cont.) • 按部门名称查询该部门的所有员工信息及员工承担的项目。允许增加员工。实现员工调任、离职的功能。并提供部门的增删改查。 • 输入:部门名称 • 输出:所有员工信息 • 约束:具有同一名称不同ID部门的读取,事先并不了解部门在各地的分布情况。
用户需求(Cont.) • 对项目进度的监管,提供按照项目名称和项目编号进行项目的查询和修改,允许用户添加新的项目,删除结束的项目。 • 输入:项目名称或者项目编号 • 输出:项目的基本信息并提供修改及删除功能,允许增加新的项目 • 约束:由于项目信息冗余度的设计,需要考虑数据一致性
四、开发环境 • 系统环境 • Windows XP SP2 • 开发工具 • Visual Server 2005 • SQL Server 2005 • B/S架构
五、系统设计 • 层次结构
数据存储层 • 数据存储层 • 策略:在三台主机上模拟三个站点,分别建立数据库 • 表设计 • 员工表( employee ) • 部门表( dept ) • 项目表( project ) • 数据库表采用水平分片和冗余设计,分别存放不同地域的数据表信息
数据存储层(Cont.) • 员工表 第一位标识员工所在站点
数据存储层(Cont.) • 部门表 第一位标识部门所在站点
数据存储层(Cont.) • 项目表
数据存储层(Cont.) • 分片示意图
数据访问层 • ADO编程接口 • 数据字典 • 使用接口封装数据库操作 • 策略: • 与集中式访问类似,增加远程访问数据库 • 实现单一站点的数据库操作,增删改查,以支持分布式查询
分布处理层 • 策略: • 分布式查询,达到站点透明性 • 事务控制,保持数据一致性 • 冗余处理,保持数据同步更新
分布处理层(Cont.) • 分布式查询 • 查询操作均基于不知道数据存放在哪个站点上进行 • 使用对所有站点表的顺序查询实现 • 支持单个站点的查询操作
分布处理层(Cont.) • 事务控制 • 实现分布式事务,实现不同站点数据的同步操作,保证事务运行的完整性 • 将对两个站点的操作封装在一个事务中,所有原子操作顺利执行,事务提交,否则回滚 • 体现在系统员工在不同部门的调任功能
分布处理层(Cont.) • 冗余处理 • 冗余设计采用全复制的方法,将project表全复制在不同站点上 • 采用对project表进行的修改、删除、添加操作同步在所有站点上执行的方式进行 • 加入事务的机制,保证数据的一致性
六、程序清单 • 概要需求分析 • 任务书 • 表设计文档 • Wiki笔记 • 数据库备份 • 参考资料 • 源程序 • 程序说明书 • 展示ppt
程序演示 • 谢谢