【技术实现步骤摘要】
图数据的路径检索处理方法、装置、服务器及存储介质
本申请涉及关系数据
,尤其涉及一种图数据的路径检索处理方法、装置、服务器及存储介质。
技术介绍
在大规模关系数据场景下,对于关系数据的路径检索成为重要的技术,已有的基于关系的路径检索包括基于KEYVALUE数据库的关系构建,多种关系对应多张表格,路径的一步对应一次两表的join操作,但是多度路径查询代价大,需要多个表依次做全量拼接,导致计算量大,实时查询需要大量的分布式计算资源。为了解决这一问题,现有技术中采用传统的基于图数据库的关系查询(即路径检索),将关系查询转变为图的遍历问题。但是随着图数据规模的增长以及图上面各种应用需求的增加,传统的基于图数据库的关系查询方法是对自身图的顺序遍历,已经不能有效对大规模的图数据进行查询。因此,如何有效对大规模的图数据进行查询成为亟需解决的技术问题。
技术实现思路
本申请提供一种图数据的路径检索处理方法、装置、服务器及存储介质,以解决现有技术检索速度慢效率低等缺陷。本申请第一个方面提供一种图数据的路径检索处理方法,包括:接收终端发送的路径查询请求;根据所述路径查询请求,控制至少两个任务组进行路径查询,获得路径查询结果,其中,至少有一个任务组包括至少两个线程;将所述路径查询结果发送给所述终端。本申请第二个方面提供一种图数据的路径检索处理装置,包括:接收模块,用于接收终端发送的路径查询请求;处理模块,用于根据所述路径查询请求,控制至少两个任务组进 ...
【技术保护点】
1.一种图数据的路径检索处理方法,其特征在于,包括:/n接收终端发送的路径查询请求;/n根据所述路径查询请求,控制至少两个任务组进行路径查询,获得路径查询结果,其中,至少有一个任务组包括至少两个线程;/n将所述路径查询结果发送给所述终端。/n
【技术特征摘要】
1.一种图数据的路径检索处理方法,其特征在于,包括:
接收终端发送的路径查询请求;
根据所述路径查询请求,控制至少两个任务组进行路径查询,获得路径查询结果,其中,至少有一个任务组包括至少两个线程;
将所述路径查询结果发送给所述终端。
2.根据权利要求1所述的方法,其特征在于,所述路径查询请求至少包括待查询的起点标识及终点标识;
所述根据所述路径查询请求,控制至少两个任务组进行路径查询,获得路径查询结果,包括:
控制第i任务组查询第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点,其中,第1级节点为所述起点标识对应的起始节点,i为正整数;
迭代执行上述步骤,直至满足预设迭代控制条件,获得所述路径查询结果。
3.根据权利要求2所述的方法,其特征在于,采用宽度优先搜索算法进行路径查询;第i任务组包括的线程数量与第i级节点的个数相同;
所述控制第i任务组查询第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点,包括:
控制第i任务组的各线程并行查询各第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点。
4.根据权利要求3所述的方法,其特征在于,在控制第i任务组的各线程并行查询各第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点之后,所述方法还包括:
控制第i任务组对获得的第i级节点的各邻接边及各邻接边连接的第i+1级节点进行合并及过滤处理,以合并相同的节点及去除已查询过的节点,获得处理后的第i+1级节点;
将处理后的第i+1级节点输入到第i+1任务组。
5.根据权利要求3所述的方法,其特征在于,在控制第i任务组的各线程并行查询各第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点之后,所述方法还包括:
控制第i任务组判断第i+1级节点中是否包括所述终点标识对应的终节点;
若第i+1级节点中均不包括所述终节点,则进入第i+1任务组的执行过程;
若第i+1级节点中包括所述终节点,则记录所述起始节点到所述终节点的路径信息。
6.根据权利要求3所述的方法,其特征在于,控制第i任务组的各线程并行查询各第i级节点,获得所述第i级节点的各邻接边及各邻接边连接的第i+1级节点,包括:
对于每个第i级节点,判断其是否为超大节点;若是超大节点,则根据该第i级节点的各邻接边索引值,采用至少两个线程获得该第i级节点的各邻接边及各邻接边连接的第i+1级节点。
7.根据权利要求6所述的方法,其特征在于,对于每个第i级节点,判断其是否为超大节点,包括:
获取预先存储的该第i级节点对应的邻接边索引值数量;
若该第i级节点对应的邻接边索引值数量超过预设邻接边阈值,则确定该第i级节点为超大节点。
8.根据权利要求2-7任一项所述的方法,其特征在于,所述路径查询结果为所述起点标识对应的起始节点与所述终点标识对应的终节点的最短路径。
9.根据权利要求2所述的方法,其特征在于,所述预设迭代控制条件包括预设路径距离阈值、预设路径数量阈值中的至少一种。
10.根据权利要求1所述的方法,其特征在于,采用深度优先搜索算法进行路径查询,所述路径查询请求至少包括待查询的起点标识及终点标识;
所述根据所述路径查询请求,控制至少两个任务组进行路径查询,获得路径查询结果,包括:
控制第1任务组查询所述起点标识对应的起始节点的邻接边及各邻接边连接的第一节点;
控制第2任务组,并行查询至少两个第一节点的各邻接边及各邻接边连接的第二节点,并记录被查询的第一节点信息;
控制第3任务组,并行查询至少两个第二节点的各邻接边及各邻接边连接的第三节点,并记录被查询的第二节点信息;...
【专利技术属性】
技术研发人员:谢奕,张阳,刘畅,
申请(专利权)人:百度在线网络技术北京有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。