掌桥专利:专业的专利平台
掌桥专利
首页

一种基于知识图谱导出全图的方法及装置

文献发布时间:2023-06-19 19:30:30


一种基于知识图谱导出全图的方法及装置

【技术领域】

本发明涉及知识图谱可视化技术领域,特别是涉及一种基于知识图谱导出全图的方法及装置。

【背景技术】

知识图谱是一种将客观世界概念进行逻辑抽象关联,形成结构化的语义网络。知识图谱基于强大的数据链接能力,使信息在利于计算处理的同时,也贴合人的思维方式。为了便于人的理解,图可视化在知识图谱中占据重要位置,因此产生越来越多的图可视化框架。

然而,在具体实用过程中,知识图谱的生成需要对已有数据进行全面的分析,步进是单一数据自身的属性,还要涉及其与其他数据关联关系才能生成配套的边等属性,如此一来,对于自身算力不足,或者是本身数据内容较多情况下,相应的知识图谱的响应效率就会收到极大的影响。

鉴于此,克服该现有技术所存在的缺陷是本技术领域亟待解决的问题。

【发明内容】

本发明要解决的技术问题是在具体实用过程中,知识图谱的生成需要对已有数据进行全面的分析,步进是单一数据自身的属性,还要涉及其与其他数据关联关系才能生成配套的边等属性,如此一来,对于自身算力不足,或者是本身数据内容较多情况下,相应的知识图谱的响应效率就会收到极大的影响。

本发明采用如下技术方案:

第一方面,本发明提供了一种基于知识图谱导出全图的方法,包括:

数据库服务器在获取到针对有关第一知识图谱生成数据的访问请求,并反馈有关第一知识图谱生成数据内容后,记录相应的访问请求的发起账号A;

数据库服务器在获取到针对有关第一知识图谱生成数据的其他访问请求后,确认所述其他访问请求的发起源的账号B;

根据所述账号B与所述账号A的IP地址,分析两者硬件设备之间的位置关系,确认两者之间的网络链路在完成相应账号A本地第一知识图谱传输时间要小于账号B从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合时,数据库服务器触发账号A本地的终端应用将其生成的第一知识图谱发往所述账号B所在终端;

账号B所在终端应用同时也接收到所述数据库服务器发送的指令,并在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器返回访问请求正常结束消息。

优选的,在确认两者之间的网络链路在完成相应账号A本地第一知识图谱传输时间要大于等于账号B从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合时,所述方法还包括:

数据库服务器在查询到本地的有关第一知识图谱生成数据内容,通过与账号B之间的网络链路,将所述数据内容发送给账号B所在终端;以便账号B侧的终端应用根据收到的数据内容生成第一知识图谱后在其终端显示界面中呈现所述第一知识图谱。

优选的,在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器返回访问请求正常结束消息,具体包括:

在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器发送同步账号A的第一知识图谱成功的通知消息;

数据库服务器在获取到所述通知消息后,再将数据库服务器本地的与所述生成第一知识图谱关联的数据内容发送给账号B终端。

优选的,终端应用中在登录相应账号后,向所述数据库服务器发送的所述访问请求中包相应的登录账号所在设备的计算资源信息;从而为所述数据库服务器计算出其所要访问的数据内容生成第一知识图谱的时间;

其中,所述计算资源信息包括处理器型号、内存容量、当前剩余CPU占比和剩余内存容量占比中的一项或者多项。

优选的,数据库服务器在维护过程中,建立了多个账号下的所述第一知识图谱的生成信息后,在接收到来自账号C的针对有关第一知识图谱生成数据的其他访问请求后,方法还包括:

分析当前数据库服务器所维护的与所述第一知识图谱的生成有关的多个账号与所述账号C的性能关系;

其中,性能关系包括两者硬件设备之间的位置关系,确认两者之间的网络链路在完成相应所维护账号本地第一知识图谱传输时间小于账号C从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合的多个维护账号,并从中筛选出的差值最大的作为提供第一知识图谱的目标账号;

数据库服务器触发所述目标账号本地的终端应用将其生成的第一知识图谱发往所述账号C所在终端。

优选的,在账号B终端在进行知识图谱导出全图时,方法包括:

根据图中的所有顶点的坐标计算导出图片宽度和高度,即所有顶点中最大x坐标值减去最小x坐标值加上一定宽度dist作为导出图片的宽度,最大y坐标值减去最小y最坐标值加上一定宽度dist作为导出图片的高度;

创建一个canvas元素作为导出图片的画布,设置宽高为导出图片的宽高,设置背景颜色为白色;

根据导出图片的宽度和高度,计算将导出的图片分成若干份;将导出图片的宽度除以视口的宽度,将结果向上取整,得到x方向本均分的份数,同理可计算出y方向均分的份数;

保存当前图形的状态,以便在平移图形后恢复图形状态;按照计算的份数,不断平移图形将当前窗口的图形绘制到canvas画布中,直到结束,最终拼成完成的图形,再导出为图片。

优选的,图形放大后,方法还包括:

当前视口无法绘制所有点边,通过计算x方向需要分成两等份,y方向也需要等分成两等份,即将图分成4部分,图形需要平移4次;第一次平移:x方向为Xmin-1/2dist+width(视口高度)*0,y方向为Ymin-1/2dist+height(视口高度)*0,第二次平移:x方向为Xmin-1/2dist+width*1,y方向为Ymin-1/2dist+height*0,第三次平移:x方向为Xmin-1/2dist+width*0,y方向为Xmin-1/2dist+height*1,第四次平移:x方向为Xmin-1/2dist+width*1,y方向为Xmin-1/2dist+height*1,每次平移后的图形复制到canvas画布中,最后拼接成一张完整的图形。

第二方面,本发明还提供了一种基于知识图谱导出全图的装置,用于实现第一方面所述的基于知识图谱导出全图的方法,所述装置包括:

至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行,用于执行第一方面所述的基于知识图谱导出全图的方法。

第三方面,本发明还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,用于完成第一方面所述的基于知识图谱导出全图的方法。

本发明发现了数据库中同一批次的数据内容可能被不同的账号(即终端)反问,并在各自终端侧生成相应的知识图谱使用,此时,一旦在线有终端已经针对同一批次的数据内容生成了知识图谱,再有其他终端为同一目的访问相同数据内容时候,就可以综合分析是数据库服务器与访问者之间的交互效率高,还是直接从在线终端侧获取生成的知识图谱效率高,并进行择优处理;从而使得一些计算力不足的终端能够跳过计算过程,实现高效知识图谱响应。

【附图说明】

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种基于知识图谱导出全图的方法流程示意图;

图2是本发明实施例提供的一种基于知识图谱导出全图的方法流程示意图;

图3是本发明实施例提供的一种基于知识图谱导出全图的方法流程示意图;

图4是本发明实施例提供的一种基于知识图谱导出全图的显示过程示意图;

图5是本发明实施例提供的一种基于知识图谱导出全图的显示过程示意图;

图6是本发明实施例提供的一种基于知识图谱导出全图的显示过程示意图;

图7是本发明实施例提供的一种基于知识图谱导出全图的装置结构示意图。

【具体实施方式】

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在本发明的描述中,术语“内”、“外”、“纵向”、“横向”、“上”、“下”、“顶”、“底”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构造和操作,因此不应当理解为对本发明的限制。

此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

实施例1:

本发明实施例1提供了一种基于知识图谱导出全图的方法,需要提前说明的是,在本发明实施例中所出现的例如“账号A”、“账号B”之类的字符组合表述,仅仅是为了方便区别同一类型中个体方便使用,并不应该理解为对相应主体对象有过多的范围限定作用,即在数据库服务器管辖范围内,任何对象申请注册的账号都可能是“账号A”。如图1所示,包括:

在步骤201中,数据库服务器在获取到针对有关第一知识图谱生成数据的访问请求,并反馈有关第一知识图谱生成数据内容后,记录相应的访问请求的发起账号A。

在步骤202中,数据库服务器在获取到针对有关第一知识图谱生成数据的其他访问请求后,确认所述其他访问请求的发起源的账号B。

在步骤203中,根据所述账号B与所述账号A的IP地址,分析两者硬件设备之间的位置关系,确认两者之间的网络链路在完成相应账号A本地第一知识图谱传输时间要小于账号B从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合时,数据库服务器触发账号A本地的终端应用将其生成的第一知识图谱发往所述账号B所在终端。

在步骤204中,账号B所在终端应用同时也接收到所述数据库服务器发送的指令,并在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器返回访问请求正常结束消息。

本发明实施例发现了数据库中同一批次的数据内容可能被不同的账号(即终端)反问,并在各自终端侧生成相应的知识图谱使用,此时,一旦在线有终端已经针对同一批次的数据内容生成了知识图谱,再有其他终端为同一目的访问相同数据内容时候,就可以综合分析是数据库服务器与访问者之间的交互效率高,还是直接从在线终端侧获取生成的知识图谱效率高,并进行择优处理;从而使得一些计算力不足的终端能够跳过计算过程,实现高效知识图谱响应。

在本发明实施例中,在确认两者之间的网络链路在完成相应账号A本地第一知识图谱传输时间要大于等于账号B从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合时,所述方法还包括:

数据库服务器在查询到本地的有关第一知识图谱生成数据内容,通过与账号B之间的网络链路,将所述数据内容发送给账号B所在终端;以便账号B侧的终端应用根据收到的数据内容生成第一知识图谱后在其终端显示界面中呈现所述第一知识图谱。

在本发明实施例中,在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器返回访问请求正常结束消息,具体包括:

在接收到来自账号A的包含第一知识图谱的完整数据包后,向数据库服务器发送同步账号A的第一知识图谱成功的通知消息;

数据库服务器在获取到所述通知消息后,再将数据库服务器本地的与所述生成第一知识图谱关联的数据内容发送给账号B终端。

在本发明实施例中,终端应用中在登录相应账号后,向所述数据库服务器发送的所述访问请求中包相应的登录账号所在设备的计算资源信息;从而为所述数据库服务器计算出其所要访问的数据内容生成第一知识图谱的时间;

其中,所述计算资源信息包括处理器型号、内存容量、当前剩余CPU占比和剩余内存容量占比中的一项或者多项。

在本发明实施例中,数据库服务器在维护过程中,建立了多个账号下的所述第一知识图谱的生成信息后,在接收到来自账号C的针对有关第一知识图谱生成数据的其他访问请求后,如图2所示,方法还包括:

在步骤301中,分析当前数据库服务器所维护的与所述第一知识图谱的生成有关的多个账号与所述账号C的性能关系。

其中,性能关系包括两者硬件设备之间的位置关系。

在步骤302中,确认两者之间的网络链路在完成相应所维护账号本地第一知识图谱传输时间小于账号C从数据库服务器获取有关第一知识图谱生成数据内容和由此数据内容生成第一知识图谱的时间总合的多个维护账号,并从中筛选出的差值最大的作为提供第一知识图谱的目标账号。

在步骤303中,数据库服务器触发所述目标账号本地的终端应用将其生成的第一知识图谱发往所述账号C所在终端。

在本发明实施例的导出全图是一种将图谱画布数据导出为图片的技术,目前的图可视化框架中导出全图采用新建画布重新绘图实现,G6基于canvas绘制数据量增大时会存在效率降低的问题,而基于webgl的sigma只实现了导出当前视口的图像,而视口之外的数据无法导出,并且随着绘制数据量扩大时依然会存在效率降低的问题。在账号B终端在进行知识图谱导出全图时,如图3所示,参考图4-图6,方法包括:

在步骤401中,根据图中的所有顶点的坐标计算导出图片宽度和高度。

即所有顶点中最大x坐标值减去最小x坐标值加上一定宽度dist作为导出图片的宽度,最大y坐标值减去最小y最坐标值加上一定宽度dist作为导出图片的高度。如图4所示,矩形的宽高为导出图片的宽高。

在步骤402中,创建一个canvas元素作为导出图片的画布,设置宽高为导出图片的宽高,设置背景颜色为白色。

在步骤403中,根据导出图片的宽度和高度,计算将导出的图片分成若干份;将导出图片的宽度除以视口的宽度,将结果向上取整,得到x方向本均分的份数,同理可计算出y方向均分的份数。

在步骤404中,保存当前图形的状态,以便在平移图形后恢复图形状态;按照计算的份数,不断平移图形将当前窗口的图形绘制到canvas画布中,直到结束,最终拼成完成的图形,再导出为图片。

如果导出图片的宽高均小于原始画布的宽高,则将图形平移到画布中心位置,然后将当前图绘制到准备好的canvas画布中,直接导出图片。

如果导出图片的宽或高大于原始画布的宽或高,则需要将图形按照当前视口的大小等分成若干份,如图5所示。然后不断图形平移图形,将每份图形分别绘制到canvas画布中,最终拼成一张完成的图形,最后导出图片。

其中,图形放大后,参考图6,方法还包括:

当前视口无法绘制所有点边,通过计算x方向需要分成两等份,y方向也需要等分成两等份,即将图分成4部分,图形需要平移4次;第一次平移:x方向为Xmin-1/2dist+width(视口高度)*0,y方向为Ymin-1/2dist+height(视口高度)*0,第二次平移:x方向为Xmin-1/2dist+width*1,y方向为Ymin-1/2dist+height*0,第三次平移:x方向为Xmin-1/2dist+width*0,y方向为Xmin-1/2dist+height*1,第四次平移:x方向为Xmin-1/2dist+width*1,y方向为Xmin-1/2dist+height*1,每次平移后的图形复制到canvas画布中,最后拼接成一张完整的图形。

实施例2:

如图7所示,是本发明实施例的基于知识图谱导出全图的装置的架构示意图。本实施例的基于知识图谱导出全图的装置包括一个或多个处理器21以及存储器22。其中,图7中以一个处理器21为例。

处理器21和存储器22可以通过总线或者其他方式连接,图7中以通过总线连接为例。

存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序和非易失性计算机可执行程序,如实施例1中的基于知识图谱导出全图的方法。处理器21通过运行存储在存储器22中的非易失性软件程序和指令,从而执行基于知识图谱导出全图的方法。

存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

所述程序指令/模块存储在所述存储器22中,当被所述一个或者多个处理器21执行时,执行上述实施例1中的基于知识图谱导出全图的方法,例如,执行以上描述的图1-图3所示的各个步骤。

值得说明的是,上述装置和系统内的模块、单元之间的信息交互、执行过程等内容,由于与本发明的处理方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或光盘等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种基于知识图谱的数据推理方法、装置、服务器和介质
  • 一种基于知识图谱的推荐方法及装置
  • 一种核动力装置的安全壳热量导出装置及其热量导出方法
  • 基于知识图谱和图神经网络的无线业务预测方法及装置
  • 基于知识图谱的时序图可视化方法、装置、存储介质和设备
技术分类

06120115938587