CN115658922A - 一种知识图谱操作方法、装置、电子设备及存储介质 - Google Patents
一种知识图谱操作方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115658922A CN115658922A CN202211413894.8A CN202211413894A CN115658922A CN 115658922 A CN115658922 A CN 115658922A CN 202211413894 A CN202211413894 A CN 202211413894A CN 115658922 A CN115658922 A CN 115658922A
- Authority
- CN
- China
- Prior art keywords
- node
- dense
- nodes
- knowledge graph
- operation request
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种知识图谱操作方法、装置、电子设备及存储介质,该方法包括:获取操作请求,操作请求包括:节点标识;判断节点标识对应的节点是否是稠密节点;若是,则通过服务器集群根据节点标识操作知识图谱中的稠密节点。在上述方案的实现过程中,通过在节点标识对应的节点是稠密节点的情况下,就通过服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作压力,有效地减轻了操作知识图谱的压力。
Description
技术领域
本申请涉及计算机数据处理和知识图谱的技术领域,具体而言,涉及一种知识图谱操作方法、装置、电子设备及存储介质。
背景技术
目前,在操作知识图谱(又被称为图数据库)时通常是无差别地对知识图谱进行操作,具体例如:在Neo4j等知识图谱中查询一跳或二跳的图顶点关系(即两个顶点之间所需要经过的边数量),即查询知识图谱中的两个顶点之间所需要经过的边数量在一跳或二跳内的顶点时,能够较快地响应查询的顶点。在具体的实践过程中发现,大量的客户端查询并操作四跳的图顶点关系导致操作知识图谱的压力较大。
发明内容
本申请实施例的目的在于提供一种知识图谱操作方法、装置、电子设备及存储介质,用于改善操作知识图谱的压力较大的问题。
本申请实施例提供了一种知识图谱操作方法,包括:获取操作请求,操作请求包括:节点标识;判断节点标识对应的节点是否是稠密节点;若是,则通过服务器集群根据节点标识操作知识图谱中的稠密节点。在上述方案的实现过程中,通过在节点标识对应的节点是稠密节点的情况下,就通过服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,判断节点标识对应的节点是否是稠密节点,包括:获取节点标识对应的节点属性值,获得多个节点属性值;判断多个节点属性值是否包括预设属性标签;若是,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。在上述方案的实现过程中,通过在节点标识对应的节点属性值包括预设属性标签的情况下,就将节点标识对应的节点确定为稠密节点,从而使用服务器集群分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,在判断多个节点属性值是否包括预设属性标签之前,还包括:查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;判断团簇顶点的总数量是否大于预设数量阈值;若是,则将节点标识对应的节点属性值设置为预设属性标签。在上述方案的实现过程中,通过在从节点标识对应的团簇顶点的总数量大于预设数量阈值的情况下,就将节点标识对应的节点属性值设置为预设属性标签,以使服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,将节点标识对应的节点属性值设置为预设属性标签,包括:通过Spark任务程序将节点标识对应的节点属性值设置为预设属性标签。在上述方案的实现过程中,通过Spark任务程序将节点标识对应的节点属性值设置为预设属性标签,以使Spark任务程序和服务器集群来分担知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,判断节点标识对应的节点是否是稠密节点,包括:查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;判断团簇顶点的总数量是否大于预设数量阈值;若是,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。在上述方案的实现过程中,通过在从节点标识对应的团簇顶点的总数量大于预设数量阈值的情况下,就将节点标识对应的节点确定为稠密节点,以使服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,通过服务器集群根据节点标识操作知识图谱中的稠密节点,包括:将操作请求存储至Kafka消息队列中;通过服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点。在上述方案的实现过程中,通过服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点,由于Kafka消息队列能够快速地分发操作请求,以使Kafka消息队列和服务器集群来分担知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
可选地,在本申请实施例中,操作请求还包括:四跳关系;通过服务器集群根据节点标识操作知识图谱中的稠密节点,包括:通过服务器集群以节点标识对应节点为起点,从知识图谱中查询出两跳关系的中转节点;通过服务器集群以中转节点为起点,从知识图谱中再次查询出两跳关系的目标节点。在上述方案的实现过程中,通过将四跳关系的查询请求转换为查询两跳关系的中转节点以及两跳关系的目标节点,从而有效地使用组合两个简单查询操作来代替复杂查询操作,从而通过两个简单查询操作分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
本申请实施例还提供了一种知识图谱操作装置,包括:操作请求获取模块,用于获取操作请求,操作请求包括:节点标识;稠密节点判断模块,用于判断节点标识对应的节点是否是稠密节点;知识图谱操作模块,用于若节点标识对应的节点是稠密节点,则通过服务器集群根据节点标识操作知识图谱中的稠密节点。
可选地,在本申请实施例中,稠密节点判断模块,包括:节点属性获得子模块,用于获取节点标识对应的节点属性值,获得多个节点属性值;节点属性判断子模块,用于判断多个节点属性值是否包括预设属性标签;稠密节点确定子模块,用于若多个节点属性值包括预设属性标签,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。
可选地,在本申请实施例中,知识图谱操作装置,还包括:团簇顶点查询模块,用于查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;团簇顶点判断模块,用于判断团簇顶点的总数量是否大于预设数量阈值;属性标签设置模块,用于若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点属性值设置为预设属性标签。
可选地,在本申请实施例中,属性标签设置模块,包括:预设属性设置子模块,用于通过Spark任务程序将节点标识对应的节点属性值设置为预设属性标签。
可选地,在本申请实施例中,稠密节点判断模块,包括:节点标识查询子模块,用于查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;顶点数量判断子模块,用于判断团簇顶点的总数量是否大于预设数量阈值;普通节点确定子模块,用于若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。
可选地,在本申请实施例中,知识图谱操作模块,包括:操作请求存储子模块,用于将操作请求存储至Kafka消息队列中;操作请求获取子模块,用于通过服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点。
可选地,在本申请实施例中,操作请求还包括:四跳关系;通过服务器集群根据节点标识操作知识图谱中的稠密节点,包括:中转节点查询子模块,用于通过服务器集群以节点标识对应节点为起点,从知识图谱中查询出两跳关系的中转节点;目标节点查询子模块,用于通过服务器集群以中转节点为起点,从知识图谱中再次查询出两跳关系的目标节点。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
本申请实施例的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请实施例中的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的知识图谱操作方法的流程示意图;
图2示出的本申请实施例提供的知识图谱的部分数据示意图;
图3示出的本申请实施例提供的知识图谱操作装置的结构示意图;
图4示出的本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请实施例中的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请实施例的详细描述并非旨在限制要求保护的本申请实施例的范围,而是仅仅表示本申请实施例中的选定实施例。基于本申请实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请实施例保护的范围。
可以理解的是,本申请实施例中的“第一”、“第二”用于区别类似的对象。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
在介绍本申请实施例提供的知识图谱操作方法之前,先介绍本申请实施例中所涉及的一些概念:
服务器是指通过网络提供计算服务的设备,服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和UNIX服务器。
需要说明的是,本申请实施例提供的知识图谱操作方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者上述的服务器,设备终端例如:智能手机、个人电脑、平板电脑、个人数字助理或者移动上网设备等。
下面介绍该知识图谱操作方法适用的应用场景,这里的应用场景包括但不限于:使用该知识图谱操作方法对Neo4j和Nebula等等知识图谱的操作进行优化,如果确定操作的目标节点是稠密节点的情况下,就通过服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作压力。
请参见图1示出的本申请实施例提供的知识图谱操作方法的流程示意图;本申请实施例提供了一种知识图谱操作方法,包括:
步骤S110:获取操作请求,操作请求包括:节点标识。
操作请求(Operation Request),是指用于操作知识图谱的报文请求,此处的操作请求包括但不限于:查询(Query)请求、更新(Update)请求和删除(Delete)请求等等。
上述步骤S110的实施方式包括但不限于:第一种实施方式,知识图谱没有安装在用户操作的终端设备上,那么当用户需要操作知识图谱时可以在终端设备操作,以使终端设备通过传输控制协议(Transmission Control Protocol,TCP)或者用户数据报协议(User Datagram Protocol,UDP)向电子设备(例如服务器)发送操作请求。电子设备接收终端设备的操作请求,并从该操作请求中解析出节点标识。其中,电子设备与终端设备的通信方式可以是浏览器和服务端(Browser/Server,B/S)方式,也可以是客户端和服务器(Client/Server,C/S)的方式。第二种实施方式,知识图谱是安装在用户操作的终端设备上的,那么用户可以直接在终端设备上操作知识图谱,即电子设备是终端设备,电子设备响应用户的输入操作,获取该输入操作对应的操作请求,并从该操作请求中解析出节点标识。
步骤S120:判断节点标识对应的节点是否是稠密节点。
稠密节点,是指在知识图谱中的查询、增加节点或增加边等操作时,影响知识图谱的操作速度的节点。稠密节点的确定方式有很多种,包括但不限于:第一种确定方式,根据节点属性值来确定是否是稠密节点,具体例如:如果节点属性值是预设属性标签(例如已经对该节点打过“稠密节点”的标签),就确定该节点是稠密节点;第二种确定方式,根据该节点所连接的团簇顶点的总数量来确定,例如:如果该节点所连接的团簇顶点的总数量大于预设数量阈值,就确定该节点是稠密节点;这两种确定方式都将在下面详细的描述。
步骤S130:若节点标识对应的节点是稠密节点,则通过服务器集群根据节点标识操作知识图谱中的稠密节点。
可以理解的是,由于上述步骤S120至步骤S130的实施方式有很多种,因此,将在下面详细地描述步骤S120至步骤S130的实施方式。其中,上述的服务器集群(ServerCluster)又被称为计算机集群(computer cluster),是指一组松散或紧密连接在一起工作的计算机,这些计算机需要被安装操作系统和协同工作的软件后才能在一起协同工作,此处协同工作的计算机又可以被称为集群节点。
在上述方案的实现过程中,通过在节点标识对应的节点是稠密节点的情况下,就通过服务器集群根据操作请求中的节点标识操作知识图谱中的稠密节点,从而使用服务器集群分担了知识图谱的大量操作稠密节点时的压力,有效地减轻了操作知识图谱的压力。
请参见图2示出的本申请实施例提供的知识图谱的部分数据示意图;该知识图谱中共显示了6个用户作为知识图谱的节点(即图2中的圆圈表示节点),这6个用户包括:用户A、用户B、用户C、用户D、用户E和用户F,其中,每两个用户之间的关系使用边(即图2中的节点之间的连接边)来表示,例如:用户A和用户B既是同事关系又是同校同学关系等等。上述知识图谱中的节点属性值使用矩形框来表示,那么用户B的其中一个节点属性值是稠密节点,就可以表示该用户B的节点是稠密节点。
作为上述步骤S120的第一种可选实施方式,在判断节点标识对应的节点是否是稠密节点时,可以根据节点属性值来判断,该实施方式可以包括:
步骤S121:获取节点标识对应的节点属性值,获得多个节点属性值。
上述步骤S121的实施方式例如:可以理解的是,节点标识对应的节点属性值可以根据具体情况设置一个或者多个,图2中的节点标识为用户B对应的节点属性值仅示出了一个,此外还可以设置用户姓名、联系方式、住址等等节点属性值。假设获取节点标识为用户B对应的节点属性值,就可以获得稠密节点、用户姓名、联系方式、住址等等多个节点属性值。假设获取节点标识为用户D对应的节点属性值,就可以获得用户姓名、联系方式、住址等等多个节点属性值。
步骤S122:判断多个节点属性值是否包括预设属性标签。
预设属性标签,是指用户预先在节点属性中设置的标签,此处的预设属性标签可以根据具体情况设置,例如:稠密节点,或者使用特殊数字或代码表示稠密节点等等。
上述步骤S122的实施方式例如:使用预设编程语言编译或者解释的可执行程序判断多个节点属性值是否包括预设属性标签;其中,可以使用的编程语言例如:C、C++、Java、BASIC、JavaScript、LISP、Shell、Perl、Ruby、Python和PHP等等。
步骤S123:若多个节点属性值包括预设属性标签,则将节点标识对应的节点确定为稠密节点。
步骤S124:若多个节点属性值没有包括预设属性标签,则将节点标识对应的节点确定为普通节点。
上述步骤S123至步骤S124的实施方式例如:假设预设属性标签是稠密节点,可以获取节点标识为用户B对应的节点属性值,就可以获得稠密节点、用户姓名、联系方式、住址等等多个节点属性值,那么可以确定用户B对应的节点属性值是包括预设属性标签(即包括稠密节点)的,因此可以将用户B对应的节点确定为稠密节点。同理地,获取节点标识为用户D对应的节点属性值,就可以获得用户姓名、联系方式、住址等等多个节点属性值,那么可以确定用户D对应的节点属性值是没有包括预设属性标签(即没有包括稠密节点)的,因此可以将用户D对应的节点确定为普通节点。
作为上述步骤S122的一种可选实施方式,在判断多个节点属性值是否包括预设属性标签之前,还可以将节点属性值设置为预设属性标签(即打标签),该实施方式可以包括:
步骤S122a:查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点。
上述步骤S122c的实施方式具体例如:假设预设边阈值设置为2,且节点标识是用户C,那么就是查询从用户C节点出发经过的边数量小于或等于2的团簇顶点,即查询出以用户C节点为起点,经过1跳或2跳能够到达的所有节点作为团簇顶点,此处查询出来的团簇顶点(见图2)可以包括:用户A、用户B、用户D和用户E共4个节点。
步骤S122b:判断团簇顶点的总数量是否大于预设数量阈值。
上述步骤S122b的实施方式具体例如:使用预设编程语言编译或者解释的可执行程序判断团簇顶点的总数量是否大于预设数量阈值,其中,可以使用的编程语言例如:C、C++、Java、BASIC、JavaScript、LISP、Shell、Perl、Ruby、Python和PHP等等。
步骤S122c:若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点属性值设置为预设属性标签。
上述步骤S122c的实施方式具体例如:假设预设数量阈值是3,且查询用户C节点出发经过的边数量小于或等于2的团簇顶点(见图2)可以包括:用户A、用户B、用户D和用户E共4个节点,那么可以得知用户C节点出发经过的边数量小于或等于2的团簇顶点的总数量4是大于预设数量阈值3的,那么可以将用户C节点对应的节点属性值设置为预设属性标签(例如可以将用户C节点对应的节点属性值设置为稠密节点)。
可以理解的是,在上述将节点标识对应的节点属性值设置为预设属性标签时,可以使用Spark任务程序来设置。若团簇顶点的总数量大于预设数量阈值,则通过Spark任务程序获取预设属性标签,通过Spark任务程序将节点标识对应的节点属性值设置为预设属性标签。
作为上述步骤S120的第二种可选实施方式,在判断节点标识对应的节点是否是稠密节点时,还可以根据团簇顶点的总数量来判断,该实施方式可以包括:
步骤S125:查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点。
步骤S126:判断团簇顶点的总数量是否大于预设数量阈值。
其中,上述步骤S125至步骤S126的实施原理和实施方式与步骤S122a至步骤S122b的实施原理和实施方式是类似的,因此,这里不再说明其实施原理和实施方式,如有不清楚的地方,可以参考对步骤S122a至步骤S122b的描述。
步骤S127:若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点确定为稠密节点。
步骤S128:若团簇顶点的总数量小于或者等于预设阈值,则将节点标识对应的节点确定为普通节点。
上述步骤S127至步骤S128的实施方式例如:假设预设数量阈值是3,且查询用户C节点出发经过的边数量小于或等于2的团簇顶点(见图2)可以包括:用户A、用户B、用户D和用户E共4个节点,那么可以得知用户C节点出发经过的边数量小于或等于2的团簇顶点的总数量4是大于预设数量阈值3的,那么可以将用户C节点确定为稠密节点。同理地,假设预设数量阈值是3,且查询用户F节点出发经过的边数量小于或等于2的团簇顶点(见图2)可以包括:用户B和用户E共2个节点,那么可以得知用户F节点出发经过的边数量小于或等于2的团簇顶点的总数量2是小于预设数量阈值3的,那么可以将用户F节点确定为普通节点。
作为上述步骤S130的第一种可选实施方式,在通过服务器集群根据节点标识操作知识图谱中的稠密节点时,可以使用Kafka消息队列来中转操作请求,该实施方式可以包括:
步骤S131:将操作请求存储至Kafka消息队列中。
上述步骤S131的实施方式例如:电子设备将操作请求存储至Kafka消息队列中,其中,Kafka是一个开源流处理平台,又被称为Apache Kafka,也是分布式事件流平台,由Scala语言和Java语言编写,Kafka的目标是为处理实时数据提供一个统一、高吞吐、低延迟的平台,Kafka持久化层本质上是一个按照分布式事务日志架构的大规模发布或者订阅消息队列。
步骤S132:通过服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点。
上述步骤S132的实施方式例如:电子设备通过Java应用服务的服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点。
作为上述步骤S130的第二种可选实施方式,上述的操作请求还可以包括:四跳关系,上述的操作请求可以是该四跳关系的查询请求;在通过服务器集群根据节点标识操作知识图谱中的稠密节点时,可以将四跳关系的查询操作转换为两跳加两跳关系的查询操作,该实施方式可以包括:
步骤S133:通过服务器集群以节点标识对应节点为起点,从知识图谱中查询出两跳关系的中转节点。
步骤S134:通过服务器集群以中转节点为起点,从知识图谱中再次查询出两跳关系的目标节点。
上述步骤S133至步骤S134的实施方式例如:电子设备通过传输控制协议(Transmission Control Protocol,TCP)或者用户数据报协议(User Datagram Protocol,UDP)向Java应用服务的服务器集群发送操作请求。服务器集群在通过TCP协议或者UDP协议接收到电子设备发送的操作请求之后,以节点标识对应节点为起点,从知识图谱中查询出两跳关系的中转节点,并通过Java应用服务的服务器集群以中转节点为起点,从知识图谱中再次查询出两跳关系的目标节点。
可以理解的是,服务器集群在根据该四跳关系的查询请求进行查询时,可以是从查询请求中解析出该四跳关系的查询模板作为图谱指标,并利用该图谱指标进行查询的。具体例如:电子设备从查询请求中解析出该四跳关系的查询模板作为图谱指标,并将该图谱指标存储在Memcached和Redis等缓存数据库中,然后,由Java应用服务的服务器集群从Memcached和Redis等缓存数据库中获取查询请求,并根据查询请求中的节点标识在知识图谱中查询稠密节点。
在具体的实践过程中,还可以将图谱指标与查询请求中的用户标识进行绑定,并根据用户标识的重要程度来响应该图谱指标的查询数据。由于图谱指标统一规定和封装了该四跳关系的查询模板的语法格式,在服务器集群从查询请求中解析出图谱指标时,更容易被阅读和修改,从而增加了图谱指标的可维护性。
请参见图3示出的本申请实施例提供的知识图谱操作装置的结构示意图;本申请实施例提供了一种知识图谱操作装置200,包括:
操作请求获取模块210,用于获取操作请求,操作请求包括:节点标识。
稠密节点判断模块220,用于判断节点标识对应的节点是否是稠密节点。
知识图谱操作模块230,用于若节点标识对应的节点是稠密节点,则通过服务器集群根据节点标识操作知识图谱中的稠密节点。
可选地,在本申请实施例中,稠密节点判断模块,包括:
节点属性获得子模块,用于获取节点标识对应的节点属性值,获得多个节点属性值。
节点属性判断子模块,用于判断多个节点属性值是否包括预设属性标签。
稠密节点确定子模块,用于若多个节点属性值包括预设属性标签,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。
可选地,在本申请实施例中,知识图谱操作装置,还包括:
团簇顶点查询模块,用于查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点。
团簇顶点判断模块,用于判断团簇顶点的总数量是否大于预设数量阈值。
属性标签设置模块,用于若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点属性值设置为预设属性标签。
可选地,在本申请实施例中,属性标签设置模块,包括:
预设属性设置子模块,用于通过Spark任务程序将节点标识对应的节点属性值设置为预设属性标签。
可选地,在本申请实施例中,稠密节点判断模块,包括:
节点标识查询子模块,用于查询从节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点。
顶点数量判断子模块,用于判断团簇顶点的总数量是否大于预设数量阈值。
普通节点确定子模块,用于若团簇顶点的总数量大于预设数量阈值,则将节点标识对应的节点确定为稠密节点,否则,将节点标识对应的节点确定为普通节点。
可选地,在本申请实施例中,知识图谱操作模块,包括:
操作请求存储子模块,用于将操作请求存储至Kafka消息队列中。
操作请求获取子模块,用于通过服务器集群从Kafka消息队列中获取操作请求,并根据操作请求中的节点标识操作知识图谱中的稠密节点。
可选地,在本申请实施例中,操作请求还包括:四跳关系;通过服务器集群根据节点标识操作知识图谱中的稠密节点,包括:
中转节点查询子模块,用于通过服务器集群以节点标识对应节点为起点,从知识图谱中查询出两跳关系的中转节点。
目标节点查询子模块,用于通过服务器集群以中转节点为起点,从知识图谱中再次查询出两跳关系的目标节点。
应理解的是,该装置与上述的知识图谱操作方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
请参见图4示出的本申请实施例提供的电子设备的结构示意图。本申请实施例提供的一种电子设备300,包括:处理器310和存储器320,存储器320存储有处理器310可执行的机器可读指令,机器可读指令被处理器310执行时执行如上的方法。
本申请实施例还提供了一种计算机可读存储介质330,该计算机可读存储介质330上存储有计算机程序,该计算机程序被处理器310运行时执行如上的方法。其中,计算机可读存储介质330可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。
另外,在本申请实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。此外,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种知识图谱操作方法,其特征在于,包括:
获取操作请求,所述操作请求包括:节点标识;
判断所述节点标识对应的节点是否是稠密节点;
若是,则通过服务器集群根据所述节点标识操作知识图谱中的稠密节点。
2.根据权利要求1所述的方法,其特征在于,所述判断所述节点标识对应的节点是否是稠密节点,包括:
获取所述节点标识对应的节点属性值,获得多个节点属性值;
判断所述多个节点属性值是否包括预设属性标签;
若是,则将所述节点标识对应的节点确定为稠密节点,否则,将所述节点标识对应的节点确定为普通节点。
3.根据权利要求2所述的方法,其特征在于,在所述判断所述多个节点属性值是否包括预设属性标签之前,还包括:
查询从所述节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;
判断所述团簇顶点的总数量是否大于预设数量阈值;
若是,则将所述节点标识对应的节点属性值设置为所述预设属性标签。
4.根据权利要求3所述的方法,其特征在于,所述将所述节点标识对应的节点属性值设置为所述预设属性标签,包括:
通过Spark任务程序将所述节点标识对应的节点属性值设置为所述预设属性标签。
5.根据权利要求1所述的方法,其特征在于,所述判断所述节点标识对应的节点是否是稠密节点,包括:
查询从所述节点标识对应的节点出发经过的边数量小于或等于预设边阈值的团簇顶点;
判断所述团簇顶点的总数量是否大于预设数量阈值;
若是,则将所述节点标识对应的节点确定为稠密节点,否则,将所述节点标识对应的节点确定为普通节点。
6.根据权利要求1-5任一所述的方法,其特征在于,所述通过服务器集群根据所述节点标识操作知识图谱中的稠密节点,包括:
将所述操作请求存储至Kafka消息队列中;
通过所述服务器集群从所述Kafka消息队列中获取所述操作请求,并根据所述操作请求中的节点标识操作所述知识图谱中的稠密节点。
7.根据权利要求1-5任一所述的方法,其特征在于,所述操作请求还包括:四跳关系;所述通过服务器集群根据所述节点标识操作知识图谱中的稠密节点,包括:
通过所述服务器集群以所述节点标识对应节点为起点,从所述知识图谱中查询出两跳关系的中转节点;
通过所述服务器集群以所述中转节点为起点,从所述知识图谱中再次查询出两跳关系的目标节点。
8.一种知识图谱操作装置,其特征在于,包括:
操作请求获取模块,用于获取操作请求,所述操作请求包括:节点标识;
稠密节点判断模块,用于判断所述节点标识对应的节点是否是稠密节点;
知识图谱操作模块,用于若所述节点标识对应的节点是稠密节点,则通过服务器集群根据所述节点标识操作知识图谱中的稠密节点。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211413894.8A CN115658922A (zh) | 2022-11-11 | 2022-11-11 | 一种知识图谱操作方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211413894.8A CN115658922A (zh) | 2022-11-11 | 2022-11-11 | 一种知识图谱操作方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115658922A true CN115658922A (zh) | 2023-01-31 |
Family
ID=85021831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211413894.8A Pending CN115658922A (zh) | 2022-11-11 | 2022-11-11 | 一种知识图谱操作方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115658922A (zh) |
-
2022
- 2022-11-11 CN CN202211413894.8A patent/CN115658922A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110427368B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111580884B (zh) | 配置更新方法、装置、服务器和电子设备 | |
CN109800207B (zh) | 日志解析方法、装置、设备及计算机可读存储介质 | |
US20170351723A1 (en) | Managing data format of data received from devices in an internet of things network | |
CN110928548B (zh) | 一种数据处理方法以及设备 | |
CN111327651A (zh) | 资源下载方法、装置、边缘节点及存储介质 | |
CN110677462A (zh) | 多区块链网络的访问处理方法、系统、装置及存储介质 | |
CN109104368B (zh) | 一种请求连接方法、装置、服务器及计算机可读存储介质 | |
CN112579319A (zh) | 一种基于LRU Cache优化的服务调用方法及装置 | |
CN111198709A (zh) | 一种rpm软件包管理方法、系统、装置及可读存储介质 | |
CN113568925B (zh) | 一种报文数据的转换方法、装置、电子设备及存储介质 | |
CN115658922A (zh) | 一种知识图谱操作方法、装置、电子设备及存储介质 | |
CN113986312B (zh) | 软件升级方法、装置、电子设备及计算机可读存储介质 | |
CN115185997A (zh) | 一种主机信息处理方法、装置、电子设备及存储介质 | |
CN115729590A (zh) | 服务部署方法、装置、设备和计算机可读存储介质 | |
CN111654398B (zh) | 一种更新配置的方法、装置、计算机设备及可读存储介质 | |
CN111159142B (zh) | 一种数据处理方法及装置 | |
CN109522014B (zh) | 基于新产品开发的算法处理方法、电子装置及可读存储介质 | |
CN108491448B (zh) | 一种数据推送的方法和装置 | |
CN111162988B (zh) | 消息分发方法与系统 | |
CN114301709B (zh) | 报文的处理方法和装置、存储介质及计算设备 | |
US20240053981A1 (en) | Methods for automated configuration management in platform-as-a-service environments and devices thereof | |
CN115103028B (zh) | SaaS应用的请求处理方法、装置、计算机设备 | |
CN110727457B (zh) | 组件管理方法、装置、存储介质及电子设备 | |
CN115687656A (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 |