基于分布式数据库的连锁超市物流管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于分布式数据库的连锁超市物流管理系统
陈瓅1,易淼2
1.华东交通大学信息工程学院,南昌(330013)
2.桂林电子科技大学信息与通信学院,广西桂林(541004)
E-mail:hdjt06@
摘要:本文针对连锁超市地理位置分散的实际特点,设计和实现了连锁超市物流管理系统的分布式数据库结构,使不同区域的数据可以共享.同时提出了该系统的数据复制和数据库备份问题的解决方案,
关键词:分布式数据库;数据库备份;数据复制
0.引言
在零售行业中,随着城市建设的发展和现代物流技术的完善,超市业务的不断扩大,大型连锁超市越来越普及,连锁超市运营企业需要有一个结合地理位置和资源数据的连锁超市物流管理系统.总公司物流中心与连锁超市处于不同的城市或者城市中的不同地区,各个连锁超市的地理位置分散性造成了商品数据的分散。
各连锁超市在业务上需要处理各自的数据,同时彼此之间需要进行数据的交换和处理,以便物流中心进行货物调配.基于以上原因,本文就分布式数据库在连锁超市物流管理系统中的应用进行了探讨.
1 分布式数据库系统介绍
分布式数据库系统(DDBS)是数据库系统与计算机网络相结合的产物.逻辑上它们属于同一系统,而物理上它们分散在用计算机网络连接的多个场地上,并统一由一个分布式数据库管理系统管理.其具有以下主要特性[1].
(1)数据独立性与位置透明性。
数据独立性是数据库方法追求的主要目标之一,分布透明性指用户不必关心数据的逻辑分区,不必关心数据物理位置分布的细节,也不必关心重复副本(冗余数据)的一致性问题,有了分布透明性,用户的应用程序书写起来就如同数据没有分布一样.当数据从一个场地移到另一个场地时不必改写应用程序.当增加某些数据的重复副本时也不必改写应用程序.
(2)集中和节点自治相结合。
在分布式数据库中,数据的共享有两个层次:一是局部共享,即在局部数据库中存储局部场地上各用户的共享数据.二是全局共享,即在分布式数据库的各个场地也存储可供网中其它场地的用户共享的数据,支持系统中的全局应用.因此,相应的控制结构也具有两个层次:集中和自治.分布式数据库系统常常采用两者相结合的控制结构,各局部的DBMS 可以独立地管理局部数据库,具有自治的功能.同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。
(3)支持全局数据库的一致性和和可恢复性。
分布式数据库中各局部数据库应满足集中式数据库的一致性、可串行性和可恢复性。
除此以外还应保证数据库的全局一致性、并行操作的可串行性和系统的全局可恢复性。
(4)复制透明性。
用户不用关心数据库在网络中各个节点的复制情况,被复制的数据的更新都由系统自动完成。
在分布式数据库系统中,可以把一个场地的数据复制到其他场地存放,应用程序可以使用复制到本地的数据在本地完成分布式操作,避免通过网络传输数据,提高了系统的运行和查询效率。
(5)易于扩展性。
在大多数网络环境中,单个数据库服务器最终会不满足使用。
如果
服务器软件支持透明的水平扩展,那么就可以增加多个服务器来进一步分布数据和分担处理任务。
2 分布式数据库的结构
2.1 连锁超市物流管理现状
在连锁超市企业中,总公司物流中心与各连锁超市处于不同的城市或城市中的不同地区,在业务上它们处理各自的数据,但彼此之间也需要进行数据的交换和处理.以便进行货物配送,但长期以来,企业对于商品货物的管理主要依靠仓储人员来管理,商品货物资源的具体情况只有仓储管理人员清楚,一旦仓储管理人员变动、数据处理不及时等,就会影响货物的配送和销售,造成巨大的经济损失。
2.2 分布式数据库设计
基于连锁超市的地理位置分散的特点和对资源管理系统准确及时性的要求,本系统分为超市物品管理系统和总公司物流管理系统.采用Visual Basic6.0开发应用程序,后台数据库采用SQL Server2000.由于各个连锁超市处于不同的地理位置,因此在数据库设计方面采用了分布式数据库(如图1).具体的方案是把中心服务器放在总公司的物流中心,各超市服务器放在各自超市.超市服务器由本地的数据库管理系统自己控制,可脱离中心服务器为各连锁超市独立工作.各连锁超市的服务器通过网络进行连接,实现连锁超市与总公司物流中心之间的跨域通信.连锁超市拥有各自的销售服务器和库存服务器。
不需要通过局域网向总公司物流中心远程服务器请求响应,连锁超市的客户端(即终端收银机)只向各自的本地服务器发送录入、修改、查询、删除的工作请求.同时各连锁超市的销售数据以及库存数据的修改,会通过数据上报模块不定时的将数据上传到总公司物流中心服务器.将数据保存在各个不同的服务器上,可以充分保证数据的安全性,降低局部数据流量,减轻服务器对海量数据的处理负担,从而提高工作效率.数据库数据采用数据分片,连锁超市按照自己的超市编号存储数据,对数据进行水平分片.
图1 系统分布式数据库结构
2.3 数据复制
数据复制实际上是为了提高查询处理的本地性,对同一数据复制多个副本,根据需要将副本存放在不同的站点中.为保证总公司物流中心数据的准确性和一致性,要求系统不定时地把各连锁超市更新的本地数据及时上传到中心服务器,这就是数据的复制.
本系统采用应用程序充当分布式事务控制器,协调远程及本地事务的提交或回滚.连锁超市数据库需要不定时把各种商品货物资源表中的记录上传给中心数据库,这些信息包括商品名、库存量、销售量、商品单价、生产日期、生产厂家等.这些记录是中心数据库相应记录的水平分片,在数据库中根据各连锁超市的编号对数据进行分片,更新时先删除中心数据库中对应的连锁超市的数据信息,然后把连锁超市的数据上传到中心数据库,每次只需批量更新即可.通过事务提交的方式保证避免由于网络中断或者其它一些故障造成的在数据库更新过程中数据的不一致.
3 数据库备份
对数据库进行备份是一项很重要的工作,本系统采用在启动数据上传模块的同时
自动备份数据库的方法,从而既提高了数据
库的可靠性和安全性,同时也减轻了数据库
管理员的工作,降低了备份的复杂性.当数
据库中的数据遭到破坏需要恢复时,可以从
自动备份中恢复.
本文利用SQL DMO(Database Management Object)实现数据库备份.SQL Distributed Management Framework (SQL—DMF,即SQL分布式管理框架)是一
组集成API和服务,用与管理SQLServer.SQL_DMO是SQL_DMF中的一
个组件.本系统实现数据库备份程序示例如下:
Dim mySvr As New SQLDMO.SQLServer Dim myDB As SQLDMO.Database DimmyBKAs New SQLDMO.Backup
Dim myDv As New SQLDMO.BaekupDevice
Set mySvr=New SQLDMO.SQLServer mySvr.Connect”DAQING”,”8a”,”1111”
生成SQLSerwr对象,传递服务器名、用户
名和口令
Set myDB=mySw.Databases(”DAQING”) MyDv Type=SQLDMODevice_DiskDump备
份设备的类型
myDv.Name = ”ZxDB_ baekup” myDv.Physical.location=”D:\中心数据库备份\ZxDB—back.Up”’ 备份设备的逻辑位置
On ErrorResume Next mySvr.BackupDevices.Add myDv
On Error GoTo 0
myBK.Database=”DAQING” myBK.Devices = “ZxDB_backup” myBK.Initialize = True myBK.SQLBackup mySvr
mySvr.
BackupDcwices.Remove ”DB_backup” mySw.DisConnect
4 结束语
本文针对连锁超市场所地点分散的特点,采用分布式数据库来实现连锁超市物流管理系统。
通过程序控制数据库事务提交和对数据库进行备份,保证了数据库数据的可靠性与一致性.
参考文献
[1]邵佩英.分布式数据库系统及其应用[M].北京:科学出版社,2000.
[2]SOLID QUALITY LEARNING.MICROSOFT SQL SERVER 2005 APPLIED TECHNIQUES STEP BY STEP[M].北京:清华大学出版社,2006
[3]许志清,赵博.精通SQL SERVER 2005 数据库系统管理. [M].北京:北京电子工业出版社,2006 [4]马坚杰.SQL Server 数据库开发经典案例解析[M].北京:清华大学出版社,2006
Manage System Of Commodity Circulation For Chain
Supermarket Based On DDB
Chen Li,Yi Miao
1. School of Information Engineering,East China Jiaotong University,Nanchang (330013)
2. School of Information and communicate Engineering,GuiLin University Of Electronic
Technology,GuiLin,Guangxi(541004)
Abstract
Aimed at the specialty of separate distributing of chain supermarket,this article designed distributed database configuration of manage system of commodity circulation for chain supermarket,We can share data by the manage system,at the same time,We provided a resolvent for reserved database and coped data of the system.
Keywords:DDB,reserved database,coped data。