本申请涉及云计算领域,具体而言,涉及一种数据查询方法、装置、存储介质及电子设备。
背景技术:
1、相关技术中,通过分布式链路追踪技术在故障快速定位、链路可视化、链路分析等应用场景中检索出需要的数据链路是常用的检索方法,但是将分布式链路追踪技术应用到以上应用场景的前提是能检索出符合业务场景的数据链路,然而,相关技术中的链路检索功能较为单一,仅可使用跨度的属性去检索符合条件的数据链路,而缺乏有效的算法检索复杂链路。通过相关技术中的链路检索功能无法在海量链路结构树中检索到复杂链路,效率低下且反应速度慢,准确性低。
2、针对相关技术中在链路结构树中检索数据的效率和准确性低的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本申请的主要目的在于提供一种数据查询方法、装置、存储介质及电子设备,以解决相关技术中在链路结构树中检索数据的效率和准确性低的问题。
2、为了实现上述目的,根据本申请的一个方面,提供了一种数据查询方法。该方法包括:确定待查询的数据链路的起始时间和结束时间,基于起始时间和结束时间从数据库中确定至少一条索引记录,得到待查询的索引记录列表,其中,数据库存储有索引记录,每条索引记录按照时间顺序存储预设时间段内的链路数据;获取用户输入的查询条件,从索引记录列表中提取出符合查询条件的数据链路,得到初始数据链路,其中,查询条件包含待查询的数据链路中的链路数据的属性信息;确定待查询的数据链路的最小跨度数,基于最小跨度数从初始数据链路中确定目标数据链路,其中,最小跨度数是待查询的数据链路中包含的跨度的最小数量,数据链路中相邻两个节点之间的链路构成一个跨度;提取目标数据链路中的链路数据,得到用户查询的目标数据。
3、可选地,基于最小跨度数从初始数据链路中确定目标数据链路包括:判断初始数据链路的跨度数是否大于等于最小跨度数;在初始数据链路的跨度数大于等于最小跨度数的情况下,将初始数据链路确定为目标数据链路。
4、可选地,在基于最小跨度数从初始数据链路中确定目标数据链路之后,该方法还包括:获取用户需要查询的最小数据链路条数,并判断第一数量是否大于等于最小数据链路条数,其中,第一数量是目标数据链路的数量;在第一数量大于等于最小数据链路条数的情况下,执行提取目标数据链路中的链路数据,得到用户查询的目标数据的步骤;在目标数据链路的第一数量小于最小数据链路条数的情况下,基于最小数据链路条数和最小跨度数从待定数据链路中筛选出其他目标数据链路,其中,待定数据链路是初始数据链路的跨度数小于最小跨度数的数据链路;将目标数据链路和其他目标数据链路组合,得到更新后的目标数据链路;基于更新后的目标数据链路执行提取目标数据链路中的链路数据,得到用户查询的目标数据的步骤。
5、可选地,基于最小数据链路条数和最小跨度数从待定数据链路中筛选出其他目标数据链路包括:确定最小跨度数所属的跨度数区间,基于跨度数区间确定最小跨度数的膨胀系数;计算最小数据链路条数、最小跨度数和膨胀系数的积,得到查询条数;将所有待定数据链路按照跨度数从大到小的顺序进行排列,得到目标序列;从目标序列中提取前n条数据链路,其中,n为查询条数;将前n条数据链路中跨度数大于等于最小跨度数的数据链路确定为其他目标数据链路。
6、可选地,在将目标数据链路和其他目标数据链路组合,得到更新后的目标数据链路之后,该方法还包括:判断第二数量是否大于等于最小数据链路条数,其中,第二数量是更新后的目标数据链路的数量;在第二数量大于等于最小数据链路条数的情况下,执行提取目标数据链路中的链路数据,得到用户查询的目标数据的步骤;在第二数量小于最小数据链路条数的情况下,发出第一提示信息,其中,第一提示信息用于提示用户重新确定待查询的数据链路的起始时间和结束时间。
7、可选地,提取目标数据链路中的链路数据,得到用户查询的目标数据包括:确定目标数据链路的编号,基于索引记录列表和编号从数据库中提取目标数据。
8、可选地,在确定待查询的数据链路的起始时间和结束时间之后,该方法还包括:判断数据库中从起始时间到结束时间之间是否存在索引记录;在数据库中从起始时间到结束时间之间存在索引记录的情况下,执行基于起始时间和结束时间从存储链路数据的数据库中确定至少一条索引记录的步骤;在数据库中从起始时间到结束时间之间不存在索引记录的情况下,发出第二提示信息,其中,第二提示信息用于提示用户数据查询失败。
9、为了实现上述目的,根据本申请的另一方面,提供了一种数据查询装置。该装置包括:第一确定单元,用于确定待查询的数据链路的起始时间和结束时间,基于起始时间和结束时间从数据库中确定至少一条索引记录,得到待查询的索引记录列表,其中,数据库存储有索引记录,每条索引记录按照时间顺序存储预设时间段内的链路数据;第一获取单元,用于获取用户输入的查询条件,从索引记录列表中提取出符合查询条件的数据链路,得到初始数据链路,其中,查询条件包含待查询的数据链路中的链路数据的属性信息;第二确定单元,用于确定待查询的数据链路的最小跨度数,基于最小跨度数从初始数据链路中确定目标数据链路,其中,最小跨度数是待查询的数据链路中包含的跨度的最小数量,数据链路中相邻两个节点之间的链路构成一个跨度;提取单元,用于提取目标数据链路中的链路数据,得到用户查询的目标数据。
10、通过本申请,采用以下步骤:确定待查询的数据链路的起始时间和结束时间,基于起始时间和结束时间从数据库中确定至少一条索引记录,得到待查询的索引记录列表,其中,数据库存储有索引记录,每条索引记录按照时间顺序存储预设时间段内的链路数据;获取用户输入的查询条件,从索引记录列表中提取出符合查询条件的数据链路,得到初始数据链路,其中,查询条件包含待查询的数据链路中的链路数据的属性信息;确定待查询的数据链路的最小跨度数,基于最小跨度数从初始数据链路中确定目标数据链路,其中,最小跨度数是待查询的数据链路中包含的跨度的最小数量,数据链路中相邻两个节点之间的链路构成一个跨度;提取目标数据链路中的链路数据,得到用户查询的目标数据,解决了相关技术中在链路结构树中检索数据的效率和准确性低的问题。通过基于最小跨度数从索引记录中检索出目标数据链路,从目标数据链路提取出用户查询的目标数据,进而达到了提高在链路结构树中检索数据的效率和准确性的效果。
1.一种数据查询方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,基于所述最小跨度数从所述初始数据链路中确定目标数据链路包括:
3.根据权利要求2所述的方法,其特征在于,在基于所述最小跨度数从所述初始数据链路中确定目标数据链路之后,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,基于所述最小数据链路条数和所述最小跨度数从待定数据链路中筛选出其他目标数据链路包括:
5.根据权利要求3所述的方法,其特征在于,在将所述目标数据链路和所述其他目标数据链路组合,得到更新后的目标数据链路之后,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,提取所述目标数据链路中的链路数据,得到所述用户查询的目标数据包括:
7.根据权利要求1所述的方法,其特征在于,在确定待查询的数据链路的起始时间和结束时间之后,所述方法还包括:
8.一种数据查询装置,其特征在于,包括:
9.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,所述程序运行时控制所述非易失性存储介质所在的设备执行权利要求1至7中任意一项所述的数据查询方法。
10.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任意一项所述的数据查询方法。