数据库在分布式应用软件中的应用与设计研究

2019-05-22 10:30洪晓彬
无线互联科技 2019年3期
关键词:数据库

洪晓彬

摘 要:分布式应用软件的广泛使用,促使了社会信息化水平得到提高。数据库作为软件重要组成部分,需要得到合理应用与设计。基于这种认识,文章对数据库在分布式应用软件中的功能与操作问题展开了分析,采用数据分片技术实现数据库设计,促使数据库数据访问、处理等能力得到提高,进一步满足软件的应用要求。

关键词:数据库;分布式应用软件;数据分片技术

在当今医疗、教育、金融等多个领域,分布式应用软件都得到了广泛应用。在分布式应用软件中,数据库占据重要地位,需要实现合理应用和设计,才能保证软件顺利实现数据访问和操作。“互联网+”时代下,分布式应用软件需要面对海量数据信息操作和访问需求,因此,加强数据库的应用与设计研究,使数据库充分发挥功能,有助于为数据的聚集和操作提供强有力的技术支撑。

1 数据库在分布式应用软件中的应用

1.1 数据库功能

分布式应用软件可以实现数据访问和操作,而软件各项功能的实现依赖于数据库及其管理系统。为提高访问效率,分布式应用软件近年来开始采用并发访问技术,使得大量用户得以访问数据库。数据库功能能否满足软件应用需求,关系到软件数据操作处理效率。现阶段,数据库公司完成了大量数据库产品的开发,如ORACLE,SQLServer等,能够为分布式软件提供数据插入、查询、修改等功能,满足软件数据操作需求。例如,ORACLE数据库作为分布式数据库,同时也是关系数据管理系统的一种,能够在分布式环境不同服务器上实现数据库连接,为数据库操作提供支持[1]。作为一种信息存储、加工和组织工具,数据库目前从无结构发展至网状结构、关系结构,直至如今对象结构,其间经历了数十年,陆续引进了数据仓库、数据挖掘等技术,因此,在分布式软件中应用具备丰富功能。首先,通过交互界面,软件能够实现信息输入,在数据库中进行数据保存,执行数据插入操作。在软件界面上实现请求信息输入,Web服务器会完成信息接收,按照服务规则解析逻辑业务请求,分离数据库处理的信息,提出数据连接请求,完成访问数据库桥梁的建立。利用数据库调用Insert命令,能够对数据表、字段信息等各种数据进行插入,实现分布式管理信息添加,完成软件更新操作。其次,执行Select操作,利用数据库能够进行信息查询,无论失败或成功都会反馈信息,通过将结果封装在一起,供用户实现信息查询。再者,使用软件可以对部分数据进行删除,即通过执行相应操作完成数据删除,成功会将数据状态返回,失败会提示数据被其他程序占用。在操作过程中,将涉及多个时间表,调用delete语句。最后,应用分布式软件进行数据修改,可以采取与数据插入相似的操作方法,执行update语句。如果利用数据库修改新值,无需对数据库记录进行修改,可以直接对数据内容进行修改[2]。

1.2 数据库操作

分布式应用软件利用数据库进行分布式事务操作,需要将每个事务划分为多个子事务,各事务需要利用多个命令操作。在实际应用时,需要集成分布在不同位置的数据库,对各事务对应关联场地进行加载,达到激活事务的目的。在操作过程中,需要对事务的独立性、原子性和一致性进行保证,故需要解决两个关键问题,即各场地局部数据集成和事务管理问题。从以往操作来看,主要采用移动Agent技术进行子事务的封装。在分布式网络中,由于Agent能够实现自由移动,所以能够达到事务处理场地,通过事务处理得到相应结果。根据Agent反馈的结果,可以实现任意事务与其他事务的分布式计算,将Agent移动至新场地完成相关运算,然后将数据计算结果统一返回至原场地[3]。由于数据需要在特定服务器上集中存储,因此,在数据复杂度和规模不断增加的情况下,数据库服务器处理能力将逐步减弱,需要利用分布式存储技术完成海量数据分散处理再进行统一管理。

2 数据库在分布式应用软件中的设计

2.1 整体架构设计

结合分布式应用软件的数据库操作需求,还需引入分片处理技术完成实时数据处理,按照一定规则完成全局数据划分,即进行水平分片和垂直分片,在不同服务器节点上进行数据存储,实现服务接口的提供[4]。在数据库访问过程中,可以根据请求内容进行对应分片服务接口的调用,使数据集中处理压力得到减轻,并且使数据得到实时处理。相较于传统数据库架构,采用该技术能够实现数据交叉冗余存储,实现动态容错,因此,能够使软件的可用性和可靠性得到提高。在实际设计时,还应采用面向服务的架构(Service-Oriented Architecture,SOA)完成微服务架构的建构。在分布式环境中,可以将业务逻辑拆分成粒度小的服务,完成细粒度应用级开发。通过将数据库功能分解到各离散服务器中,可以实现方案解耦。利用服务器间接口和契约,可以聯系应用程序不同功能单元,得到高度内聚自治单元。根据分布式应用软件功能需求,可以对实时数据类型进行确定,将数据读写操作虚拟成细粒度数据服务,在获取数据过程中根据需求进行相应接口的调用,完成实时数据库查询,使数据访问量得到减少,使每个数据分片成为独立微型实时库,利用云服务器进行发布,可以使云计算的强大灾备能力得到发挥,使各数据片冗余存储得到保证。遵循负载均衡策略,在云服务器各节点上实现分散存储,可以实现数据即服务功能,使数据的完备性得到保证。

2.2 数据库功能结构

从数据库功能结构设计上来看,需将微服务架构模式与云计算结合在一起,通过实现二者优势互补完成虚拟隔离网络环境的构建,避免数据库受到病毒、黑客等网络攻击。从总体上来看,云服务平台属于服务注册中心,为数据库核心部分。在服务提供方面,需要完成物理资源层、云计算应用程序接口层和云服务管理层的构建。在数据库应用时,EMS高级应用软件和图形用户界面会发送请求,服务提供者会在服务注册中心实现服务发布,利用云计算应用程序接口实现云服务的提供。通过绑定获得的服务,可以得到业务解决方案。在服务注册中心,包含大量服务描述。借助云服务平台,可实现相应服务查找,并对服务进行授权。在物理资源层,包含数据资源、计算资源、存储资源等资源,能够与云服务管理层实现通信连接,实现任务、资源、用户和安全管理。用户界面层包含手机浏览器、平板浏览器和PC浏览器,能够实现用户请求发送。在实际进行数据库应用部署时,可以在云服务器上完成用户界面、数据库服务和后台处理程序的部署。采用云服务形式,数据库可以提供对外访问接口,在数据库服务与用户之间,需要利用后台处理程序建立连接桥梁,完成数据分片处理。

2.3 数据库实现方法

在数据库设计实现方面,可以在阿里云上实现数据库开发,使用Visual Studio 2015开发工具,采用Java和C#作为开发语言。在数據库架构实现上,需要采用Windows平台,利用ASP.NET建立网页客户端。在云服务器上,可以实现所有应用程序的部署,并借助IIS8.0实现服务发布。通过摒弃关系数据模型,完成结构体模型的建立,可以采用分片技术完成数据分片处理,在云服务器上各节点实现数据分散存储,完成数据库分布式处理操作。利用云服务器提供的服务总线标准访问服务接口,可以进行数据实时访问,完成服务及时调用。由于数据库由服务配置文件、服务接口和接口实现类构成,可以为每个服务提供多个接口,各接口与相应实现类对应,因此,可以利用特定C#程序代码进行数据库连接功能实现。利用文件,可以完成服务地址、契约等参数配置,利用RTDBService实现API网关定义,完成实时数据分片和封装。利用服务中心建立连接关系后,可以借助网关下微服务实现客户端请求分配,完成数据库实时访问,达到数据操作目标。由于接口众多,在数据库访问时各接口和数据刷新频率不同,所以能够在云服务器上实现数据服务部署,加强云计算弹性服务的充分利用,使服务器上计算机资源得到合理配置。通过实现资源最大化利用,可以使数据访问请求响应时间得到缩短,促使数据访问速度得到进一步提高。

3 结语

在分布式应用软件中,需要利用数据库完成数据加工、处理和操作,软件响应时间直接受数据库操作速度影响。本文结合软件对数据库应用要求,采用分片技术实现数据库设计,能够使数据库借助云服务平台提供多个服务接口,实现数据快速处理,能够缩短硬件响应时间的同时,也使得软件得到优化。

[参考文献]

[1]刘文强.ORACLE数据库在管理系统中的分布式应用[J].福建电脑,2018(12):149-150.

[2]杨新爱.数据库在分布式管理系统中的应用与优化设计[J].电脑编程技巧与维护,2016(16):73-74.

[3]高奕.数据库在分布式管理系统中的应用及优化设计研究[J].信息系统工程,2018(1):60.

[4]冯显力,韦化,韦洪波,等.含微服务的调度自动化系统分布式实时数据库[J].电力系统保护与控制,2018(21):138-144.

猜你喜欢
数据库
超星数据库录入证
本刊加入数据库的声明
两种新的非确定数据库上的Top-K查询
国外数据库高被引论文排行TOP10
国内主要期刊数据库