CN110457313A - 一种应用配置管理方法、服务器及存储介质 - Google Patents

一种应用配置管理方法、服务器及存储介质 Download PDF

Info

Publication number
CN110457313A
CN110457313A CN201910632927.XA CN201910632927A CN110457313A CN 110457313 A CN110457313 A CN 110457313A CN 201910632927 A CN201910632927 A CN 201910632927A CN 110457313 A CN110457313 A CN 110457313A
Authority
CN
China
Prior art keywords
application
associated configuration
server
relationship
chart database
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
CN201910632927.XA
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.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management 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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201910632927.XA priority Critical patent/CN110457313A/zh
Publication of CN110457313A publication Critical patent/CN110457313A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • 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
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/41Indexing; Data structures therefor; Storage structures

Landscapes

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

Abstract

本申请实施例公开了一种应用配置管理方法、服务器及存储介质,该方法包括:服务器接收第一应用的关联配置关系变更请求;所述服务器根据所述变更请求向所述图数据库发送第一查询请求;所述服务器获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系。采用本申请实施例能够提高应用配置管理的效率。

Description

一种应用配置管理方法、服务器及存储介质
技术领域
本发明涉及计算机应用领域,尤其涉及一种应用配置管理方法、服务器及存储介质。
背景技术
数据爆炸的时代,在社交网络、实时推荐、征信系统、人工智能方面,我们都需要通过繁杂庞大的数据进行关联数据分析。而传统的关系型数据库存在建模困难、查询困难、扩展困难等特点,最终的结果就会导致关系型数据库进行关联数据查询的时候性能低,而这些关系型数据库所不能处理的难点恰恰是图数据库的强项,它最擅长的就是处理数据之间的关系。
Neo4j图数据库是基于数学里图论的思想和算法而实现的高效处理复杂关系网络的新型数据库系统。它善于处理大量的、复杂的、互连的、多变的数据。在网状关系上的计算效率远远高于传统的关系型数据库,但在应用配置管理方面应用较少,因此,如何将图数据库应用于繁杂的应用配置管理中以解决应用配置管理效率低下的问题是本领域技术人员致力于研究的方向。
发明内容
本申请实施例提供了一种应用配置管理方法、服务器及存储介质,能够提高应用配置的管理效率。
第一方面,本申请实施例提供了一种应用配置管理方法,该方法包括:
服务器接收第一应用的关联配置关系变更请求,所述变更请求携带了所述第一应用的关联配置关系变更说明,所述第一应用为所述服务器管理的多个应用中的任意一个,所述多个应用之间存在多个关联配置关系,所述多个关联配置关系以边的形式存储在图数据库中,所述多个应用以节点的形式存储在所述图数据库中;
所述服务器根据所述变更请求向所述图数据库发送第一查询请求,所述第一查询请求携带了第一查询要求,所述第一查询要求为以所述第一应用为开始节点查询第一预设深度的关联配置关系,所述第一预设深度为预设的距离所述第一应用节点的边的数量;
所述服务器获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;
所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
本申请实施例提供了一种基于图数据库的应用配置管理方法,图数据库以图的形式表示应用之间的关联配置关系从而更直观,存储更灵活,在此基础上采用图遍历算法使得查询更高效,本申请结合图数据库来管理多个应用之间的关联配置关系,从而提高了管理的效率。
结合第一方面,在第一方面的第一种可能的实施方式中,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系,包括:
所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;
所述服务器根据所述变更方案变更所述第一应用的关联配置关系。
本申请实施例通过根据从图数据库查询到的相关关联配置关系图来确定具体的变更方案,减少了在变更过程中不可预见的问题,从而进一步提高了变更的效率。
结合第一方面,在第一方面的第二种可能的实施方式中,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,还包括:
所述服务器向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
本申请实施例在变更了相关应用的关联配置关系之后通过及时更新调整图数据库中存储的关联配置关系结构图,保证了该关联配置关系结构图的时效性和可靠性,从而能够为以后的应用配置管理提供可靠准确的参考数据,这也在一定程度上能够提高应用配置管理的效率。
结合第一方面的第二种可能的实施方式,在第一方面的第三种可能的实施方式中,所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,还包括:
所述服务器将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
结合第一方面、第一方面的第一种可能的实施方式、第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施方式中,服务器接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;
所述服务器向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;
所述服务器获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;
所述服务器根据所述第二关联配置关系图排查所述第二应用的故障。
本实施例在应用出现故障之后,通过查询图数据库相应的关联配置关系,从而根据该关联配置关系逐一分析排查故障,能够节省故障排查的时间,提高故障排查的效率。
结合第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施方式中,所述服务器根据所述第二关联配置关系图排查所述第二应用的故障,包括:
所述服务器根据所述第二关联配置关系图确定故障排查方案;
所述服务器根据所述故障排查方案排查所述第二应用的故障。
本申请实施例通过根据从图数据库查询到的相关关联配置关系图来确定具体的故障排查方案,减少了在故障排查的过程中不可预见问题,从而进一步提高了故障排查的效率。
第二方面,本申请实施例提供了一种应用配置管理服务器,该服务器包括:
接收单元,用于接收第一应用的关联配置关系变更请求,所述变更请求携带了所述第一应用的关联配置关系变更说明,所述第一应用为所述服务器管理的多个应用中的任意一个,所述多个应用之间存在多个关联配置关系,所述多个关联配置关系以边的形式存储在图数据库中,所述多个应用以节点的形式存储在所述图数据库中;
发送单元,用于根据所述变更请求向所述图数据库发送第一查询请求,所述第一查询请求携带了第一查询要求,所述第一查询要求为以所述第一应用为开始节点查询第一预设深度的关联配置关系,所述第一预设深度为预设的距离所述第一应用节点的边的数量;
获取单元,还用于获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;
变更单元,用于根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
结合第二方面,在第二方面的第一种可能的实施方式中,所述变更单元包括第一确定单元,
所述第一确定单元,用于根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;
所述变更单元用于根据所述变更方案变更所述第一应用的关联配置关系。
结合第二方面,在第二方面的第二种可能的实施方式中,所述变更单元,用于根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,所述发送单元,还用于向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
结合第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,所述变更单元,用于根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,所述发送单元,还用于将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
结合第二方面、第二方面的第一种可能的实施方式、第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述服务器还包括排查单元;
所述接收单元,还用于接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;
所述发送单元,还用于向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;
所述获取单元,还用于获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;
所述排查单元,用于根据所述第二关联配置关系图排查所述第二应用的故障。
结合第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施方式中,所述排查单元包括第二确定单元;
所述第二确定单元,用于根据所述第二关联配置关系图确定故障排查方案;
所述排查单元,用于根据所述故障排查方案排查所述第二应用的故障。
第三方面,本申请实施例提供了一种实体服务器,包括处理器、通信设备和存储器,所述处理器、通信设备和存储器相互连接,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述应用程序代码,执行上述第一方面任意一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面任意一项所述的方法。
综上所述,本申请实施例提供了一种基于图数据库的应用配置管理方法,图数据库以图的形式表示应用之间的关联配置关系从而更直观,存储更灵活,在此基础上采用图遍历算法使得查询更高效,本申请结合图数据库来管理多个应用之间的关联配置关系,从而提高了管理的效率。
附图说明
下面将对本申请实施例中所需要使用的附图作介绍。
图1为本申请实施例中的一种图数据库示意图;
图2为本申请实施例提供的一种应用配置管理方法的系统架构示意图;
图3为本申请实施例提供的一种应用配置管理方法的流程示意图;
图4为本申请实施例提供的另一种图数据库示意图;
图5为本申请实施例提供的一种图数据库查询结果示意图;
图6为本申请实施例提供的一种应用配置管理服务器结构示意图;
图7为本申请实施例提供的一种服务器结构示意图。
具体实施方式
为了使本领域技术人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本方案提出了一种应用配置管理方法,用于在繁杂的应用配置的情况下,能够快速查询到需要的应用配置关系,进而能够快速了解分析相关的关联配置关系,从而提高应用配置管理的效率。
数据爆炸的时代,在社交网络、实时推荐、征信系统、人工智能方面,我们都需要通过繁杂庞大的数据进行关联数据分析。而传统的关系型数据库存在建模困难、查询困难、扩展困难等特点,最终的结果就会导致关系型数据库进行关联数据查询的时候性能低,而这些关系型数据库所不能处理的难点恰恰是图数据库的强项,它最擅长的就是处理数据之间的关系。图数据库是基于数学里图论的思想和算法而实现的高效处理复杂关系网络的新型数据库系统,用图来存储数据,是最接近高性能的一种用于存储数据的数据结构方式之一。
为了便于理解整个方案,下面先示例性地介绍一下Neo4j图数据库。Neo4j是一个有商业支持的开源图数据库,它用高效的图数据结构代替传统的表设计。它具备完整的ACID(Atomicity Consistency Isolation Durability)支持、高可用性、能够轻易扩展到上亿级别的节点和关系、能够通过遍历工具高速检索数据。Neo4j图数据库由节点和边(边又称为关系)组成,边是矢量边,即是有方向的,节点和关系都可以包括属性,属性可以用于说明节点和边的一些特征。
例如,可以参见图1,图1是一个简单的图数据库,用于示例性地说明图数据库的组成,图1中包括两个节点和两条边,其中,两个节点和两条边都可以包括属性,例如节点1的属性可以是“姓名:小明,身高:178cm”,节点2的属性可以是“姓名:小刚,身高:180cm”,当然属性可以是多种多样的,是可以自定义的,例如节点1的属性还可以包括小明的国籍、出生地、生日等等;图1中的边1是从节点1指向节点2,边1的关系是“朋友”,该关系的属性是“自从2015年”,这表明的是小明和小刚的关系是朋友,且小明和小刚是自从2015年以来的关系就是朋友;边2是从节点2指向节点1,边2的关系也是“朋友”,该关系的属性也是“自从2015年”,这表明的是小刚和小明的关系是朋友,且小刚和小明是自从2015年以来的关系就是朋友。当然两个节点之间的边可以是双向的,也可以是单向的,这根据具体情况而定。
下面对本方案的系统架构进行描述。参阅图2,图2是本方案提供的一种基于图数据库的应用配置管理方法的系统架构示意图。如图2所示,系统架构可以包括服务器、图数据库以及多个应用。其中,服务器可以与图数据库交互通信,主要是通过应用程序编程接口(Application Programming Interface,API)实现信息的交互,服务器还可以监控所述多个应用的配置信息、监听这些应用配置是否出现修改等;图数据库中存储着所述多个应用的关联配置关系图,能够通过该图数据库查询到具体某个应用的关联配置关系。
基于图2给出的本方案提供的一种基于图数据库的应用配置管理方法的系统架构,下面提供一种基于图数据库的应用配置管理方法,方法的流程图如图3所示。
该方法可以包括以下步骤:
步骤301:服务器获取多个应用的关联配置关系。
在具体实施例中,服务器管理着多个应用,该多个应用的关联配置关系图数据库中每个应用都可以是一个节点,每个应用中的每一个组成模块也可以是一个节点,应用与应用之间的关联配置关系、应用与模块之间的关联配置关系以及模块与模块之间的关联配置关系构成边。由于应用的数量较多,每个应用中还包括多个模块,为了便于图数据库的构建,可以预先定义这些应用与模块之间的关联配置关系,然后将预先定义的关联配置关系数据保存在本地存储器中,服务器可以通过保存路径导入该预先定义的关联配置关系数据。
表1
ID 名称
1 应用1
2 应用2
例如可以参见表1、表2和表3,其中,表1是多个应用的信息,给出ID编号是为了创建图数据库的时候方便索引,但是这些ID编号却不出现在构建好的图数据库中,表2是多个应用分别包括的模块的信息,同样的,ID编号用于索引,表3为多个应用之间、模块之间以及应用模块之间的关联配置关系信息,表示ID1和ID2之间的关系,例如ID1为1、ID2为2、关系为运行于,表示的是编号为1的应用1运行于编号为2的应用2中。需要说明的是,还可以把各个应用、模块和关系的其它更多的属性添加在表中,但是本方案主要侧重的是图数据库的应用,属性的描述不做过多的说明限制。
表2
ID 名称
3 模块1
4 模块2
5 模块3
6 模块4
7 模块5
8 模块6
假设表1的存储路径为“file://application.cvs”、表2的存储路径为“file://Module.cvs”,表3的存储路径为“file://relationship.cvs”,那么服务器可以根据这几个存储的路径查找到对应的数据,并导入到图数据库的构建程序中。
表3
ID1 ID2 关系
1 2 运行于
1 3 包含
1 4 包含
1 5 包含
2 6 包含
2 7 包含
2 8 包含
3 5 调用
4 5 依赖
4 3 调用
6 5 调用
6 8 运行于
7 6 调用
8 7 调用
步骤302:所述服务器根据所述多个应用的关联配置关系搭建图数据库。
在具体实施例中,服务器将多个应用的关联配置关系数据导入之后,分析这些应用的关联配置关系,然后根据分析结果构建该某一个应用关联配置关系的图数据库。例如,服务器导入上述表1、表2和表3的数据之后,根据这些数据构建得到的图数据库可以参见图4,从图中可以看到关联配置关系可以包括包含关系、调用关系、依赖关系、某个应用(模块)运行于另一个应用(模块),当然,实际中还可以包括其它的例如安装关系、连接关系等等关联配置关系。在图数据库中应用和模块都是以节点的形式存在,每一个节点表示一个应用或模块,可以在节点中标明应用的名称和属性等信息,应用(模块)和应用(模块)之间的关联配置关系则用节点之间的边来表示,这些边是有方向的,可以是单向也可以是双向,根据具体情况而定,节点和节点之间的关联配置关系可以直接在边上面标明,如果两个节点之间有多个关系,则可以在连接这两个节点的一个边上标明多个关系,或者画多条有向边,不同的边表示一个关系。由于这些应用和模块之间的关联配置是互相关联的,其中一个关联配置的变更可能会导致与其关联的配置关系都会受到影响,所以在做出变更之前我们可以通过图数据库查询了解清楚变更关联配置的节点与其它节点的关联配置关系图,在此基础上再实施变更操作,这样能够提高变更效率,减少甚至避免变更过程中不可预见的问题出现。
步骤303:服务器接收第一应用的关联配置关系变更请求。
在具体实施例中,在某一个应用升级或者修整的过程中可能需要变更该某一个应用与其它应用之间的关联配置关系,或者可能需要变更该某一个应用包含的模块之间的关联配置关系,这两种关联配置关系的变更都称为该某一个应用的关联配置关系变更。该某一个应用的关联配置关系还可以包括该某一个应用所包括的模块与其它应用的关联配置关系和/或该某一个应用所包括的模块之间的关联配置关系。具体的,关联配置关系的变更可以包括关联配置关系的修改、删除,或者节点的增加、替换等等。
在该某一个应用需要变更关联关系的情况下,服务器会接收到该某一个应用的关联配置关系变更请求。该变更请求可以携带该某一个应用的变更说明,例如,该变更说明可以是该某一个应用需要增加一个模块,并指定该某一个应用中已有的某一个模块调用该新增加的模块。该变更说明仅仅是示例性的描述,还存在其它可能的说明,此处不进一步限制。
步骤304:所述服务器根据所述变更请求向所述图数据库发送第一查询请求。
在具体实施例中,变更某一个应用的关联配置关系可能会影响其它应用的正常运行,因而需要先了解清楚该某一个应用与其它应用之间的关联配置关系,这些应用之间的关联配置关系都存储在图数据库中,因此服务器向存储这些应用的关联配置关系的图数据库发送查询该某一个应用的关联配置关系的查询请求,该查询请求可以携带查询的深度。
为了便于理解,还是参阅图4,假设应用1需要变更其关联配置关系,例如是增加一个模块7,模块1调用模块7。为了变更配置关系时不影响其它应用或模块的运行,需要先了解清楚相关联的配置关系,因此,服务器向图数据库发送查询请求,该查询请求可以携带要求以应用1为开始节点,查询深度为2的应用1的关联配置关系图,其查询到的结果如图5所示,从应用1开始到达任意一个其它结点的路径长度都是小于或等于2。具体的,该查询深度为2的应用1的关联配置关系图指的是以应用1为开始节点查询离应用1的距离为2个路径长度以内的节点所组成的关系图,一个路径长度可以理解为是一条边。
步骤305:所述服务器获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图。
在具体实施例中,图数据库根据查询请求查询得到查询结果后,服务器通过图数据库的API接口获取该查询结界,该查询结果即为根据查询请求查询得到的关联配置关系图。如果是图4所示的例子中,那么服务器通过API接口获取的结果则为如图5所述的关联配置关系图,图5中以应用1为开始节点,该开始节点到任何一个其它节点的路径长度都是小于或等于2。
步骤306:所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
在具体实施例中,服务器获取上述查询结果之后,分析该查询结果从而理清了相关的应用配置关系,在此基础上变更上述某一个应用的关联配置关系,从而能够避免因变更某一个关联配置关系而影响其它应用或模块的正常运行。
上述实施通过采用图数据库存储多个应用的关联配置关系,服务器可以查询该图数据库中的数据从而为应用的关联配置关系的成功变更提供了有力的数据参考,由于是在了解了应用相关的关联配置关系基础上做变更,从而减少了变更的阻力,提高了变更的效率。
在其中一种可能的实施方式中,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系,包括:所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;所述服务器根据所述变更方案变更所述第一应用的关联配置关系
在具体实施例中,服务器获取上述查询结果之后,先分析该查询结果中的具体关联配置关系,再根据分析的结果确定出具体的变更方案,然后根据该具体的变更方案变更上述某一个应用的关联配置关系。
为了便于理解,还是以图4和图5为例,假设应用1中的关联配置关系需要变更,具体的变更为应用1需要增加一个模块7,模块1调用模块7,那么图5为服务器从图数据库中获取到的应用1的关联配置关系图。
服务器对图5进行分析得到的分析结果为:应用1包含三个模块,分别为模块1、模块2和模块3,其中模块1调用模块3,模块2调用模块1,模块2还依赖于模块3,另外应用1运行于应用2中。
根据上述分析结果可知,如果应用1增加一个模块7,模块1调用模块7,不会影响其它应用或模块的运行,也不用更改其它现有应用或模块之间的关联配置关系,可以直接增加模块7,并通过模块1来调用即可。即,服务器根据上述分析的结果确定出具体的变更方案为直接将模块7添加到应用1中,然后在模块1中增加一个调用函数调用模块7。然后,服务器获取模块7的信息和模块1中增加的调用模块7的调用函数的信息,并根据获取的这些信息在应用1中添加模块7,同时在模块1中添加调用模块7的调用函数。
具体的,上述服务器获取的模块7的信息和模块1中增加的调用模块7的调用函数的信息可以是技术人员根据上述变更方案编写的对应的编程代码信息,这些编程代码信息可以通过服务器的输入单元输入给服务器。
为了便于理解,再次举例说明,还是以图4和图5为例,假设还是应用1中的关联配置关系需要变更,具体的变更为应用1包含的模块3需要替换为模块8,其它关系不变,服务器对图5进行分析得到的分析结果为:模块3被模块1调用,同时,模块3是模块2的依赖,将模块3替换为模块8有可能会影响这两个关联关系;但是,假如模块8是模块3的优化模块,消除了原来的缺陷但是基础功能不变,那么可以直接将模块3替换为模块8,而不会对其它的关联关系造成影响。即,服务器根据上述分析的结果确定出具体的变更方案为直接将模块3替换为模块8。然后,服务器获取模块8的信息,并根据获取的信息在应用1中将模块3替换为模块8。
具体的,上述服务器获取的模块8的信息可以是技术人员根据上述变更方案编写的对应的编程代码信息,这些编程代码信息可以通过服务器的输入单元输入给服务器。
当然,上述举例只是作为易于理解的例子呈现,还存在其它可能的变更方式以及分析情况,此处不再限制说明。
本申请实施例通过根据从图数据库查询到的相关关联配置关系图来确定具体的变更方案,减少了在变更过程中不可预见的问题,从而进一步提高了变更的效率。
在其中一种可能的实施方式中,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,还包括:所述服务器向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
在具体实施例中,所述服务器根据上述查询结果完成对上述某一个应用的关联配置关系的变更之后,将该某一个应用的关联配置关系变更的具体说明通过API接口发送给所述图数据库,图数据库接收到该具体说明之后,根据该具体说明调整该某一个应用的关联配置关系图结构,即更新图数据库存储的关联配置关系图。
本申请实施例在变更了相关应用的关联配置关系之后通过及时更新调整图数据库中存储的关联配置关系结构图,保证了该关联配置关系结构图的时效性和可靠性,从而能够为以后的应用配置管理提供可靠准确的参考数据,这也在一定程度上能够提高应用配置管理的效率。
在其中一种可能的实施方式中,所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,还包括:所述服务器将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
在具体实施例中,服务器根据上述查询结果对上述某一个应用的关联配置关系进行分析并确定变更方案之后,服务器在根据变更方案变更该某一个应用的关联配置关系的同时,还可以将该变更方案通过API接口发送给图数据库,图数据库可以根据该变更方案调整该某一个应用的关联配置关系图结构,即更新图数据库存储的关联配置关系图。
在其中一种可能的实施方案中,上述服务器接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;所述服务器向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;所述服务器获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;所述服务器根据所述第二关联配置关系图排查所述第二应用的故障。
在具体实施方式中,服务器监控着多个应用的运行状态和情况,当然这些应用的关联配置关系都存储在上述图数据库中。当一个应用出现故障时,会及时向服务器发送出现故障的告警信息,服务器接收到该信息之后,需要先了解清楚该一个应用的关联配置关系,因而接着向图数据库发送查询请求,该查询请求可以携带以该一个应用为开始节点查询其关联配置关系图的信息,还可以携带查询的深度。图数据库接收到查询请求,根据该查询请求查询到该某一个应用的关联配置关系图后,服务器通过API接口从图数据库中获取该一个应用的关联配置关系图,然后分析该关系图从而理清了相关的应用配置关系,在此基础上逐一排查该一个应用的故障,从而能够避免因盲目排查而影响其它应用或模块的正常运行。
本实施例在应用出现故障之后,通过查询图数据库相应的关联配置关系,从而根据该关联配置关系逐一分析排查故障,能够节省故障排查的时间,提高故障排查的效率。
在其中一种可能的实施方式中,所述服务器根据所述第二关联配置关系图排查所述第二应用的故障,包括:所述服务器根据所述第二关联配置关系图确定故障排查方案;所述服务器根据所述故障排查方案排查所述第二应用的故障。
在具体实施例中,服务器获取上述某一个应用的关联配置关系图之后,先分析该某一个应用的关联配置关系图中的具体关联配置关系,再根据分析的结果确定出具体的故障排查方案,然后根据该具体的故障排查方案逐一排查该一个应用的故障,从而能够避免因盲目排查而影响其它应用或模块的正常运行。
为了便于理解,下面举例说明,请参阅图4和图5,假设图4中应用1包括的模块1为一个信息查询模块,但是,在应用1中的查询功能查询不了信息了,即出现故障了,为了了解出现故障的原因以排除故障,服务器可以从图数据库中查询并获取应用1的关联配置关系图,假设获取到的关联配置关系图为图5所示的关系图。
服务器对图5进行分析得到的分析结果为:应用1运行于应用2之上,模块1需要调用模块3才可以实现查询的功能。根据这个分析结果,服务器可以先检查一下模块3是否出现了问题,如果是模块3的问题,那么服务器通过对模块3进行故障排查直到问题解决。即,服务器根据上述分析的结果确定出具体的故障排查方案为对模块3进行排查,快速地锁定了排查目标为模块3,提高了故障排查的效率。
假设上述服务器对模块3检查的时候没发现有问题,那么,可能是应用1的运行载体应用2出现了问题,那么服务器需要通过对应用2进行故障排查直到问题解决。即,服务器根据上述分析的结果确定出具体的故障排查方案为对应用2进行排查,快速地锁定了排查目标为应用2,提高了故障排查的效率。
当然,上述举例只是作为易于理解的例子呈现,还存在其它可能的故障方式和故障排查方案,此处不再限制说明。
本申请实施例通过根据从图数据库查询到的相关关联配置关系图来确定具体的故障排查方案,减少了在故障排查的过程中不可预见问题,从而进一步提高了故障排查的效率。
综上所述,图数据库查询速度快、用图来表示关联配置关系从而更直观,存储更灵活,基于图数据库的这些优点,本方案在基于图数据库的基础上管理多个应用的关联配置关系更高效,使得处理应用故障的速度也更快。
为了便于更好地实施本申请的上述方案,本申请实施例还对应提供了一种应用配置管理服务器,下面结合附图来进行详细说明:
图6所示为本申请实施例提供的一种应用配置管理服务器600的结构示意图,所述服务器600包括:接收单元601、发送单元602、获取单元603和变更单元604,其中:
接收单元601,用于接收第一应用的关联配置关系变更请求,所述变更请求携带了所述第一应用的关联配置关系变更说明,所述第一应用为所述服务器管理的多个应用中的任意一个,所述多个应用之间存在多个关联配置关系,所述多个关联配置关系以边的形式存储在图数据库中,所述多个应用以节点的形式存储在所述图数据库中;
发送单元602,用于根据所述变更请求向所述图数据库发送第一查询请求,所述第一查询请求携带了第一查询要求,所述第一查询要求为以所述第一应用为开始节点查询第一预设深度的关联配置关系,所述第一预设深度为预设的距离所述第一应用节点的边的数量;
获取单元603,还用于获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;
变更单元604,用于根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
在其中一种实施方式中,变更单元604包括第一确定单元,所述第一确定单元,用于根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;
变更单元604,用于根据所述变更方案变更所述第一应用的关联配置关系。
在其中一种实施方式中,变更单元604,用于根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,
发送单元602,还用于向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
在其中一种实施方式中,变更单元604,用于根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,
发送单元602,还用于将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
在其中一种实施方式中,所述服务器还包括排查单元,
接收单元601,还用于接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;
发送单元602,还用于向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;
获取单元603,还用于获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;
所述排查单元,用于根据所述第二关联配置关系图排查所述第二应用的故障。
在其中一种实施方式中,所述排查单元包括第二确定单元,
所述第二确定单元,用于根据所述第二关联配置关系图确定故障排查方案;
所述排查单元用于根据所述故障排查方案排查所述第二应用的故障。
图6所示的服务器600中各个单元的具体实现及有益效果可以对应参照图3所示的方法实施例中的相应描述,此处不再赘述。
请参见图7,图7是本申请实施例提供的一种服务器700,该服务器700包括处理器701、存储器702和通信接口703,所述处理器701、存储器702和通信接口703通过总线707相互连接。
存储器702包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmableread only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器702用于相关指令及数据的存储。通信接口703用于接收和发送数据。
处理器701可以是一个或多个中央处理器(central processing unit,CPU),在处理器701是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。
该服务器700中的处理器701用于读取所述存储器702中存储的程序代码,执行以下操作:
处理器701通过通信接口703接收第一应用的关联配置关系变更请求,所述变更请求携带了所述第一应用的关联配置关系变更说明,所述第一应用为所述服务器管理的多个应用中的任意一个,所述多个应用之间存在多个关联配置关系,所述多个关联配置关系以边的形式存储在图数据库中,所述多个应用以节点的形式存储在所述图数据库中;
处理器701根据所述变更请求通过通信接口703向所述图数据库发送第一查询请求,所述第一查询请求携带了第一查询要求,所述第一查询要求为以所述第一应用为开始节点查询第一预设深度的关联配置关系,所述第一预设深度为预设的距离所述第一应用节点的边的数量;
处理器701通过通信接口703获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;
处理器701根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
在其中一种可能的实施方式中,处理器701根据所述第一关联配置关系图变更所述第一应用的关联配置关系,包括:
处理器701根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;
处理器701根据所述变更方案变更所述第一应用的关联配置关系。
在其中一种可能的实施方式中,处理器701根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,还包括:
处理器701通过通信接口703向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
在其中一种可能的实施方式中,处理器701根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,还包括:
处理器701通过通信接口703将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
在其中一种可能的实施方式中,处理器701通过通信接口703接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;
处理器701通过通信接口703向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;
处理器701通过通信接口703获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;
处理器701根据所述第二关联配置关系图排查所述第二应用的故障。
在其中一种可能的实施方式中,处理器701根据所述第二关联配置关系图排查所述第二应用的故障,包括:
处理器701根据所述第二关联配置关系图确定故障排查方案;
处理器701根据所述故障排查方案排查所述第二应用的故障。
需要说明的是,上述各个操作的实现和有益效果还可以对应参照图3所示的方法实施例的相应描述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,图3所示的方法流程得以实现。
综上所述,本申请实施例提供了一种基于图数据库的应用配置管理方法,图数据库以图的形式表示应用之间的关联配置关系从而更直观,存储更灵活,在此基础上采用图遍历算法使得查询更高效,本申请结合图数据库来管理多个应用之间的关联配置关系,从而提高了管理的效率。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (9)

1.一种应用配置管理方法,其特征在于,包括:
服务器接收第一应用的关联配置关系变更请求,所述变更请求携带了所述第一应用的关联配置关系变更说明,所述第一应用为所述服务器管理的多个应用中的任意一个,所述多个应用之间存在多个关联配置关系,所述多个关联配置关系以边的形式存储在图数据库中,所述多个应用以节点的形式存储在所述图数据库中;
所述服务器根据所述变更请求向所述图数据库发送第一查询请求,所述第一查询请求携带了第一查询要求,所述第一查询要求为以所述第一应用为开始节点查询第一预设深度的关联配置关系,所述第一预设深度为预设的距离所述第一应用节点的边的数量;
所述服务器获取所述图数据库根据所述第一查询请求查询得到的第一关联配置关系图;
所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系。
2.根据权利要求1所述方法,其特征在于,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系,包括:
所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案;
所述服务器根据所述变更方案变更所述第一应用的关联配置关系。
3.根据权利要求1所述方法,其特征在于,所述服务器根据所述第一关联配置关系图变更所述第一应用的关联配置关系之后,还包括:
所述服务器向所述图数据库发送变更后的所述第一应用的关联配置关系信息,所述变更后的所述第一应用的关联配置关系信息用于变更所述图数据库中所述第一应用的关联配置关系。
4.根据权利要求2所述方法,其特征在于,所述服务器根据所述第一关联配置关系图确定所述第一应用的关联配置关系变更方案之后,还包括:
所述服务器将所述变更方案发送给所述图数据库,所述变更方案用于变更所述图数据库中所述第一应用的关联配置关系。
5.根据权利要求1-4任一项所述方法,其特征在于,包括:
服务器接收第二应用出现故障的信息,所述第二应用为所述多个应用中的任意一个;
所述服务器向所述图数据库发送第二查询请求,所述第二查询请求携带了第二查询要求,所述第二查询要求为以所述第二应用为开始节点查询第二预设深度的关联配置关系,所述第二预设深度为预设的距离所述第二应用节点的边的数量;
所述服务器获取所述图数据库根据所述第二查询请求查询得到的第二关联配置关系图;
所述服务器根据所述第二关联配置关系图排查所述第二应用的故障。
6.根据权利要求5所述方法,其特征在于,所述服务器根据所述第二关联配置关系图排查所述第二应用的故障,包括:
所述服务器根据所述第二关联配置关系图确定故障排查方案;
所述服务器根据所述故障排查方案排查所述第二应用的故障。
7.一种应用配置管理服务器,其特征在于,包括用于执行如权利要求1至6任一项所述的方法的单元。
8.一种服务器,其特征在于,包括处理器、通信设备和存储器,所述处理器、通信设备和存储器相互连接,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述应用程序代码,执行如权利要求1至6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至6任意一项所述的方法。
CN201910632927.XA 2019-07-12 2019-07-12 一种应用配置管理方法、服务器及存储介质 Pending CN110457313A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910632927.XA CN110457313A (zh) 2019-07-12 2019-07-12 一种应用配置管理方法、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910632927.XA CN110457313A (zh) 2019-07-12 2019-07-12 一种应用配置管理方法、服务器及存储介质

Publications (1)

Publication Number Publication Date
CN110457313A true CN110457313A (zh) 2019-11-15

Family

ID=68482843

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910632927.XA Pending CN110457313A (zh) 2019-07-12 2019-07-12 一种应用配置管理方法、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN110457313A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111817903A (zh) * 2020-09-02 2020-10-23 湖南双菱电子科技有限公司 一种数字信号传输处理设备链路故障分析与报警方法
CN112099878A (zh) * 2020-11-19 2020-12-18 中国电力科学研究院有限公司 应用软件配置管理方法、装置及系统
CN115630196A (zh) * 2022-10-18 2023-01-20 曙光云计算集团有限公司 数据查询方法、装置、计算机设备、存储介质和程序产品
US12079599B2 (en) 2020-06-16 2024-09-03 Engineer.ai Corp Systems and methods for creating software

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107679160A (zh) * 2017-09-28 2018-02-09 深圳市华傲数据技术有限公司 基于图数据库的数据处理方法及装置
CN108536709A (zh) * 2017-03-03 2018-09-14 北京明略软件系统有限公司 一种搜索优化方法及装置
US20190050579A1 (en) * 2017-08-14 2019-02-14 Onapsis, Inc. Entry point finder

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108536709A (zh) * 2017-03-03 2018-09-14 北京明略软件系统有限公司 一种搜索优化方法及装置
US20190050579A1 (en) * 2017-08-14 2019-02-14 Onapsis, Inc. Entry point finder
CN107679160A (zh) * 2017-09-28 2018-02-09 深圳市华傲数据技术有限公司 基于图数据库的数据处理方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12079599B2 (en) 2020-06-16 2024-09-03 Engineer.ai Corp Systems and methods for creating software
US12093665B2 (en) 2020-06-16 2024-09-17 Engineer.ai Corp Systems and methods for creating software
US12106074B2 (en) 2020-06-16 2024-10-01 Engineer.ai Corp Systems and methods for creating software
CN111817903A (zh) * 2020-09-02 2020-10-23 湖南双菱电子科技有限公司 一种数字信号传输处理设备链路故障分析与报警方法
CN112099878A (zh) * 2020-11-19 2020-12-18 中国电力科学研究院有限公司 应用软件配置管理方法、装置及系统
CN115630196A (zh) * 2022-10-18 2023-01-20 曙光云计算集团有限公司 数据查询方法、装置、计算机设备、存储介质和程序产品

Similar Documents

Publication Publication Date Title
CN110457313A (zh) 一种应用配置管理方法、服务器及存储介质
US20210133202A1 (en) Ranking Data Sources in a Data Processing System
EP2932370B1 (en) System and method for performing a transaction in a massively parallel processing database
US10223437B2 (en) Adaptive data repartitioning and adaptive data replication
CN111221840B (zh) 数据处理方法及装置、数据缓存方法、存储介质、系统
EP2674875A1 (en) Method, controller, program and data storage system for performing reconciliation processing
US20130138681A1 (en) Method and system for metadata driven processing of federated data
EP3251030B1 (en) Workload aware data placement for join-based query processing in a cluster
CN111258978A (zh) 一种数据存储的方法
CN108376169A (zh) 一种用于联机分析处理的数据处理方法和装置
US11657069B1 (en) Dynamic compilation of machine learning models based on hardware configurations
CN112749198A (zh) 一种基于版本号的多级数据缓存方法及装置
CN110287264A (zh) 分布式数据库的数据批量更新方法、装置以及系统
US11636124B1 (en) Integrating query optimization with machine learning model prediction
US8655920B2 (en) Report updating based on a restructured report slice
CN109308309B (zh) 一种数据服务质量评估方法和终端
CN104598652B (zh) 一种数据库查询方法及装置
US10997170B2 (en) Local database cache
CA3094727A1 (en) Transaction processing method and system, and server
CN114969165B (zh) 数据查询请求的处理方法、装置、设备及存储介质
CN113868138A (zh) 测试数据的获取方法、系统、设备及存储介质
CN105335489B (zh) 一种事故报警查询优化方法
CN117573730B (zh) 数据处理方法、装置、设备、可读存储介质及程序产品
US11841857B2 (en) Query efficiency using merged columns
WO2002025481A2 (en) High performance relational database management system

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20191115