CN105956481A - 一种数据处理方法及其装置 - Google Patents

一种数据处理方法及其装置 Download PDF

Info

Publication number
CN105956481A
CN105956481A CN201510593781.4A CN201510593781A CN105956481A CN 105956481 A CN105956481 A CN 105956481A CN 201510593781 A CN201510593781 A CN 201510593781A CN 105956481 A CN105956481 A CN 105956481A
Authority
CN
China
Prior art keywords
database
subcommand
processing
database server
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510593781.4A
Other languages
English (en)
Other versions
CN105956481B (zh
Inventor
艾智杰
吴金坛
吕伊蒙
冯哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Unionpay Co Ltd
Original Assignee
China Unionpay Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201510593781.4A priority Critical patent/CN105956481B/zh
Publication of CN105956481A publication Critical patent/CN105956481A/zh
Application granted granted Critical
Publication of CN105956481B publication Critical patent/CN105956481B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据处理方法及其装置,该方法包括:获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;将所述数据库处理子命令分别发送给对应的数据库服务器;接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。用以解决现有金融批处理系统存在并发处理能力不足,无法充分利用现有的系统资源,而且数据安全性差的问题。

Description

一种数据处理方法及其装置
技术领域
本发明涉及数据库信息管理系统,尤其涉及一种数据处理方法及其装置。
背景技术
随着数据库技术的不断进步,各行各业为了提高工作效率和服务水平,数据库的应用也越来越广泛。比如通讯、金融证券、供水、供电、气象服务等领域,引入了全国统一服务号码后,对数据库系统的依赖性越来越大。
现有金融批处理系统中主控节点对客户端发送来的待处理的每一个数据库命令请求都会发送给一个超级数据库服务器处理,并将处理结果返回给客户端。这种方式会导致现有的融批处理系统并发处理能力不足,无法充分利用现有的系统资源,而且数据安全性差,一旦出现宕机现象,损失代价大。
综上,目前金融批处理系统存在并发处理能力不足,无法充分利用现有的系统资源,而且数据安全性差的问题。
发明内容
本发明实施例提供一种数据处理方法及其装置,用以解决现有金融批处理系统存在并发处理能力不足,无法充分利用现有的系统资源,而且数据安全性差的问题。
本发明实施例包括一种数据处理方法,该方法包括:获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;将所述数据库处理子命令分别发送给对应的数据库服务器;接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
基于同样的发明构思,本发明实施例还包括一种数据处理装置,该装置包括:获取和拆分单元,用于获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;确定单元,用于根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;发送单元,用于将所述数据库处理子命令分别发送给对应的数据库服务器;处理数据结果单元,用于接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
本发明实施例利用多台分布式数据库服务器替换了现有金融批处理系统中的超级服务器,并且主控节点将客户端发送的数据库处理命令集合依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令,根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器,然后将所述数据库处理子命令分别发送给对应的数据库服务器,完成以上动作后主控节点等待每个数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。这样,利用低端数据库服务器上负载数据库的存储空间进行数据处理,提升了性能和安全性,同时提高金融批处理系统的并发处理能力,提高系统资源利用率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供一种数据处理方法流程示意图;
图2为本发明实施例提供一种主控节点分发子命令到数据库服务器的交互图;
图3为本发明实施例提供一种数据库服务器反馈数据处理结果至主控节点的交互图;
图4为本发明实施例还提供一种数据处理装置。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在互联网、电信、金融等许多关键领域,随着企业业务的不断发展,单个数据库已经很难满足海量数据库存储和高并发数据访问,分布式数据库的出现成为必然,分布式数据库能够有效的解决海量数据存储和并发问题,通过数据的水平切分和数据表的垂直切分,有效缓解了海量数据存储,通过负载均衡、轮询等缓解了高并发问题。
基于分布式数据库存在上述优势,于是考虑将分布式数据库应用于现有的金融批处理系统,于是就会出现如何数据库处理命令分发至多个数据库服务器的问题,为了解决这一问题提供了如下实施例。
参见图1所示,本发明实施例提供一种数据处理方法流程示意图,具体地实现方法包括:
步骤S101,获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令。
步骤S102,根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器。
步骤S103,将所述数据库处理子命令分别发送给对应的数据库服务器。
步骤S104,接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
在步骤S101中,获取数据处理命令中包含相同类型数据库的命令,其中,每个数据库类型对应一个数据库标识信息;将所述相同类型数据库的命令划分为一个数据库处理子命令。例如,主控节点接收来自客户端的命令包括“insertinto db1.tbl1…”、“insert into db2.tbl3…”、“insert into db3.tbl4…”,主控节点解析上述命令集合,得出含有数据库标识信息db1、db2、db3,因此将该命令集合拆分成三个数据库处理子命令{insert into db1.tbl1…}、{insert into db2.tbl3…}、{insert into db3.tbl4…}。
当完成数据库处理命令集合的拆分之后,就需要确定生成的数据库处理子命令应该发送到哪个数据库服务器,那么就涉及数据库标识信息和数据库服务器对应关系的建立问题,建立方式如下:
获取所述多个数据库服务器中的数据库类型,其中,每个数据库类型对应一个数据库标识信息;将所述数据库标识信息与所述数据库服务器建立对应关系。
其中,获取所述多个数据库服务器中的数据库类型可以在与多个数据库服务器建立连接的过程中得到,也可以是在连接之后,通过发送请求消息后得到。
例如,有三个数据库服务器分别是数据库服务器A、数据库服务器B和数据库服务器C,其中数据库服务器A中包括数据库1和数据库2,数据库服务器B中包括数据库3,数据库服务器C中包括数据库4和数据库5,因此预先获取数据库服务器中数据库类型为1和2,并且数据库类型为1和2对应的数据库标识信息为DB1和DB2,将数据库标识信息为DB1和DB2与数据库服务器A建立映射关系,依次类推,数据库服务器B和DB3建立映射关系,数据库服务器C和DB4、DB5建立映射关系,映射关系表见表一。
表一:
数据库服务器A DB1、DB2
数据库服务器B DB3
数据库服务器C DB4、DB5
可见,数据库处理命令集合是多个数据库操作的集合,发送到不同的数据库服务器的命令可以包含不同的子命令,主控节点可以通过一组接口将多条相同或者不同的子命令发送到对应的数据库服务器上。也就是说,不同的数据库服务器可以同时接收到不同的数据库处理子命令,相互之间互不影响地工作。这样,每解析得到一个数据库处理子命令就通过数据库标识信息在预先建立的对应关系中找到对应的数据库服务器,进而为后续的命令发送作准备。
考虑到数据库类型有很多种,每种类型数据库提供的接口也不一致,那么涉及数据库的移植、复制等的操作处理就会非常复杂,为此,本发明实施例进一步地提供一种统一的数据库接口,以解决上述问题,具体地,获取所述数据库服务器中的数据库的数据库接口,所述数据库服务器中的数据库的类型不完全相同;
将不同类型的数据库的数据库接口封装成统一的数据库接口;
根据所述统一的数据库接口将所述数据库处理子命令分别发送至与所述数据库处理子命令中的标识信息对应的数据库服务器。
具体地,本发明实施例所述的统一数据库接口的实现方法主要是将各数据库系统的底层调用接口(如ORACLE的OCI,SYBASE的DBLIB或CT LIB,INFORMIX的CLI,SQL Server的DB Library)的功能相同的接口进行封装,为金融批处理系统提供统一的访问数据库接口及其调用方法。
与现有技术相比,本发明实施例所述方法由于所封装的接口均为各数据库系统的最高效的底层调用接口,提高了数据库的访问速度,进而极大地提高了系统的处理能力,由于封装了多种数据库系统的底层接口,因此,只需做简单的配置,而不需要修改源代码,也不需重新编译,可直接应用在不同的商用数据库系统中,提高了系统的互连互通性能,大大降低了开发和维护的成本,也极大提高了系统的稳定性。
为了充分利用主控节点的系统资源,增加了一个标志信息,用来用于指示当前命令执行状态,若指示信息为休眠状态则释放内存资源等待处理结果,若指示信息为唤醒状态则调用内存资源处理后续客户端发送的数据库处理命令集合。这样,若将所有的所述数据库处理子命令发送到对应的数据库服务器,则释放内存资源等待处理结果;若接收到所述数据库服务器返回的数据处理结果,则调用内存资源处理数据处理结果,系统的内存资源被充分利用,提高了系统资源的利用率。
为了更加系统地描述上述数据处理的过程,本发明实施例进一步提供图2和图3,通过具体举例阐述整个数据处理的过程。
图2描述主控节点接收到数据库处理命令集合{insert into db1.tbl1…,insertinto db2.tbl3…,insert into db3.tbl4…},将该集合按照上述拆分方法得到数据库处理子命令{insert into db1.tbl1…}、{insert into db2.tbl3…}、{insert intodb3.tbl4…},得到以上子命令后按照预先建立的对应关系确定出子命令{insertinto db1.tbl1…}和{insert into db2.tbl3…}对应发送至数据库服务器1,将子命令{insert into db3.tbl4…}对应发送至数据库服务器2,至此完成的数据库处理命令集合的分发。
图3描述当两个数据库服务器完成了数据库处理命令的处理结果,再将结果“affected rows=1”,“affected rows=2”,“affected rows=5”返回至主控节点,当主控节点判断所有发出的子命令均得到了反馈结果后就将收到的反馈结果汇总发送至客户端。
在实际应用过程中,主控节点会对一个或者多个数据库服务器的子命令进行同步监控,监控的对象主要是数据库服务器返回的“富”返回值,也就是说,每一条对于数据库的命令请求,工具都会得到例如影响条数、成功与否、出错信息等详细的内容,监控为了保证一个数据库处理集合的多个数据库子命令都会得到“肯定”的答复,一旦任何一个数据库服务器的数据库操作出现了问题,主控节点就会认为该命令集合执行失败,并自动回退所有的子命令处理过程,而不仅仅是失败的那一个条子命令。
为了主控节点在监控的过程中将得到的异常信息进行统一处理,本发明实施例进一步地对异常信息进行统一化处理,处理方法如下:
步骤一:主控节点识别到返回了失败的处理结果,因此主动从该失败的处理结果对应的数据库中获取失败原因的描述信息,并将描述信息缓存下来。
步骤二:将失败原因的描述信息格式化,赋予唯一的错误号码ID。
步骤三:在配置中,找到用户所配置的异常持久化内容(默认是基于哈希表),并将错误信息记录在持久化层中。
步骤四:根据错误号码ID去持久化层进行查找,解析出详尽的错误信息。
这样对异常信息进行统一化处理,基于错误号码ID查找错误信息将会有利于运维人员对于错误的分析,并快速提出解决方案。
基于相同的技术构思,本发明实施例还提供一种数据处理装置,如图4所示,该装置可执行上述方法实施例,该装置包括:获取和拆分单元401、确定单元402、发送单元403,处理数据结果单元404,其中:
获取和拆分单元401,用于获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;
确定单元402,用于根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;
发送单元403,用于将所述数据库处理子命令分别发送给对应的数据库服务器;
处理数据结果单元404,用于接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
其中,所述获取和拆分单元401具体用于:获取数据处理命令中包含相同类型数据库的命令,其中,每个数据库类型对应一个数据库标识信息;将所述相同类型数据库的命令划分为一个数据库处理子命令。例如,主控节点接收来自客户端的命令包括“insert into db1.tbl1…”、“insert into db2.tbl3…”、“insertinto db3.tbl4…”,主控节点解析上述命令集合,得出含有数据库标识信息db1、db2、db3,因此将该命令集合拆分成三个数据库处理子命令{insert intodb1.tbl1…}、{insert into db2.tbl3…}、{insert into db3.tbl4…}。
当完成数据库处理命令集合的拆分之后,就需要确定生成的数据库处理子命令应该发送到哪个数据库服务器,那么就涉及数据库标识信息和数据库服务器对应关系的建立问题,建立对应关系单元405,用于根据下列方式建立数据库标识信息和数据库服务器的对应关系:
获取所述多个数据库服务器中的数据库类型,其中,每个数据库类型对应一个数据库标识信息;将所述数据库标识信息与所述数据库服务器建立对应关系。
其中,获取所述多个数据库服务器中的数据库类型可以在与多个数据库服务器建立连接的过程中得到,也可以是在连接之后,通过发送请求消息后得到。
例如,有三个数据库服务器分别是数据库服务器A、数据库服务器B和数据库服务器C,其中数据库服务器A中包括数据库1和数据库2,数据库服务器B中包括数据库3,数据库服务器C中包括数据库4和数据库5,因此预先获取数据库服务器中数据库类型为1和2,并且数据库类型为1和2对应的数据库标识信息为DB1和DB2,将数据库标识信息为DB1和DB2与数据库服务器A建立映射关系,依次类推,数据库服务器B和DB3建立映射关系,数据库服务器C和DB4、DB5建立映射关系,映射关系表见表一。
考虑到数据库类型有很多种,每种类型数据库提供的接口也不一致,那么涉及数据库的移植、复制等的操作处理就会非常复杂,为此,本发明实施例进一步地提供一种统一的数据库接口,以解决上述问题,所述发送单元403具体用于:
获取所述数据库服务器中的数据库的数据库接口,所述数据库服务器中的数据库的类型不完全相同;将不同类型的数据库的数据库接口封装成统一的数据库接口;根据所述统一的数据库接口将所述数据库处理子命令分别发送至与所述数据库处理子命令中的标识信息对应的数据库服务器。
可见,采用这种统一的数据库接口的方式可以兼容异构数据库,例如,同样的插入操作代理(InsertAction),对于MYSQL和DB2的行为是完全不一样的,兼容异构数据库所带来的另外一个好处是,当用户需要调整底层的数据库实现,或者希望采用非数据库的方式进行测试(通常所说的Mock测试),这样的设计就会带来极大的方便。举例来说,如果系统调整,需要将MYSQL调整为DB2,那么唯一的修改就在于“选择数据库模型”这一步骤上,将MYSQL的数据库模型调整为DB2即可,其他的都不需要进行变动。
对于应用程序而言,这样的优化调整是不可见的。
例如,对于MYSQL来说,如果我们需要实现的是“插入,当出现主键或者唯一键重复时进行更新操作”这样的需求,那么装置将会检查所传入的语句的合理性,并视情况,优化成MYSQL的REPLACE语句。然而,同样的需求对于DB2而言,是通过MERGE INTO语句实现的。这也正是体现出了不同的底层数据库对于优化语句的影响,通过在应用层就将语句进行优化可以尽可能地加速操作的执行。
为了充分利用主控节点的系统资源,增加了一个资源回收单元406,用于若将所有的所述数据库处理子命令发送到对应的数据库服务器,则释放内存资源等待处理结果;若接收到所述数据库服务器返回的数据处理结果,则调用内存资源处理数据处理结果。这样,系统的内存资源被充分利用,提高了系统资源的利用率。
该装置在实际使用时,通常以应用程序的形成呈现,即应用程序做为一个数据处理的工具被主控节点加载,这段应用程序统一使用以下六个步骤的方式进行应用:
步骤A:定义连接信息,也就是选择数据库模型,并向工具传递数据库连接信息,如果需要针对分布式数据库服务器的操作,那么需要传递多个连接信息,具体地,选择数据库模型(比如目标数据库是MYSQL,那么就选择MYSQL模型,如果是DB2,则选择DB2模型);整理具体的连接信息,包括IP,端口,用户名和密码等;将连接信息通过某种方式传递到数据库模型中。
步骤B:连接数据库群,也就是向已经注册的数据库群发送连接请求,试图连接上这些数据库群。调整数据库模型的连接参数(超时时间,重试次数等),使其符合应用程序的需求。调用数据库模型的连接方法异步连接到所有注册的数据库节点上。
步骤C:生成对应代理,也就是根据具体的操作类型(增、删、改、查等)获取到具体的代理类型,并提供细节参数,具体地,根据操作的类型从数据库模型中获取到具体的任务代理;设置代理的相关属性,以期满足应用程序的要求。
步骤D:准备任务,也就是明确对于一个或者多个数据库的操作,并整理成一个任务,具体地,根据操作的类型从数据库模型中获取到具体的任务代理;设置代理的相关属性,以期满足应用程序的要求。
步骤E:执行任务,也就是通过工具的接口执行任务,具体地,通过执行代理执行相关的任务,这里提供了多种方式,例如对于一个、一组甚至所有的已经连接的数据库进行相同或者不同的操作;获取到任务的返回值,供应用程序使用。
步骤F:捕获异常,也就是为了应对可能发生的任何异常,都通过统一的流程捕获,以便进一步的异常流程处理,具体地,由工具托管检查每一个步骤的步骤,一旦出现了错误,立刻向应用程序进行汇报,并及时保留现场。
以上应用程序的使用需要强调的有如下几点:第一:整个流程没有“断开连接”、“释放资源”之类的操作。这是因为一旦应用程序选择使用了本工具,那么所有的与释放资源相关的内容都由工具所托管,从而能有效减轻应用程序的压力,从而不用整天在那里进行判断。第二:工具其实提供了两种异常捕获的方式,一种是通过传统的“走一步看一步”的思路,即每做一次操作,工具都会检查这一步操作的正确性。第二种是通过高级编程语言所提提供的异常机制,具有跳转的意味。这里推荐使用第二种方式。第三:工具所提供的步骤虽然看上去比传统的“连接-执行-断开连接”的数据库操作方式来得复杂,但是由于每一个步骤的目标明确性,却更容易被接受和运用。这是因为,传统思路上的“执行”更可以分为“准备-绑定-输入参数-执行-检查结果”等多个步骤,而这里,却由工具来为应用程序执行“准备-绑定”以及“检查结果”的工作。第四:整个流程与底层数据库的选择无关。即无论底层的数据库如何变动,几乎所有的工作都不需要重新修改,只要在选择数据库模型那里调整模型的类型即可。
综上所述,本发明实施例利用多台分布式数据库服务器替换了现有金融批处理系统中的超级服务器,并且主控节点将客户端发送的数据库处理命令集合依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令,根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器,然后将所述数据库处理子命令分别发送给对应的数据库服务器,完成以上动作后主控节点等待每个数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。这样,利用低端数据库服务器上负载数据库的存储空间进行数据处理,提升了性能和安全性,同时提高金融批处理系统的并发处理能力,提高系统资源利用率。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种数据处理方法,其特征在于,该方法包括:
获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;
根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;
将所述数据库处理子命令分别发送给对应的数据库服务器;
接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
2.如权利要求1所述的方法,其特征在于,根据下列方式建立数据库标识信息和数据库服务器的对应关系:
获取所述多个数据库服务器中的数据库类型,其中每个数据库类型对应一个数据库标识信息;
将获取的所述数据库标识信息与对应的所述数据库服务器建立对应关系。
3.如权利要求1所述的方法,其特征在于,将所述数据库处理子命令分别发送给对应的数据库服务器,包括:
获取所述数据库服务器中的数据库的数据库接口,所述数据库服务器中的数据库的类型不完全相同;
将不同类型的数据库的数据库接口封装成统一的数据库接口;
根据所述统一的数据库接口将所述数据库处理子命令分别发送至与所述数据库处理子命令中的标识信息对应的数据库服务器。
4.如权利要求1所述的方法,其特征在于,将所述数据库处理子命令分别发送给对应的数据库服务器之后,包括:
若将所有的所述数据库处理子命令发送到对应的数据库服务器,则释放内存资源;
若接收到所述数据库服务器返回的数据处理结果,则调用内存资源处理数据处理结果。
5.如权利要求1所述的方法,其特征在于,所述依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令,包括:
获取数据处理命令中包含相同类型数据库的命令,其中,每个数据库类型对应一个数据库标识信息;
将所述相同类型数据库的命令划分为一个数据库处理子命令。
6.一种数据处理装置,其特征在于,该装置包括:
获取和拆分单元,用于获取客户端发送的数据库处理命令集合,并依据数据库标识信息将所述数据库处理命令分成多个数据库处理子命令;
确定单元,用于根据所述子命令中的数据库标识信息和数据库服务器的对应关系,确定每条数据库处理子命令中的数据库标识信息对应的数据库服务器;
发送单元,用于将所述数据库处理子命令分别发送给对应的数据库服务器;
处理数据结果单元,用于接收每个所述数据库服务器返回的数据处理结果,并汇总所述数据处理结果发送给所述客户端。
7.如权利要求6所述的装置,其特征在于,所述装置还包括:
建立对应关系单元,用于根据下列方式建立数据库标识信息和数据库服务器的对应关系:
连接多个数据库服务器,并获取所述多个数据库服务器中的数据库类型,其中,每个数据库类型对应一个数据库标识信息;
将所述数据库标识信息与所述数据库服务器建立对应关系。
8.如权利要求6所述的装置,其特征在于,所述发送单元具体用于:
获取所述数据库服务器中的数据库的数据库接口,所述数据库服务器中的数据库的类型不完全相同;
将不同类型的数据库的数据库接口封装成统一的数据库接口;
根据所述统一的数据库接口将所述数据库处理子命令分别发送至与所述数据库处理子命令中的标识信息对应的数据库服务器。
9.如权利要求6所述的装置,其特征在于,所述装置还包括:
资源回收单元,用于若完全将所述数据库处理子命令发送到对应的数据库服务器,则释放内存资源等待处理结果;
若接收到所述数据库服务器返回的数据处理结果,则调用内存资源处理数据处理结果。
10.如权利要求6所述的装置,其特征在于,所述获取和拆分单元具体用于:
获取数据处理命令中包含相同类型数据库的命令,其中,每个数据库类型对应一个数据库标识信息;
将所述相同类型数据库的命令划分为一个数据库处理子命令。
CN201510593781.4A 2015-09-17 2015-09-17 一种数据处理方法及其装置 Active CN105956481B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510593781.4A CN105956481B (zh) 2015-09-17 2015-09-17 一种数据处理方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510593781.4A CN105956481B (zh) 2015-09-17 2015-09-17 一种数据处理方法及其装置

Publications (2)

Publication Number Publication Date
CN105956481A true CN105956481A (zh) 2016-09-21
CN105956481B CN105956481B (zh) 2019-05-10

Family

ID=56917100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510593781.4A Active CN105956481B (zh) 2015-09-17 2015-09-17 一种数据处理方法及其装置

Country Status (1)

Country Link
CN (1) CN105956481B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776033A (zh) * 2016-12-27 2017-05-31 东软集团股份有限公司 一种嵌入式设备的资源利用方法及系统
CN106874371A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 一种数据处理方法及装置
CN109325013A (zh) * 2018-07-11 2019-02-12 中国银联股份有限公司 一种分布式系统的数据管理方法及装置
CN109426559A (zh) * 2017-08-21 2019-03-05 北京国双科技有限公司 命令下发方法和装置、存储介质、处理器
CN109995758A (zh) * 2019-02-28 2019-07-09 北京创鑫旅程网络技术有限公司 数据并行处理方法及装置
CN110120889A (zh) * 2019-05-06 2019-08-13 网易(杭州)网络有限公司 数据处理方法、设备及计算机存储介质
CN110471649A (zh) * 2019-07-11 2019-11-19 广州向导信息科技有限公司 一种编写web服务端程序的开发平台及方法
CN110471971A (zh) * 2019-08-12 2019-11-19 四川九洲电器集团有限责任公司 数据库访问方法、设备及存储介质
WO2020238860A1 (zh) * 2019-05-30 2020-12-03 深圳前海微众银行股份有限公司 分布式文件批处理方法、装置、与可读存储介质
CN112115303A (zh) * 2020-09-02 2020-12-22 北京达佳互联信息技术有限公司 数据处理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1448867A (zh) * 2002-03-30 2003-10-15 深圳市中兴通讯股份有限公司 一种统一访问数据库系统的方法
CN101478437A (zh) * 2009-01-13 2009-07-08 深圳市同洲电子股份有限公司 一种网络资源管理方法、系统及网管服务器
CN101860449A (zh) * 2009-04-09 2010-10-13 华为技术有限公司 一种数据查询方法、装置及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1448867A (zh) * 2002-03-30 2003-10-15 深圳市中兴通讯股份有限公司 一种统一访问数据库系统的方法
CN101478437A (zh) * 2009-01-13 2009-07-08 深圳市同洲电子股份有限公司 一种网络资源管理方法、系统及网管服务器
CN101860449A (zh) * 2009-04-09 2010-10-13 华为技术有限公司 一种数据查询方法、装置及系统

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776033B (zh) * 2016-12-27 2020-05-08 东软集团股份有限公司 一种嵌入式设备的资源利用方法及系统
CN106776033A (zh) * 2016-12-27 2017-05-31 东软集团股份有限公司 一种嵌入式设备的资源利用方法及系统
CN106874371A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 一种数据处理方法及装置
CN109426559A (zh) * 2017-08-21 2019-03-05 北京国双科技有限公司 命令下发方法和装置、存储介质、处理器
CN109426559B (zh) * 2017-08-21 2022-10-04 北京国双科技有限公司 命令下发方法和装置、存储介质、处理器
CN109325013A (zh) * 2018-07-11 2019-02-12 中国银联股份有限公司 一种分布式系统的数据管理方法及装置
CN109325013B (zh) * 2018-07-11 2022-07-08 中国银联股份有限公司 一种分布式系统的数据管理方法及装置
CN109995758A (zh) * 2019-02-28 2019-07-09 北京创鑫旅程网络技术有限公司 数据并行处理方法及装置
CN110120889B (zh) * 2019-05-06 2022-05-20 网易(杭州)网络有限公司 数据处理方法、设备及计算机存储介质
CN110120889A (zh) * 2019-05-06 2019-08-13 网易(杭州)网络有限公司 数据处理方法、设备及计算机存储介质
WO2020238860A1 (zh) * 2019-05-30 2020-12-03 深圳前海微众银行股份有限公司 分布式文件批处理方法、装置、与可读存储介质
CN110471649A (zh) * 2019-07-11 2019-11-19 广州向导信息科技有限公司 一种编写web服务端程序的开发平台及方法
CN110471971A (zh) * 2019-08-12 2019-11-19 四川九洲电器集团有限责任公司 数据库访问方法、设备及存储介质
CN112115303A (zh) * 2020-09-02 2020-12-22 北京达佳互联信息技术有限公司 数据处理方法及装置
CN112115303B (zh) * 2020-09-02 2023-10-03 北京达佳互联信息技术有限公司 数据处理方法及装置

Also Published As

Publication number Publication date
CN105956481B (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
CN105956481A (zh) 一种数据处理方法及其装置
CN110851278A (zh) 一种基于微服务架构的配网自动化主站移动应用服务管理方法和系统
CN106844198B (zh) 一种分布式调度自动化测试平台及方法
CN109150572B (zh) 实现告警关联的方法、装置以及计算机可读存储介质
CN103034735B (zh) 一种大数据分布式文件导出方法
CN110134674B (zh) 一种货币信贷大数据监测分析系统
CN113515499B (zh) 一种数据库服务方法及系统
CN110263054A (zh) Sql工单的审核系统、审核方法、装置及计算机设备
CN105930498A (zh) 一种分布式数据库的管理方法及系统
CN102130950A (zh) 基于Hadoop集群的分布式监控系统及其监控方法
CN109086182A (zh) 数据库自动告警的方法及终端设备
CN105930417B (zh) 一种基于云计算的大数据etl交互式处理平台
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
EP3442201A1 (en) Cloud platform construction method and cloud platform
CN109800081A (zh) 一种大数据任务的管理方法及相关设备
CN111897643B (zh) 线程池配置系统、方法、装置和存储介质
CN105260297B (zh) 一种测试数据管理系统及方法
CN108833451B (zh) 基于国产安全管控平台的多级管控系统及管控方法
CN104410511A (zh) 一种服务器管理方法及系统
CN114422386A (zh) 一种微服务网关的监测方法及装置
CN111401837B (zh) 事件处理方法和系统、计算机可读存储介质
CN113824801B (zh) 一种智能融合终端统一接入管理组件系统
CN111784538A (zh) 一种智能电网大数据信息管理方法及系统
CN110391929A (zh) 一种容错控制方法、装置及容错构件
CN104298750B (zh) 用于实时系统通信的更新处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant