CN110532243A - 数据处理方法、装置和电子设备 - Google Patents

数据处理方法、装置和电子设备 Download PDF

Info

Publication number
CN110532243A
CN110532243A CN201910767762.7A CN201910767762A CN110532243A CN 110532243 A CN110532243 A CN 110532243A CN 201910767762 A CN201910767762 A CN 201910767762A CN 110532243 A CN110532243 A CN 110532243A
Authority
CN
China
Prior art keywords
dilatation
primary database
database
data
configuration 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.)
Pending
Application number
CN201910767762.7A
Other languages
English (en)
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.)
Shanghai Financial Software Ltd By Share Ltd
Original Assignee
Shanghai Financial Software Ltd By Share 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 Shanghai Financial Software Ltd By Share Ltd filed Critical Shanghai Financial Software Ltd By Share Ltd
Priority to CN201910767762.7A priority Critical patent/CN110532243A/zh
Publication of CN110532243A publication Critical patent/CN110532243A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据处理方法、装置和电子设备,该方法包括:对主数据库进行扩容,构建至少一个扩容主数据库;生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。在本实施例中的方法,建立至少一个扩容主数据库,并生成扩容后的主数据库的数据源配置信息,并以此对原数据源配置信息进行刷新;基于刷新后的数据源配置信息,建立扩容主数据库与应用程序的访问链路。保证在对主数据库进行扩容期间,不需要重启应用程序,应用程序可照常运行工作。

Description

数据处理方法、装置和电子设备
技术领域
本发明涉及通信领域,尤其涉及一种数据处理方法、装置和电子设备。
背景技术
随着互联网技术的不断发展,一些互联网应用的用户数量越来越多,在这种情况下互联应用中的数据库的请求量越来越多,随着数据量越来越大,会造成数据库服务器的储存空间不足,互联网应用访问速度越来越慢的现象,此时,就应该从数据库层面上进行扩容,增加扩容数据库,即增加存储空间,将原数据库中的部分数据转移到扩容数据库中。
目前主流方法是在数据库的储存空间不足的情况下,停止应用程序,该应用程序部署在服务器里,将数据库进行扩容,生成扩容数据库,将原数据库中的部分数据转移至扩容数据库中,然后再开启应用程序。但停机扩容数据库的缺点是数据库扩容期间,应用程序无法照常工作。
发明内容
本发明实施例提供一种数据处理方法、装置和电子设备,以解决现有技术数据库扩容期间,应用程序无法照常工作的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,提供了一种数据处理方法,该方法包括:
对主数据库进行扩容,构建至少一个扩容主数据库;
生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;
基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
第二方面,提供了一种数据处理装置,该装置包括:
第一建立模块,用于对主数据库进行扩容,构建至少一个扩容主数据库;
生成模块,用于生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;
第二建立模块,用于基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
第三方面,本发明实施例提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述实施例提供的数据处理方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的数据处理方法的步骤。
在本发明实施例中,对主数据库进行扩容,建立至少一个扩容主数据库,并生成扩容后的主数据库的数据源配置信息,并以此对主数据库的原数据源配置信息进行刷新;基于该刷新后的数据源配置信息,建立扩容主数据库与应用程序的访问链路。从而保证在不重启应用程序的情况下生成扩容后所需的数据源配置信息,并对原数据源配置信息进行刷新,以实现扩容主数据库与应用程序之间的访问连接,完成数据库的动态扩容。本方案在对主数据库进行扩容期间,不需要应用程序重启,应用程序可照常运行工作,扩容过程操作简单、灵活。同时,如果在扩容过程中发生问题,易回滚,不会造成数据丢失。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明的一个实施例的数据处理方法的流程示意图;
图2是本发明的另一个实施例的数据处理方法的流程示意图;
图3是本发明的一个实施例的数据库扩容的结构示意图;
图4是本发明的一个实施例的找到目标数据表方法的流程示意图;
图5是本发明的一个实施例的数据处理装置的结构示意图;
图6是本发明的一个实施例的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明的一个实施例的数据处理方法,该方法可以是数据处理装置50执行,如图1所示,该方法包括:
步骤S102,对主数据库进行扩容,构建至少一个扩容主数据库。
在步骤S102中,在如应用程序所访问的主数据库满足扩容条件时或者响应于用户主动对应用程序所访问的主数据库进行扩容的操作,建立相对原主数据库的至少一个扩容主数据库。
比如,对主数据库A进行扩容,建立两个扩容主数据库B和C。扩容主数据库在执行正常业务访问的场景中也可视为普通的主数据库。
步骤S104,生成扩容后的主数据库的数据源配置信息,并对扩容前主数据库所使用的原数据源配置信息进行动态刷新。
在步骤S104中,在正常情况下,不论是主数据库还是扩容主数据库都有对应的数据源配置信息,其中,该数据源配置信息可包括相应数据库的IP地址信息,以及访问该数据库的路由规则。
建立原主数据库的至少一个扩容主数据库时,可基于其他应用程序(非访问数据库数据的应用程序)生成扩容主数据库的数据源配置信息,通过动态刷新用于访问主数据库的应用程序JVM(Java Virtual Machine,虚拟机)内存中的主数据库所使用的原数据源配置信息,将新生成的数据源配置信息加载到原数据源配置信息中,从而得到刷新后的数据源配置信息,该刷新后的数据源配置信息包括原主数据库的数据源配置信息和扩容主数据库的数据源配置信息。
步骤S106,基于刷新后的数据源配置信息,在上述至少一个扩容主数据库与应用程序之间建立访问连接。
在步骤S106中,扩容主数据库通过刷新后的数据源配置信息与应用程序建立访问链路,保证了在不重启应用程序的情况下完成扩容数据库与应用程序的连接过程,满足了主数据库动态扩容的需求。本方案在对主数据库进行扩容期间,不需要应用程序重启,应用程序可照常运行工作,扩容过程操作简单、灵活。同时,如果在扩容过程中发生问题,易回滚,不会造成数据丢失。
基于创建的访问连接,应用程序可以对扩容数据库执行相应的业务操作。如应用程序对扩容数据库中的数据执行查询、删除、替换等操作或应用程序将新增的数据保存到扩容数据库中。
比如,如图2所示,在对应用程序X1所访问的主数据库进行扩容,建立主数据库对应的至少一个扩容主数据库,并通过另一个应用程序X2生成扩容后主数据库的数据源配置信息。需要说明的是,如果扩容过程中,原主数据库的数据源配置信息需要更新,则新生成扩容后的主数据库的数据源配置信息中包含原主数据库和扩容主数据库对应的数据源配置信息;如果扩容过程中,原主数据库的数据源配置信息不需要更新,则新生成的数据源配置信息中可以只包含扩容主数据库对应的数据源配置信息。基于扩容后生成的数据源配置信息刷新应用程序X1的JVM内存中的原数据源配置信息,应用程序X1的JVM内存中则会新增一套由应用程序X2生成的针对扩容主数据库的数据源配置信息,应用程序X1依靠JVM内存中新增的数据源配置信息连接相应的扩容主数据库。
可选地,在一些实施例中,构建至少一个扩容主数据库可包括:
从主数据库的至少一个备份数据库中,选择一个备份数据库作为扩容主数据库。
比如,主数据库A1有一个备份数据库A2,该备份数据库A2备份有主数据库A1存储的数据,在主数据库A1满足扩容条件时或用户主动对主数据库A1进行扩容的情况下,将备份数据库A2作为扩容主数据库,不需要重新建立一个新的数据库作为扩容主数据库,这样可以节省将主数据库A1的数据同步到扩容主数据库的同步时间,即起到备份数据的作用,又可降低数据同步过程中数据丢失的概率。
或者,如图3所示,主数据库A1有两个备份数据库A11和A12,其中,备份数据库A11备份有主数据库A1的数据,如主数据库A1有10个数据,备份数据库A11备份有主数据库A1存储的10个数据。
在主数据库A1满足扩容条件时或用户主动对主数据库A1进行扩容的情况下,选择备份数据库A11作为扩容主数据库A2,那么备份数据库A12在备份数据库A11作为扩容主数据库A2时开始备份主数据库A1新增的数据,并对主数据库A1额外增加一个备份数据库A13,如在备份数据库A11作为扩容主数据库A2时,主数据库A1新增5个数据,备份数据库A12继续备份主数据库A1新增的5个数据,在备份数据库A12作为扩容主数据库A3的情况下,备份数据库A13仍可继续备份主数据库A1新增的数据。
进一步地,在构建完成至少一个扩容主数据库之后,还可执行如下步骤:包括:创建各扩容主数据库对应的至少一个备份数据库。例如,对扩容主数据库A2增加两个备份数据库A21和A22,若备份数据库A21用于备份扩容主数据库A2的数据,则备份数据库A22可在备份数据库A21作为扩容主数据库时开始备份扩容主数据库A2新增的数据。例如,扩容主数据库A2有原先备份主数据库A1存储的10个数据和新增10个数据,备份数据库A21备份该20个数据,在备份数据库A21作为扩容主数据库A3时,备份数据库A22开始继续备份扩容主数据库A2新增的数据,如扩容主数据库A2新增5个数据,备份数据库A22则备份该5个数据。
优选地,在另一些实施例中,主数据库的备份数据库的个数可设置为2,相对备份数据库的个数为1的优势,在于可以保证应用的可用性;相对于备份数据库的个数为3、4、5.....的优势,在于节省储存空间。
可选地,在一些实施例中,将单个扩容主数据库拆分为多个扩容主数据库,且扩容主数据库中的单张数据表拆分为多张数据表,可以增加数据的存储空间。
可选地,在另一些实施例中,构建至少一个扩容主数据库之后,图1所示的方法还包括:
根据预设的对主数据库的数据扩容规则,删除主数据库和/或扩容主数据库中的冗余数据。
比如,原主数据库A1存储有10个数据,备份数据库A11备份有主数据库A1存储的全部数据,当确定选择备份数据库A11作为扩容主数据库A2时,可以根据具体的数据库扩容时对原主数据库A1的数据扩容规则,对数据库数据进行拆分以及去重处理。比如扩容后,需要主数据库A1保留1-5的数据,而扩容主数据库A2中需保留6-10的数据,则相应的,为节省存储空间可以删除原主数据库A1中6-10的冗余数据,以及扩容主数据库A2中1-5的数据。
在一些实施例中,如果主数据库A1存储有10个数据,扩容主数据库A2备份有主数据库A1存储的10个数据,则可以删除扩容主数据库A2备份的10个数据,以节省存储空间。若扩容主数据库A2备份的数据与主数据库A1存储的数据不一致,则说明扩容主数据库A2与主数据库A1之间的存在故障,及时数据回滚,提高主数据库扩容的容错率。
具体地,删除扩容主数据库中的冗余数据可包括:
删除扩容主数据库中的初始数据,初始数据与主数据库存储的数据一致。
应理解,初始数据为备份数据库作为扩容主数据库前从主数据库备份的数据。
比如,主数据库存储10个数据,扩容主数据库备份有主数据库存储的10个数据,则可删除扩容数据库中该10个数据。
可选地,在一些实施例中,图1所示的方法还包括:
根据刷新后的数据源配置信息确定应用程序待访问的业务数据主键,以及数据库访问路由规则;
根据确定的业务数据主键、以及数据库访问路由规则,从至少一个扩容主数据库中确定待访问的目标数据库。
根据刷新后的数据源配置信息重新确定应用程序待访问的业务数据主键,业务数据主键是扩容主数据库、主数据库中数据表中的一个字段值。预置的数据库访问路由规则是根据业务数据主键、扩容主数据库和原主数据库的个数确定的,根据业务数据主键和数据库访问路由规则,可以路由得到待访问的目标数据库。
例如:一个主数据库和一个扩容主数据库,对应的数据源配置信息分别为ds0、ds1,业务数据主键为100002,若预置的数据库访问路由规则为对主数据库以及扩容数据库的个数之和的取模运算,对2取模运算的结果为0,则与之对应的是第一个主数据库的数据源配置信息ds0,则对第一个主数据库执行数据库SQL语句,完成该业务操作。
应理解,SQL(Structured Query Language)简称,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
可选地,在一些实施例中,图1所示的方法还包括:
根据业务数据主键,以及基于刷新后的数据源配置信息所确定的数据表访问路由规则,从至少一个扩容主数据库的数据表中,确定待访问的目标数据表。
应理解,针对数据库中数据表的访问路由规则是根据业务数据主键、数据表的个数确定的。
例如:两个扩容主数据库和一个主数据库,对应的数据源配置信息分别为ds0、ds1、ds2,不论是扩容主数据库还是主数据库的数据表个数均为2,对应的数据表t0、t1,业务数据主键为100002,预置的数据库访问路由规则为主数据库和扩容主数据库的个数取模运算,如对3取模的运算结果为0,则与之对应的是第一个扩容主数据库的数据源配置信息ds0,预置的数据表访问路由规则为对数据表个数的取模运算,如对2取模的运算结果为0,得到数据表的下标为0,则对第一扩容主数据库中数据表t0执行数据库SQL语句,完成该业务操作。
在实际应用场景中,如图4所示,在不影响原有的应用程序的基础上,在应用程序的JDBC程序中添加预置的数据表访问路由规则,应用程序在执行SQL时会先获取JAVA(服务业务)程序对应的Statement接口去执行数据库SQL,通过自定义的Statement接口,获取应用程序中SQL执行时的业务数据主键,根据业务数据主键按照预置的数据表访问路由规则找到与之对应的目标数据库以及目标数据表,完成应用程序的操作。
应理解,Statement接口是执行数据库操作的一个重要接口,用于在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句。以及JDBC(Java DataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
在本发明实施例中,对主数据库进行扩容,建立至少一个扩容主数据库,并生成扩容后的主数据库的数据源配置信息,并以此对主数据库的原数据源配置信息进行刷新;基于该刷新后的数据源配置信息,建立扩容数据库与应用程序的访问链路。从而保证在不重启应用程序的情况下生成扩容后所需的数据源配置信息,并对原数据源配置信息进行刷新,以实现扩容主数据库与应用程序之间的访问连接,完成数据库的动态扩容。本方案在对主数据库进行扩容期间,不需要应用程序重启,应用程序可照常运行工作,扩容过程操作简单、灵活。同时,如果在扩容过程中发生问题,易回滚,不会造成数据丢失。
如图5所示,图5是本发明的一个实施例的数据处理装置的结构示意图,图5所示的装置50包括:
第一建立模块51,用于对主数据库进行扩容,构建至少一个扩容主数据库;
生成模块52,用于生成扩容后的主数据库的数据源配置信息,并对扩容前主数据库所使用的原数据源配置信息进行动态刷新;
第二建立模块53,用于基于刷新后的数据源配置信息,在至少一个扩容主数据库与应用程序之间建立访问连接。
在本发明实施例中,对主数据库进行扩容,建立至少一个扩容主数据库,并生成扩容后的主数据库的数据源配置信息,并以此对主数据库的原数据源配置信息进行刷新;基于该刷新后的数据源配置信息,建立扩容主数据库与应用程序的访问链路。从而保证在不重启应用程序的情况下生成扩容后所需的数据源配置信息,并对原数据源配置信息进行刷新,以实现扩容主数据库与应用程序之间的访问连接,完成数据库的动态扩容。本方案在对主数据库进行扩容期间,不需要应用程序重启,应用程序可照常运行工作,扩容过程操作简单、灵活。同时,如果在扩容过程中发生问题,易回滚,不会造成数据丢失。
可选地,作为一个实施例,第一建立模块51具体用于:
从主数据库的至少一个备份数据库中,选择一个备份数据库作为扩容主数据库。
可选地,作为一个实施例,装置50还包括:
创建模块,用于创建各扩容主数据库对应的至少一个备份数据库。
可选地,作为一个实施例,装置50还包括:
删除模块,用于根据预设的对主数据库的数据扩容规则,删除主数据库和/或扩容主数据库中的冗余数据。
可选地,作为一个实施例,删除模块具体用于:
删除扩容主数据库中的初始数据,初始数据与主数据库存储的数据一致。
可选地,作为一个实施例,装置50还包括:
确定模块,用于根据刷新后的数据源配置信息确定应用程序待访问的业务数据主键,以及数据库访问路由规则;
数据库确定模块,用于根据确定的业务数据主键、以及数据库访问路由规则,从至少一个扩容主数据库中确定待访问的目标数据库。
可选地,作为一个实施例,装置50还包括:
数据表确定模块,用于根据业务数据主键,以及基于刷新后的数据源配置信息所确定的数据表访问路由规则,从至少一个扩容主数据库的数据表中,确定待访问的目标数据表。
本发明实施例提供的移动终端能够实现图1至图4的方法实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。
图6为实现本发明各个实施例的一种移动终端的硬件结构示意图,下面将结合图6详细描述根据本申请一个实施例的电子设备。参考图6,在硬件层面,电子设备包括处理器,可选地,包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成数据处理装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
对主数据库进行扩容,构建至少一个扩容主数据库;
生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;
基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
在本发明实施例中,对主数据库进行扩容,建立至少一个扩容主数据库,并生成扩容后的主数据库的数据源配置信息,并以此对主数据库的原数据源配置信息进行刷新;基于该刷新后的数据源配置信息,建立扩容主数据库与应用程序的访问链路。从而保证在不重启应用程序的情况下生成扩容后所需的数据源配置信息,并对原数据源配置信息进行刷新,以实现扩容主数据库与应用程序之间的访问连接,完成数据库的动态扩容。本方案在对主数据库进行扩容期间,不需要应用程序重启,应用程序可照常运行工作,扩容过程操作简单、灵活。同时,如果在扩容过程中发生问题,易回滚,不会造成数据丢失。
上述如本申请图1所示实施例揭示的数据处理装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本发明实施例提供一种计算机可读存储介质,对主数据库进行扩容,构建至少一个扩容主数据库;生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的定界,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

Claims (10)

1.一种数据处理方法,其特征在于,所述方法包括:
对主数据库进行扩容,构建至少一个扩容主数据库;
生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;
基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
2.如权利要求1所述的方法,其特征在于,所述构建至少一个扩容主数据库包括:
从所述主数据库的至少一个备份数据库中,选择一个备份数据库作为所述扩容主数据库。
3.如权利要求2所述的方法,其特征在于,所述构建至少一个扩容主数据库之后,还包括:
创建各所述扩容主数据库对应的至少一个备份数据库。
4.如权利要求2所述的方法,其特征在于,所述构建至少一个扩容主数据库之后,还包括:
根据预设的对所述主数据库的数据扩容规则,删除主数据库和/或扩容主数据库中的冗余数据。
5.如权利要求4所述的方法,其特征在于,所述删除所述扩容主数据库中的冗余数据包括:
删除所述扩容主数据库中的初始数据,所述初始数据与所述主数据库存储的数据一致。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
根据刷新后的所述数据源配置信息确定所述应用程序待访问的业务数据主键,以及数据库访问路由规则;
根据确定的所述业务数据主键、以及所述数据库访问路由规则,从所述至少一个扩容主数据库中确定待访问的目标数据库。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
根据所述业务数据主键,以及基于刷新后的所述数据源配置信息所确定的数据表访问路由规则,从所述至少一个扩容主数据库的数据表中,确定待访问的目标数据表。
8.一种数据处理装置,其特征在于,所述装置包括:
第一建立模块,用于对主数据库进行扩容,构建至少一个扩容主数据库;
生成模块,用于生成扩容后的主数据库的数据源配置信息,并对扩容前所述主数据库所使用的原数据源配置信息进行动态刷新;
第二建立模块,用于基于刷新后的所述数据源配置信息,在所述至少一个扩容主数据库与应用程序之间建立访问连接。
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据处理方法的步骤。
CN201910767762.7A 2019-08-20 2019-08-20 数据处理方法、装置和电子设备 Pending CN110532243A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910767762.7A CN110532243A (zh) 2019-08-20 2019-08-20 数据处理方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910767762.7A CN110532243A (zh) 2019-08-20 2019-08-20 数据处理方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN110532243A true CN110532243A (zh) 2019-12-03

Family

ID=68663691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910767762.7A Pending CN110532243A (zh) 2019-08-20 2019-08-20 数据处理方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN110532243A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112379831A (zh) * 2020-11-05 2021-02-19 京信通信系统(中国)有限公司 数据管理方法、装置、计算机设备和存储介质
CN112416903A (zh) * 2020-11-23 2021-02-26 中国工商银行股份有限公司 一种数据库的扩容方法、缩容方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484469A (zh) * 2014-12-31 2015-04-01 天津南大通用数据技术股份有限公司 一种支持多hash map数据库集群系统不停机的扩容方法
CN106446268A (zh) * 2016-10-19 2017-02-22 中国工商银行股份有限公司 一种数据库横向扩展系统及方法
CN109271235A (zh) * 2018-09-06 2019-01-25 广州力挚网络科技有限公司 一种数据库集群建立方法与装置
CN109299066A (zh) * 2018-07-27 2019-02-01 阿里巴巴集团控股有限公司 一种数据库扩容方法及装置
CN110019125A (zh) * 2017-11-27 2019-07-16 北京京东尚科信息技术有限公司 数据库管理的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484469A (zh) * 2014-12-31 2015-04-01 天津南大通用数据技术股份有限公司 一种支持多hash map数据库集群系统不停机的扩容方法
CN106446268A (zh) * 2016-10-19 2017-02-22 中国工商银行股份有限公司 一种数据库横向扩展系统及方法
CN110019125A (zh) * 2017-11-27 2019-07-16 北京京东尚科信息技术有限公司 数据库管理的方法和装置
CN109299066A (zh) * 2018-07-27 2019-02-01 阿里巴巴集团控股有限公司 一种数据库扩容方法及装置
CN109271235A (zh) * 2018-09-06 2019-01-25 广州力挚网络科技有限公司 一种数据库集群建立方法与装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112379831A (zh) * 2020-11-05 2021-02-19 京信通信系统(中国)有限公司 数据管理方法、装置、计算机设备和存储介质
CN112416903A (zh) * 2020-11-23 2021-02-26 中国工商银行股份有限公司 一种数据库的扩容方法、缩容方法及装置

Similar Documents

Publication Publication Date Title
WO2021017421A1 (zh) 区块链状态数据恢复方法及装置、电子设备
US10956444B2 (en) Block chain state data synchronization method, apparatus, and electronic device
CN106815218B (zh) 数据库访问方法、装置和数据库系统
CN103842969B (zh) 信息处理系统
CN111338766A (zh) 事务处理方法、装置、计算机设备及存储介质
JP2023546249A (ja) トランザクション処理方法、装置、コンピュータ機器及びコンピュータプログラム
CN105468473A (zh) 数据迁移方法及数据迁移装置
US20100169289A1 (en) Two Phase Commit With Grid Elements
CN109669709A (zh) 一种区块链升级的数据迁移方法及数据迁移系统
CN111343241B (zh) 一种图数据更新方法、装置及系统
CN108959341A (zh) 一种数据同步的方法、装置及设备
CN108694218A (zh) 一种数据写入及读取的方法和装置
CN110532243A (zh) 数据处理方法、装置和电子设备
US20150178122A1 (en) Method and system for providing a high-availability application
WO2024087777A1 (zh) 数据库表的数据重整方法和装置、介质和计算机设备
CN108563693A (zh) 一种事务的处理方法、装置及设备
CN107357691B (zh) 镜像文件的处理方法及装置
CN108776670A (zh) 一种异地容灾方法、系统和电子设备
CN104598463A (zh) 用于切换数据库的方法和装置
CN116303789A (zh) 多分片多副本数据库并行同步方法、装置及可读介质
CN115292394A (zh) 数据处理方法、装置、计算机设备和存储介质
WO2022077916A1 (zh) 一种数据处理系统、基于区块链的数据处理方法及设备
CN115203746A (zh) 数据账户的访问授权方法及装置
CN115587141A (zh) 一种数据库同步方法和装置
CN107547607B (zh) 一种集群迁移方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191203