网学网数据库编辑为广大网友搜集整理了: 基于oracle的分布式数据库设计与技术 绩等信息,祝愿广大网友取得需要的信息,参考学习。
1 工资计算流程各工贸把多个数据库当作一个完整的数据库看待,透明地操作远程数据库的数据,并把它们连接在一起,满足多个工作组、部门和地区的需求,使应用程序看起来只有一个大型数据库。各工贸公司对此单一逻辑的数据库中数据的任一请求,都被自动分解、自动寻址、自动转换为网络请求,并在相应场地上实现相应的操作,减少了数据更新对系统和网络可用性的依赖性。
2 数据库设计在分布式数据库系统中,数据存放在逻辑上统一但地理上分布在不同位置的数据库中,数据库之间可以通过网络进行远程访问。由于数据库分布在不同的位置,数据的访问和管理变得非常复杂。在设计时,要合理选择数据存放的位置,可以从以下几个方面来考虑:(1)每一个位置发出的事务数量;(2)每一个结点使用的数据量(包括表);(3)网络的性能与可靠性;(4)各个结点的速度和硬盘容量;(5)结点或者链路不可用时结点与链路的路由选择;(6)对表之间引用完整性的需要。在数据库设计时要综合考虑以上各种因素,对系统数据进行分析,将数据合理分布到各个节点上。
2.1 数据分析经过分析,将系统数据分成以下 3 种类型:
(1)销售数据和基础数据:该类数据来自各地工贸公司,数据量特别大,集中存放在各地工贸数据库中的基表中;总部根据需要,建立这些表的视图(Views)、快照(Snapshot)和同义词(Synonyms)进行查看。
(2)工资标准数据:该类数据由总部产生和维护,存储在总部数据库的基表中。这类数据量不大,但更新快。因为它们是计算工资的基础,各工贸公司需要经常远程访问这些数据。利用快照技术在各工贸公司进行本地备份,并利用快照日志定时对本地快照进行不完全刷新,以保持总部与工贸数据的一致性和完整性。利用同义词来简化一些繁琐的表名或作者简介:姚文琳(1967—),女,副教授,主研方向:数据库,语义Web,信息分类与过滤等;王存刚、刘世栋、仇利克、硕士生工资标准计算结果销量数据总部数据库Tables工贸数据库Tables工资计算计算结果—90—视图名,以后访问这些远程的数据库的表或视图时可直接写同义词名,无须指明数据所在结点的名字,达到透明访问。
(3)在各工贸公司和总部互传的数据:各工贸公司的本地汇总数据及监督的参数需要定期上传总部,同时总部某些数据比如商场信息,由总部定期从商场维护系统中获取,然后分发给各个工贸。
为了提高系统的灵活性,用 PL/SQL 编写了一个存储过程作为接口程序进行数据的远程读取。表明了以上 3 种数据库对象之间的关系。
数据库对象之间的关系2.2 数据表设计设计数据表时要注意两点:(1)多建窄表,少建胖表。即表要有尽量少的列;(2)对经常使用的大表要合理使用索引、分区等技术进行优化。本系统用到的数据表很多,其中工贸的销量表(TB_SALE_INFO)是最重要的一个。销量表用来存放销量明细,每销售一件商品它会增加一条新记录,日积月累数据量越来越大,性能也越来越差,必须进行优化。销量数据具有明显的时间性,按时间范围对其分区,分区列为SALE_DATE(销售日期),把每月的数据放在一个分区里,提高了查询性能。