一种基于应用层的数据库分布方法

文档序号:9417470阅读:225来源:国知局
一种基于应用层的数据库分布方法
【技术领域】
[0001]本发明涉及大数据的数据采集技术领域,具体地说是一种实用性强、基于应用层的数据库分布方法。
【背景技术】
[0002]随着社会的进步和信息化的不断发展,人们对数据的要求越来越高,企业信息化程度越来越精细,随之而来的是日益增加的庞大的业务交易数据量,给ERP系统建设带来了不小的挑战。为了减轻巨大的数据处理对数据库造成的压力,业界产生了分布式数据库的概念。然而,对于传统的SqlServer、Oracle数据库来说,对这种分布式集群的支持很有限,性能提升不明显。
[0003]减轻数据库压力的方式大致分为三种,数据库负载均衡、基于文件系统的分布式数据库及关系型数据库的分布。
[0004]1、数据库负载均衡。此技术主要针对关系型Oracle数据库,利用Rack的方式,增加数据库服务器节点,将数据计算分担到多个数据库服务器。这种技术,最多增加的4台数据库服务器节点,而性能提升仅为1.5倍,如果继续增加节点,对数据库性能已无提升空间。
[0005]2、基于文件系统的分布式数据库。如Hadoop分布式数据库架构,可将数据分布式存储在不同的数据库上面,各个节点的数据库数据量维持在一个较低的水平,然而,这种技术限于各数据库之间关系不密切,数据可以独立存在的情况,且数据库类型为非关系型的文件系统数据库。
[0006]3、关系型数据库的分布。关系型数据库,能够支撑复杂的数据应用,然而,对于关系型数据库,减少单个数据库数据处理压力的方式,在数据库层面没有很好的解决思路。通过应用层,可以很好的处理这种矛盾。通过应用层的划分及数据库节点映射,在执行数据操作时,自动连接不同的数据库节点,实现数据库的分布,降低单数据库节点的数据处理压力。
[0007]基于此,现提供一种可解决上述问题、性能提升明显、基于应用层的数据库分布方法。

【发明内容】

[0008]本发明的技术任务是针对以上不足之处,提供一种实用性强、基于应用层的数据库分布方法。
[0009]—种基于应用层的数据库分布方法,其具体实现过程为:
根据各业务系统的特点,提取业务维度,按照业务维度进行数据库划分,并创建对应的数据库节点;
在主库中,配置各分布数据库的连接dblink,同时,配置业务维度同数据库的映射表; 应用层根据业务维度信息,在对照表中查找对应的数据库; 根据已创建好的此数据库的连接dblink,执行业务操作。
[0010]所述数据库的连接具体配置过程为:首先定义主数据库连接各个分布数据库节点的dblink的名称及说明,供数据库连接映射定义用;在应用程序拼写数据库执行SQL时,根据此连接,将创建的dblink名称加入,从而定位SQL执行的对象所在数据库。
[0011]所述映射表的配置过程为:使用系统管理配置工具,配置服务器端的参数,该参数包括各个分布数据库连接配置表、业务维度同数据库连接的映射表。
[0012]业务维度同数据库连接映射表的具体配置过程为:在按照维度信息确定数据库的划分后,查找要用到的dblink时,根据维度信息,在此映射表中查找当前业务数据单位编号对应的数据库连接,然后再根据数据库连接,建立该单位业务数据所在的数据库的连接,进行相关数据操作。
[0013]应用层数据分布处理的具体过程为:应用层根据当前业务场景,确定业务维度数据值,并根据这些值,查找到所要连接的数据库,执行相应数据操作。
[0014]本发明的一种基于应用层的数据库分布方法,具有以下优点:
该发明的一种基于应用层的数据库分布方法根据获取业务维度同数据库映射信息,从应用层面使关系型数据库分布式部署成为可能,解决了由于数据处理压力而造成的系统应用的性能瓶颈;根据数据库分布配置表,来确定业务操作执行的数据库位置,从而使数据库做到了可无限制增加节点,使数据处理的压力得到分布,提升系统应用性能,实用性强,适用范围广泛,易于推广。
【具体实施方式】
[0015]下面结合具体实施例对本发明作进一步说明。
[0016]本发明的提供一种基于应用层的数据库分布方法,通过数据采集客户端进行海量数据采集的方式进行数据采集。
[0017]其实现过程为:
根据各业务系统的特点,提取业务维度,按照业务维度进行数据库划分,并创建对应的数据库节点;
在主库中,配置各分布数据库的连接dblink,同时,配置业务维度同数据库的映射表; 应用层根据业务维度信息,在对照表中查找对应的数据库;
根据已创建好的此数据库的连接dblink,执行业务操作。
[0018]在上述发明中,根据业务系统特点,提取可作为数据库划分依据的业务维度。
[0019]根据划分的数据库节点创建各个分布的业务数据库,并在主库建立各分布库的连接 dblinkο
[0020]使用系统管理配置工具,配置服务器端的参数,包括各个分布数据库连接配置表,业务维度同数据库连接的映射表。
[0021]应用程序在进行业务处理时,依据业务维度数据库连接配置表,找到操作需要执行的数据库,并通过数据库连接配置进行实际的业务执行操作。
[0022]所述数据库的连接具体配置过程为:首先定义主数据库连接各个分布数据库节点的dblink的名称及说明,供数据库连接映射定义用;在应用程序拼写数据库执行SQL时,根据此连接,将创建的dblink名称加入,从而定位SQL执行的对象所在数据库。
[0023]业务维度同数据库连接映射表的具体配置过程为:在按照维度信息确定数据库的划分后,查找要用到的dblink时,根据维度信息,在此映射表中查找当前业务数据单位编号对应的数据库连接,然后再根据数据库连接,建立该单位业务数据所在的数据库的连接,进行相关数据操作。
[0024]应用层数据分布处理的具体过程为:应用层根据当前业务场景,确定业务维度数据值,并根据这些值,查找到所要连接的数据库,执行相应数据操作。
[0025]本发明适用于财务系统同异构系统集成时,异构系统日常业务数据量较大,从而造成对财务系统数据库产生巨大压力的情形;同时,也适用于ERP系统业务数据量大,且需要进行频繁而复杂的计算时,对数据库的数据处理性能要求很高的情形。
[0026]以上情形,在应用Oracle数据库时,受数据库技术限制,无法进行数据库集群部署,即使通过Rack技术,增加服务器负载均衡,性能提升也仅限于1.5倍。本发明,在应用层对数据库进行了拆分,实现了真正意义的数据库集群部署,集群中数据库节点可根据需要无限制增加,以增强单个数据库服务器处理数据的能力,提供ERP系统应用性能。本发明适用范围广泛,不仅限于Oracle数据库。
[0027]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种基于应用层的数据库分布方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种基于应用层的数据库分布方法,其特征在于,具体实现过程为: 根据各业务系统的特点,提取业务维度,按照业务维度进行数据库划分,并创建对应的数据库节点; 在主库中,配置各分布数据库的连接dblink,同时,配置业务维度同数据库的映射表; 应用层根据业务维度信息,在对照表中查找对应的数据库; 根据已创建好的此数据库的连接dblink,执行业务操作。2.根据权利要求1所述的一种基于应用层的数据库分布方法,其特征在于,所述数据库的连接具体配置过程为:首先定义主数据库连接各个分布数据库节点的dblink的名称及说明,供数据库连接映射定义用;在应用程序拼写数据库执行SQL时,根据此连接,将创建的dblink名称加入,从而定位SQL执行的对象所在数据库。3.根据权利要求1所述的一种基于应用层的数据库分布方法,其特征在于,所述映射表的配置过程为:使用系统管理配置工具,配置服务器端的参数,该参数包括各个分布数据库连接配置表、业务维度同数据库连接的映射表。4.根据权利要求3所述的一种基于应用层的数据库分布方法,其特征在于,业务维度同数据库连接映射表的具体配置过程为:在按照维度信息确定数据库的划分后,查找要用到的dblink时,根据维度信息,在此映射表中查找当前业务数据单位编号对应的数据库连接,然后再根据数据库连接,建立该单位业务数据所在的数据库的连接,进行相关数据操作。5.根据权利要求1所述的一种基于应用层的数据库分布方法,其特征在于,应用层数据分布处理的具体过程为:应用层根据当前业务场景,确定业务维度数据值,并根据这些值,查找到所要连接的数据库,执行相应数据操作。
【专利摘要】本发明公开了一种基于应用层的数据库分布方法,具体实现过程为:根据各业务系统的特点,提取业务维度,按照业务维度进行数据库划分,并创建对应的数据库节点;在主库中,配置各分布数据库的连接dblink,同时,配置业务维度同数据库的映射表;应用层根据业务维度信息,在对照表中查找对应的数据库;根据已创建好的此数据库的连接dblink,执行业务操作。该一种基于应用层的数据库分布方法与现有技术相比,根据数据库分布配置表,来确定业务操作执行的数据库位置,从而使数据库做到了可无限制增加节点,使数据处理的压力得到分布,提升系统应用性能,实用性强。
【IPC分类】G06F17/30
【公开号】CN105138638
【申请号】CN201510521173
【发明人】黄金港, 隋志超, 杨晴然
【申请人】浪潮通用软件有限公司
【公开日】2015年12月9日
【申请日】2015年8月24日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1