CN106980514B - 配置数据的更新方法和装置 - Google Patents

配置数据的更新方法和装置 Download PDF

Info

Publication number
CN106980514B
CN106980514B CN201610034615.5A CN201610034615A CN106980514B CN 106980514 B CN106980514 B CN 106980514B CN 201610034615 A CN201610034615 A CN 201610034615A CN 106980514 B CN106980514 B CN 106980514B
Authority
CN
China
Prior art keywords
configuration table
configuration
virtual
data
snapshot
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.)
Active
Application number
CN201610034615.5A
Other languages
English (en)
Other versions
CN106980514A (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.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610034615.5A priority Critical patent/CN106980514B/zh
Publication of CN106980514A publication Critical patent/CN106980514A/zh
Application granted granted Critical
Publication of CN106980514B publication Critical patent/CN106980514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种配置数据的更新方法和装置,其中,方法包括:将物理配置表同步至虚拟配置表;根据虚拟配置表生成配置表组,并生成配置表组的快照;将更新之后的配置数据导入虚拟配置表,并将虚拟配置表与物理配置表同步;判断应用程序运行是否异常;以及如果判断异常,则根据配置表组的快照进行恢复。实现了在不改变应用程序现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。

Description

配置数据的更新方法和装置
技术领域
本申请涉及数据处理技术领域,尤其涉及一种配置数据的更新方法和装置。
背景技术
通常,一个应用程序会有大量的配置条目,为了对这些配置条目进行管理,通常会使用关系型数据库来存储这些配置条目。然而这些配置条目的分类通常会产生上百张配置表。当需要对应用程序进行升级或修改时,可通过运行相应的数据语言从数据库中读取这些配置条目来改变应用程序的运行逻辑的分支。
然而这些配置条目的更新可能会发生失败,从而导致应用程序无法正常工作。为了在发生由于配置条目更新而导致的应用程序异常之后对应用程序进行复原,因此需要配置条目能够回滚到更新前的状态。因此***中会预先存储带有更新前数据的回滚SQL脚本,从而便于进行数据的回滚操作。
但是,在上述方法中,由于缺乏对回滚脚本的正确性的保障,有可能保存的回滚SQL脚本数据不正确,从而导致当大量的配置条目被更新之后在发现程序异常时,数据回不到最初的状态。
发明内容
本申请的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本申请的第一个目的在于提出一种配置数据的更新方法,该方法通过虚拟配置表存储各种表的数据结构,从而在当应用程序运行异常时,将根据虚拟配置表生成的配置表组的快照进行恢复,因此实现了在不改变应用程序现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。
本申请的第二个目的在于提出了一种配置数据的更新装置。
为达上述目的,根据本申请第一方面实施例提出的一种配置数据的更新方法,包括以下步骤:将物理配置表同步至虚拟配置表;根据虚拟配置表生成配置表组,并生成所述配置表组的快照;将更新之后的配置数据导入虚拟配置表,并将所述虚拟配置表与所述物理配置表同步;判断应用程序运行是否异常;以及如果判断异常,则根据所述配置表组的快照进行恢复。
通过本申请实施例的配置数据的更新方法,将物理配置表同步至虚拟配置表并根据虚拟配置表生成配置表组,从而生成配置表组的快照,并将更新之后的配置数据导入虚拟配置表,将虚拟配置表与物理配置表同步,进而在判断出应用程序运行异常的时候,可根据配置表组的快照进行恢复。因此本申请实施例实现了在不改变应用程序现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。
为达上述目的,根据本申请的第二方面实施例提出的一种配置数据的更新装置,包括:第一同步模块,用于将物理配置表同步至虚拟配置表;生成模块,用于根据虚拟配置表生成配置表组,并生成所述配置表组的快照;第二同步模块,用于将更新之后的配置数据导入虚拟配置表,并将所述虚拟配置表与所述物理配置表同步;判断模块,用于判断应用程序运行是否异常;以及恢复模块,用于在判断异常时,根据所述配置表组的快照进行恢复。
通过本申请实施例的配置数据的更新装置,将物理配置表同步至虚拟配置表并根据虚拟配置表生成配置表组,从而生成配置表组的快照,并将更新之后的配置数据导入虚拟配置表,将虚拟配置表与物理配置表同步,进而在判断出应用程序运行异常的时候,可根据配置表组的快照进行恢复。本申请的实施例实现了在不改变应用程序现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本申请一个实施例的配置数据的更新方法的流程图;
图2是(a)-(d)是根据本申请一个具体实施例的物理配置表、虚拟配置表以及配置表组的快照的示例图;
图3是根据本申请一个具体实施例的配置数据的更新方法的示例流程图;
图4是根据本申请的一个具体实施例的结合配置管理***的配置数据的更新的方法的示意图
图5是根据本申请一个具体实施例的配置管理***执行同步物理配置列表数据到虚拟列表数据的方法的流程图;
图6是根据本申请一个具体实施例的配置管理***创建快照的方法的流程图;
图7是根据本申请一个具体实施例的将虚拟配置表中的数据同步到物理配置表中的方法的流程图;
图8是根据本申请一个具体实施例的恢复虚拟配置表的方法的流程图;
图9是根据本申请一个具体实施例的配置数据的更新装置的结构示意图;
图10是根据本申请一个具体实施例的配置数据的更新装置的结构示意图;以及
图11是根据本申请另一个实施例的配置数据的更新装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的配置数据的更新方法和装置。
图1是根据本申请一个实施例的配置数据的更新方法的流程图。
如图1所示,该配置数据的更新方法包括:
S110,将物理配置表同步至虚拟配置表。
在本申请的一个实施例中,通过提供包括多个虚拟配置表的虚拟配置列表,根据用户的指令从虚拟配置表列表中选择对应的虚拟配置表,并将物理配置表的数据同步至选择的虚拟配置表。
举例而言,通过配置关系***对物理配置表和虚拟配置表进行管理,该***具有独立的关系型数据库,用户可通过配置关系***中的管理页面将各个***的配置数据源集成到配置管理***中,例如,可通过配置关系***中数据库的URL(Uniform ResourceLocator,统一资源定位符)完成该操作,即根据每个配置数据表生成对应的URL,通过将多个URL保存在配置管理***中即可实现对配置数据源的集成操作。进而,用户可在配置关系***中的管理页面将各个***的物理配置表同步到虚拟配置表中。
在本申请的一个实施例中,物理配置表可为多个,且多个物理配置表分别对应多个***,且每个物理配置表对应一个虚拟配置表。
可以理解,在创建数据库的时候,可基于数据定义语言创建关系型数据库管理***,物理配置表为配置条目所在的配置表,可为每一个类别的配置数据创建一张配置表,其中配置条目为针对***中每一种具体数据关系所对应的条目,可对每一种数据关系进行限定,比如,如图2(a)所示,可通过一个物理配置表配置渠道ABC的最小金额为100,最大金额为1000,再比如,如图2(b)所示,可以通过一个物理配置表配置商户XYZ的最小接受金额为100,最大金额为1000等。
另外,与物理配置表相对应,每个物理配置表对应一个虚拟配置表。虚拟配置表使用同一张表记录所有的数据,可使用一个大字段以某种序列化的方式存储物理配置表中的配置条目。如图2(c)所示,可以使用一个虚拟配置表将物理配置表图2(a)和图2(b)中的配置条目以一种序列化的方式存储,且每一条记录均标识有其所属的物理配置表。
S120,根据虚拟配置表生成配置表组,并生成配置表组的快照。
举例而言,用户可通过管理页面创建Deployment Package关联到虚拟配置表,并可通过管理页面为虚拟配置表创建快照,该快照可被保存在配置管理***中的数据库中。
需要说明的是,Deployment Package是一组配置表,用于配置数据的操作单元,使得其可以对多个配置表进行操作。
其中,配置表组的快照和虚拟配置表的结构基本一致,如图2(d)所示,配置表的快照具有一个SNAOSHOT_ID来标注其属于虚拟数据表的历史版本。
S130,将更新之后的配置数据导入虚拟配置表,并将虚拟配置表与物理配置表同步。
可以理解,当应用程序进行运行等操作后,其对应的物理配置表中的数据会发生变化,为了保持虚拟配置表和物理配置表的同步,需要将更新之后的配置数据导入虚拟配置表,以将虚拟配置表与物理配置表同步。
S140,判断应用程序运行是否异常。
在本申请的一个实施例中,可获取应用程序的运行参数,并通过运行参数来判断应用程序的运行是否异常。
需要说明的是,本申请实施例中的应用程序可以是安装在操作***中的各种软件等。
S150,如果判断异常,则根据配置表组的快照进行恢复。
具体地,如果判断应用程序运行异常,则根据配置表组的快照中的对应数据对虚拟配置表进行覆盖,并将虚拟配置表与物理配置表同步。即向用户提供快照列表并根据用户指令从快照列表选择对应的配置表组的快照,以及根据用户选择的快照进行恢复,其中该快照列表中包括多个配置表组的快照。
可以理解,用户可通过管理页面导入配置数据更新到虚拟配置表中,用户可通过管理页面将Deployment Package同步到物理配置表中,从而用户可以选择过去创建的快照恢复虚拟配置表中的数据。
为了使得本领域的技术人员更加清楚的了解本申请,举例进行说明,如图3所示,该配置数据的更新方法可包括:用户同步物理配置表数据到虚拟数据表中,此时虚拟数据表中的数据物理数据表中的数据一致(S310),进而用户根据当前的虚拟数据表创建Deployment Package的一个快照(S320),用户导入更新的配置数据到虚拟数据表中(S330),进而用户审核更新后的配置数据并同步到物理配置数据表中,配置数据更新完毕(S340),进而如果配置数据导致程序运行异常,用户选择之前创建的快照,使用该快照覆盖虚拟配置表(S350),然后执行从虚拟配置表到物理配置表的同步操作(S360)。
为了使得本申请中对配置数据的更新的方法的描述更加的具体化,现结合配置管理***的具体定义进行说明,该配置管理***的定义如图4所示。
其中,图4中的C表datasource:定义了数据源属性,通过这些属性程序可以建立和物理配置表的连接,进而可以增删改查物理配置表中的数据。其中,C表中的:
ds_name:是给数据源一个全局唯一的名称;
user_name:是物理数据库连接用户名;
encrypted_password:是加密之后的密码串;
connection_url:是JDB连接字符串,如jdbc:MySQL://localhost:3306/test;
created:是记录表的创建时间;
modified:是该记录最后修改时间。
图4中的B表virtual_table_def,用于存储实体表的结构,其中,B表中的:
virtual_table_name:是虚拟表的全局唯一名称。比如物理数据库test中的表名hello_world,可以定义虚拟表名为test_hello_world;
ds_name:可通过它关联到datasource表中的记录,用来确定数据库连接;
column_defs:是大容量的字段,可以存储物理表中的字段名和对应的类型,如{channel:’varchar’,min_amount:’number’}这里的channel和min_amount就是字段名,varchar和number则是字段的类型;
unique_constraint:用于定义哪些物理表中的字段名作为主键约束。如[‘channel’];
created:是该记录创建时间;
modified:是该记录最后修改时间。
图4中的A表virtual_table_data用来存储物理表数据,其中A表中的:
virtual_table_name:是用于关联到图4的表B即virtual_table_def中的virtual_table_name,以此获得表字段定义;
virtual_unique_key:通过virtual_table_name和virtual_unique_key组合产生该记录在virtual_table_data中唯一性约束,防止重复记录***到虚拟表中,如[‘ABC’];
values:是个大容量的字段,可以用来存储字段名和其值,如{channel:’ABC’,min_amount:100.00},这里的channel和min_amount就是字段名,’ABC’和100.00则是字段的值;
created:是该记录创建时间;
modified:是该记录最后修改时间。
图4中的D表即virtual_table_snapshot表,用以存储虚拟表快照数据。其中,图4中表D中的:
snapshot_id:是赋予快照的唯一性值;
virtual_table_name:是用于关联到图4中的表B即virtual_table_def中的virtual_table_name;
package_name:关联到deployment_package中的package_name;
data:大容量字段,用来存储某一张表的全量数据;
created:是该记录创建时间;
modified:是该记录最后修改时间。
图4中的表E即deployment_package表用来定义属于一类别的表。其中,表E中的:
virtual_table_names:是个数组,数组中的元素对应图4中表B即virtual_table_def中virtual_table_name,其值如[‘test_hello_world’,‘channel_amount_limit_conf’];
created:是该记录创建时间;
modified:是该记录最后修改时间。
在本申请的一个实施例中,当用户同步Physical Table(物理配置表)数据到Virtual Table(虚拟配置表)中时,首先从Virtual Table列表中选择Virtual Table。其中,Virtual Table的列表展示通过表B即virtual_table_def中的记录获得。然后用户可点击同步物理配置表菜单,进而配置管理***执行下列步骤,如图5所示,该配置管理***执行同步物理配置列表数据到虚拟列表数据的方法如下:
S510,收到用户指令,指令中包含信息:virtual_table_name。
S520,图4中的表B即virtual_table_def中定位到virtual_table_name对应的记录(可将其代号VT),因此也获得了ds_name。
S530,在图4中的表E即datasource中找到ds_name所对应的记录,找到数据库连接信息。
S540,创建数据库连接。
S550,在数据库连接上执行select*from{VT.physical_table_name}语句查询来获取该Virtual Table所对应的物理表的数据。
其中,本申请实施例中的{}表示占位符,{VT.physical_table_name}表示VT中physical_table_name字段的值。
S560,根据VT中的column_defs,从查询结果中获取字段及其值。然后为每条查询记录构建键值对的对象。根据VT中的unique_constraint所列的字段名从查询结果中获取字段及其值来构建唯一性约束主键数组。将键值对象和唯一性主键数组分别序列化成JSON格式,代号为JSON_V和JSON_K。
S570,将序列化后的JSON写入到图4中的A表即virtual_table_data表中。其中,写入操作可以由如数据语言完成:
Insert into virtual_table_data(virtual_table_name,virtual_unique_key,values,created,modified)values({VT.virtual_table_name},{JSON_K},{JSON_V},current_time,current_time)。
在本申请的一个实施例中,当用户想要创建快照时,首先选择图4中的表E即Deployment Package。Deployment Package的列表展示可以通过deployment_package中的记录获取。然后用户可点击快照菜单,进而配置管理***执行下列步骤来创建快照,图6为根据本申请一个具体实施例的配置管理***创建快照的方法的流程图:
S610,收到用户指令,指令中包含信息:package_name,userId。
S620,生成snapshot_id,比如使用当前时间作为snapshot_id。
S630,在图4中的表E即deployment_package中定位到package_name对应的记录(可将其代号为DP)。
S640,根据DP中virtual_table_names获知关联的一个或多个Virtual Table。
S650,循环迭代每个virtual_table_name,依次执行如下操作:
a.从virtual_table_data中查找该virtual_table_name所有关联的记录:select*from virtual_table_data where virtual_table_name={virtual_table_name};
b.将查询的结果集序列化,记作R,并写入virtual_table_snapshot表中的data字段:insert into virtual_table_snapshot(snapshot_id,package_name,virtual_table_name,created,creator,data)values({snapshot_id},{DP.package_name},{virtual_table_name},current_time,{userId},{R})。
在本申请的一个实施例中,当用户想要将Virtual Table中的数据同步到Physical Table时,首先选择Virtual Table,然后可点击同步菜单,进而配置管理***将执行如下操作,图7为根据本申请一个具体实施例的将虚拟配置表中的数据同步到物理配置表中的方法的流程图,如图7所示,该将虚拟配置表中的数据同步到物理配置表中的执行步骤具体为:
S710,收到用户指令,指令中包含信息:virtual_table_name。
S720,定位该virtual_table_name所对应在图4中的表B即virtual_table_def中的记录,记作VD。
S730,查询virtual_table_data中关联到该virtual_table_name的数据,例如可使用数据语言:select*from virtual_table_data where virtual_table_name={virtual_table_name}查询,并将结果集记作R。
S740,根据VD中的column_defs读取查询结果集中数据,并对每条记录执行如下数据语言:
insert into{VD.physical_table_name}({VD.column_defs[0].key},{VD.column_defs[1].key},…{VD.column_defs[n].key})values({R.get(VD.column_defs[0].key)},({R.get(VD.column_defs[1].key),…,({R.get(VD.column_defs[n].key)}})。
在本申请的一个实施例中,当用户选择将过去创建的快照恢复Virtual Table的数据时,首先通过快照列表选择快照。快照列表可以通过virtual_table_snapshot获取。然后用户可点击恢复菜单,进而配置管理***将执行如下操作,图8为根据本申请一个具体实施例的恢复虚拟配置表的方法的流程图,如图8所示,恢复虚拟配置表的方法具体包括:
S810,接受用户指令,指令中包含信息:snapshot_id。
S820,通过snapshot_id查找图4中的表D即virtual_table_snapshot表,例如可用以下数据语言进行查找:select*from virtual_table_snapshot where snapshot_id={snapshot_id}。查找到的每条记录就是一张Virtual Table的全量数据。
S830,将查询结果集中的每条记录记作R,循环迭代每条记录依次做如下操作:
a.删除virtual_table_data中和R.virtual_table_name关联的数据,例如可通过数据语句:delete from virtual_table_data where virtual_table_name={R.virtual_table_name}进行删除操作;
b.将R反序列化获得全表数据;
c.针对每条数据对virtual_table_data进行***操作:insert into virtual_table_data(virtual_table_name,virtual_unique_key,values,created,modified)values({R.virtual_table_name},{R.virtual_unique_key},{R.values},current_time,current_time)。
本申请实施例中的配置数据的更新方法,将物理配置表同步至虚拟配置表并根据虚拟配置表生成配置表组,从而生成配置表组的快照,并将更新之后的配置数据导入虚拟配置表,将虚拟配置表与物理配置表同步,进而在判断出应用程序运行异常的时候,根据配置表组的快照进行恢复。本申请的实施例,在实现了在不改变应用程序的现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。
为了实现上述实施例,本申请还提出了一种配置数据的更新装置,如图9所示,该配置数据的更新装置可包括:第一同步模块910、生成模块920、第二同步模块930、判断模块940和恢复模块950。
其中,第一同步模块910用于将物理配置表同步至虚拟配置表。
在本申请的一个实施例中,图10为根据本申请一个具体实施例的配置数据的更新装置的结构示意图,即在如图9所示的基础上,如图10所示,第一同步模块910具体包括第二提供子模块911、第二接收子模块912和第二同步子模块913。具体地,在本申请的一个实施例中,第二接收子模块912根据第二提供子模块911提供的包括多个虚拟配置表的虚拟配置列表,根据用户的指令从虚拟配置表列表中选择对应的虚拟配置表,并通过第二同步子模块913将物理配置表的数据同步至选择的虚拟配置表。
在本申请的一个实施例中,物理配置表可为多个,且多个物理配置表分别对应多个***,且每个物理配置表对应一个虚拟配置表。
生成模块920用于根据虚拟配置表生成配置表组,并生成配置表组的快照。
举例而言,用户可通过管理页面创建Deployment Package关联到虚拟配置表,生成模块920可通过管理页面为虚拟配置表创建快照,该快照可被保存在配置管理***中的数据库中。
需要说明的是,Deployment Package是一组配置表,用于配置数据的操作单元,使得其可以对多个配置表进行操作。
第二同步模块930用于将更新之后的配置数据导入虚拟配置表,并将虚拟配置表与物理配置表同步。
判断模块940,用于判断应用程序运行是否异常。
在本申请的一个实施例中,判断模块940可获取应用程序的运行参数,并通过运行参数来判断应用程序的运行是否异常。
恢复模块950,用于在判断异常时,根据配置表组的快照进行恢复。
在本申请的一个实施例中,图11为根据本申请另一个具体实施例的配置数据的更新装置的结构示意图,在如图9所示的基础上,如图11所示的基础上,恢复模块950具体包括:覆盖子模块951、第一同步子模块952、第一提供子模块953和第一接收子模块954。
具体地,如果判断模块940判断应用程序运行异常,则覆盖子模块951根据配置表组的快照中的对应数据对虚拟配置表进行覆盖,第一同步子模块952将虚拟配置表与物理配置表同步。
可以理解,第一提供子模块953向用户提供快照列表,第一接收子模块954根据用户指令从快照列表选择对应的配置表组的快照,以及根据用户选择的快照进行恢复,其中该快照列表中包括多个配置表组的快照。
本申请实施例中的配置数据的更新装置,将物理配置表同步至虚拟配置表并根据虚拟配置表生成配置表组,从而生成配置表组的快照,并将更新之后的配置数据导入虚拟配置表,将虚拟配置表与物理配置表同步,进而在判断出应用程序运行异常的时候,根据配置表组的快照进行恢复。本申请的实施例,在实现了在不改变应用程序现有的配置方案的前提下,可方便的对数据进行回滚,提高了效率。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

1.一种配置数据的更新方法,其特征在于,包括以下步骤:
通过配置关系***中的管理页面,为每个类型的配置数据创建一张物理配置表;
将所述物理配置表同步至虚拟配置表;
根据虚拟配置表生成配置表组,并生成所述配置表组的快照;
将更新之后的配置数据导入虚拟配置表,并将所述虚拟配置表与所述物理配置表同步;
判断应用程序运行是否异常;以及
如果判断异常,则根据所述配置表组的快照进行恢复。
2.如权利要求1所述的配置数据的更新方法,其特征在于,所述根据所述配置表组的快照进行恢复具体包括:
根据所述配置表组的快照中的对应数据对所述虚拟配置表进行覆盖;
将所述虚拟配置表与所述物理配置表同步。
3.如权利要求1所述的配置数据的更新方法,其特征在于,其中,所述物理配置表为多个,所述多个物理配置表分别对应多个***,每个所述物理配置表对应一个虚拟配置表。
4.如权利要求2所述的配置数据的更新方法,其特征在于,还包括:
提供快照列表,其中,所述快照列表中包括多个所述配置表组的快照;
根据用户指令从所述快照列表选择对应的快照,其中,根据用户选择的快照进行恢复。
5.如权利要求1所述的配置数据的更新方法,其特征在于,所述将物理配置表同步至虚拟配置表具体包括:
提供虚拟配置表列表,其中,所述虚拟配置表列表中包括多个所述虚拟配置表;
根据用户指令从所述虚拟配置表列表中选择对应的虚拟配置表,并将所述物理配置表的数据同步至所述选择的虚拟配置表。
6.一种配置数据的更新装置,其特征在于,包括:
创建模块,用于通过配置关系***中的管理页面,为每个类型的配置数据创建一张物理配置表;
第一同步模块,用于将所述物理配置表同步至虚拟配置表;
生成模块,用于根据虚拟配置表生成配置表组,并生成所述配置表组的快照;
第二同步模块,用于将更新之后的配置数据导入虚拟配置表,并将所述虚拟配置表与所述物理配置表同步;
判断模块,用于判断应用程序运行是否异常;以及
恢复模块,用于在判断异常时,根据所述配置表组的快照进行恢复。
7.如权利要求6所述的配置数据的更新装置,其特征在于,所述恢复模块具体包括:
覆盖子模块,用于根据所述配置表组的快照中的对应数据对所述虚拟配置表进行覆盖;
第一同步子模块,用于将所述虚拟配置表与所述物理配置表同步。
8.如权利要求6所述的配置数据的更新装置,其特征在于,其中,所述物理配置表为多个,所述多个物理配置表分别对应多个***,每个所述物理配置表对应一个虚拟配置表。
9.如权利要求7所述的配置数据的更新装置,其特征在于,所述恢复模块还包括:
第一提供子模块,用于提供快照列表,其中,所述快照列表中包括多个所述配置表组的快照;
第一接收子模块,用于根据用户指令从所述快照列表选择对应的快照,其中,根据用户选择的快照进行恢复。
10.如权利要求6所述的配置数据的更新装置,其特征在于,所述第一同步模块具体包括:
第二提供子模块,用于提供虚拟配置表列表,其中,所述虚拟配置表列表中包括多个所述虚拟配置表;
第二接收子模块,用于根据用户指令从所述虚拟配置表列表中选择对应的虚拟配置表;
第二同步子模块,用于将所述物理配置表的数据同步至所述选择的虚拟配置表。
CN201610034615.5A 2016-01-19 2016-01-19 配置数据的更新方法和装置 Active CN106980514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610034615.5A CN106980514B (zh) 2016-01-19 2016-01-19 配置数据的更新方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610034615.5A CN106980514B (zh) 2016-01-19 2016-01-19 配置数据的更新方法和装置

Publications (2)

Publication Number Publication Date
CN106980514A CN106980514A (zh) 2017-07-25
CN106980514B true CN106980514B (zh) 2020-08-07

Family

ID=59341348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610034615.5A Active CN106980514B (zh) 2016-01-19 2016-01-19 配置数据的更新方法和装置

Country Status (1)

Country Link
CN (1) CN106980514B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108170507B (zh) * 2017-12-04 2022-02-22 上海市信息网络有限公司 虚拟应用管理方法/***、计算机可读存储介质及服务端
CN110162524B (zh) * 2019-04-15 2023-08-25 中国平安财产保险股份有限公司 配置数据的管理方法、装置、计算机设备及存储介质
CN113032704B (zh) * 2021-02-24 2024-06-21 广州虎牙科技有限公司 数据处理方法、装置、电子设备及介质
CN113778695B (zh) * 2021-11-12 2022-04-29 深圳华锐分布式技术股份有限公司 跨应用生命周期的内存快照管理方法、装置、设备及介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660814B2 (en) * 2005-12-21 2010-02-09 Teradata Us, Inc. Techniques for mapping a physical table to multiple virtual tables
CN100389387C (zh) * 2006-03-02 2008-05-21 华为技术有限公司 一种配置信息平滑升级的方法及装置
CN101102577B (zh) * 2006-07-07 2010-12-08 中兴通讯股份有限公司 无线通信基站***前后台数据库表数据增量同步方法
CN101729694A (zh) * 2008-10-29 2010-06-09 中兴通讯股份有限公司 一种自动业务实现流程配置及运行的方法及***
CN102236707A (zh) * 2011-06-28 2011-11-09 贵阳朗玛信息技术股份有限公司 获取数据库更新数据的方法、装置及***
CN103049521B (zh) * 2012-12-19 2015-11-11 广东电子工业研究院有限公司 可实现多属性复合条件查询的虚拟表索引***及方法
CN103617175A (zh) * 2013-11-04 2014-03-05 广东电子工业研究院有限公司 一种用于大规模分布异构数据的虚拟化方法
CN103744374B (zh) * 2013-12-25 2016-08-17 广州达意隆包装机械股份有限公司 一种伺服电机参数自动配置方法和***
CN103763137B (zh) * 2014-01-07 2017-08-08 北京东土科技股份有限公司 一种设备配置连接保护方法、***及装置
CN104917630B (zh) * 2015-04-15 2018-12-28 深信服科技股份有限公司 对虚拟网络进行恢复的方法和***

Also Published As

Publication number Publication date
CN106980514A (zh) 2017-07-25

Similar Documents

Publication Publication Date Title
CN106980514B (zh) 配置数据的更新方法和装置
CN107688664B (zh) 图表生成方法、装置、计算机设备和存储介质
AU2013210018B2 (en) Location independent files
WO2018095299A1 (zh) 一种时序数据管理方法、设备和装置
CN105205053A (zh) 一种数据库增量日志解析方法及***
CN109522290A (zh) 一种HBase数据块恢复及数据记录提取方法
CN111209344A (zh) 数据同步方法及装置
CN106874281B (zh) 实现数据库读写分离的方法和装置
CN106445643B (zh) 克隆、升级虚拟机的方法及设备
US11258583B2 (en) Method for data storage, device, and computer readable data storage medium
WO2019057081A1 (zh) 数据存储方法、数据查询方法、计算机设备及存储介质
CN105867903A (zh) 代码库拆分的方法及装置
CN114721881B (zh) 一种数据库管理方法、***、电子设备及存储介质
CN111090803A (zh) 一种数据处理方法、装置、电子设备和存储介质
CN105260266B (zh) 一种快照卷写方法及依赖快照***
CN113971041A (zh) 跨版本控制***的版本同步方法及装置
CN109462661A (zh) 数据同步方法、装置、计算机设备和存储介质
US20130073549A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
CN111309677A (zh) 一种分布式文件***的文件管理方法及装置
CN113254315B (zh) 埋点信息的上报方法、埋点方法、装置、介质、电子设备
CN114116253A (zh) 一种消息队列的消息处理方法及***
CN110928945A (zh) 一种针对数据库的数据处理方法及装置,数据处理***
CN113032408B (zh) 数据处理方法、***及设备
CN111079199B (zh) 基于区块链技术的企业信用数据截图防篡改方法
KR100678926B1 (ko) 로그 정보 관리 시스템 및 방법

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240218

Address after: Guohao Times City # 20-01, 128 Meizhi Road, Singapore

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: Ky1-9008 Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands, ky1-9008

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands