CN114265927A - 数据查询方法及装置、存储介质及电子装置 - Google Patents
数据查询方法及装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN114265927A CN114265927A CN202111576272.2A CN202111576272A CN114265927A CN 114265927 A CN114265927 A CN 114265927A CN 202111576272 A CN202111576272 A CN 202111576272A CN 114265927 A CN114265927 A CN 114265927A
- Authority
- CN
- China
- Prior art keywords
- clustering
- target
- log
- cluster
- data
- 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
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种数据查询方法及装置、存储介质及电子装置,其中,上述方法包括:获取目标日志集合,并将目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的时间参数的数据位于对应的时段内;分别对多个日志子集进行聚类,得到多组聚类结果,其中,多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;对多组聚类结果中相同聚类标签的聚类簇按照用户标识执行取交集操作,得到目标交集结果;在目标交集结果包括一个或多个目标日志子集的情况下,将一个或多个目标日志子集存储在目标服务器的内存中。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据查询方法及装置、存储介质及电子装置。
背景技术
随着计算机信息和信息数的迅猛发展和普及应用,行业应用系统的规模迅速扩大,行业应用所产生的数据呈爆炸性增长。动辄达到数百TB甚至数十至数百PB规模的行业,也需要的更高配置的服务器性能,因此,寻求有效的大数据处理技术、方法和手段已经成为现实世界的迫切需求。大数据时代对人类的数据处理能力提出了新的挑战,也为人们获得更为深刻、全面的洞察能力提供了前所未有的空间与潜力。落地高效的大数据处理方案对数据查询、减少服务器性能要求具有重要意义。
并且,随着系统部署到服务器中产生的用户日志数据越来越多,针对用户日志数据的处理已经成为当今的研究热点,而分析数据是数据处理的基础,因此开发一个有效的用户日志数据分析对服务器上的日志数据处理具有重要意义。
而现有的数据查询都是从服务器外存的数据库中直接去查询数据,导致数据查询效率较低。
针对相关技术,服务器在查询日志数据的时候,直接从外存的数据库中进行查询,导致查询效率较低的问题,目前尚未提出有效的解决方案。
因此,有必要对相关技术予以改良以克服相关技术中的所述缺陷。
发明内容
本发明实施例提供了一种数据查询方法及装置、存储介质及电子装置,以至少解决服务器在查询日志数据的时候,直接从外存的数据库中进行查询,导致查询效率较低的问题。
根据本发明实施例的一方面,提供一种数据查询方法,包括:获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
根据本发明实施例的另一方面,还提供了一种数据查询装置,包括:获取模块,用于获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;划分模块,用于根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;聚类模块,用于分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;处理模块,用于对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;存储模块,用于在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据查询方法。
根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述数据查询方法。
通过本发明,获取目标日志集合,并将目标日志集合分成与多个时段对应的多个日志子集,进而分别对所述多个日志子集进行聚类,得到多组聚类结果,再对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果,并在目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。采用上述技术方案,解决了服务器在查询日志数据的时候,直接从外存的数据库中进行查询,导致查询效率较低的问题。通过上述技术方案,将满足要求的部分数据存储在服务器的内存中,进而在获取到查询指令的情况下,优先在内存中进行查找,提高了查询效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示例性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的数据查询方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的数据查询方法的流程图;
图3是根据本发明实施例的聚类示意图;
图4是根据本发明实施例的原理图;
图5是根据本发明实施例的数据过滤算法原理图;
图6是根据本发明实施例的数据处理效果图;
图7是根据本发明实施例的数据查询装置的结构框图(一);
图8是根据本发明实施例的数据查询装置的结构框图(二)。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例中所提供的方法实施例可以在计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的数据查询方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(Microprocessor Unit,简称是MPU)或可编程逻辑器件(Programmable logic device,简称是PLD))和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据查询方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
为了解决上述问题,在本实施例中提供了一种数据查询方法,图2是根据本发明实施例的数据查询方法的流程图,该流程包括如下步骤:
步骤S202,获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
需要说明的是,目标日志集合是位于服务器的外存中,即服务器的硬盘中。
步骤S204,根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
需要说明的是,时间段可以通过管理人员进行设置,例如,可以将时间段分为8:00-20:00以及20:00-8:00;进而可以将目标日志集合分为两个日志子集。如果时间段有三个,则对应的日志子集也为三个。
步骤S206,分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
也就是说,需要分别对多个日志子集中的每个日志子集进行聚类,进而可以得到每个日志子集对应的一组聚类结果。
需要说明的是,聚类标签可以是经常使用社交软件,经常使用购物软件等。
步骤S208,对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
步骤S210,在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
需要说明的是,将所述一个或多个目标日志子集存储在目标服务器的内存的过程中,如果内存中具有其他日志,则需要将其他日志从内存中删除。
通过本发明,获取目标日志集合,并将目标日志集合分成与多个时段对应的多个日志子集,进而分别对所述多个日志子集进行聚类,得到多组聚类结果,再对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果,并在目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。采用上述技术方案,解决了服务器在查询日志数据的时候,直接从外存的数据库中进行查询,导致查询效率较低的问题。通过上述技术方案,将满足要求的部分数据存储在服务器的内存中,进而在获取到查询指令的情况下,优先在内存中进行查找,提高了查询效率。
为了更好的理解,在一个示例性的实施例中,所述分别对所述多个日志子集进行聚类,得到多组聚类结果,可以通过以下方式实现:对所述多个日志子集中的每个日志子集分别执行以下操作,其中,在执行以下操作时,所述每个日志子集为当前日志子集:按照所述一组参数中的部分或全部参数的数据,对所述当前日志子集进行聚类,得到当前一组聚类结果,其中,在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,所述当前聚类簇中的每条日志按照所述部分或全部参数的数据确定的日志特征之间的特征距离满足预设聚类条件。
需要说明的是,聚类时参考的参数可以是属性参数,也可以是行为参数。对日志子集进行聚类,可以得到一个聚类簇,也可以得到多个聚类簇,此外,如果日志子集中的日志按照参数确定的日志特征之间的特征距离不满足预设聚类条件,则聚类失败,不存在聚类簇。
需要说明的是,本申请实施例采用的聚类算法包括但不限于K-means。
在一个示例性的实施例中,在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,为所述当前聚类簇设置对应的当前聚类标签;或者在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,根据所述当前聚类簇中的每条日志包括的所述一组参数的数据以及所述预设聚类条件,在目标标签集合中确定与所述当前聚类簇对应的所述当前聚类标签。
也就是说,在一种情况下,聚类算法可以在聚类的时候,通过对聚类参数的数据自动进行分析,从而确定数据标签。
需要说明的是,在另一种情况下,如果管理人员预先设置了目标标签集合,并且确定了目标标签集合与聚类参数的数据的对应关系,则服务器可以通过聚类簇中一组参数(相当于上述聚类参数)的数据以及预设聚类条件,在目标标签集合中确定与聚类簇对应的聚类标签。
在一个示例性的实施例中,所述对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果,可以通过以下方式实现:在所述多组聚类结果为N组聚类结果时,对N组聚类结果中的第i组聚类结果中的第j个聚类簇,执行以下操作,其中,N为大于或等于2的正整数,1≤i≤N,第i组聚类结果包括Mi个聚类簇,M为大于或等于1的正整数,1≤j≤M,第j个聚类簇的聚类标签为当前聚类标签:在所述N组聚类结果中除所述第i组聚类结果之外的N-1组聚类结果中查找聚类标签为所述当前聚类标签的聚类簇;在查找到聚类标签为所述当前聚类标签的聚类簇的情况下,在所述第j个聚类簇和所述查找到的聚类簇中按照所述用户标识执行取交集操作,得到当前交集结果,其中,在所述当前交集结果包括至少2条日志时,将所述至少2条日志确定为一个所述目标日志子集。
为了更好的理解,以下具体说明,假设有两组聚类结果,其中,第一组聚类结果中具有两个聚类簇,聚类标签分别为A,B;第二组聚类结果中也具有两个聚类簇,聚类标签分别为A,C。每个聚类簇包括一条或多条日志。进而在将上述两组聚类结果执行取交集操作的过程中,具体是将第一组聚类结果中的标签为A的聚类簇和第二组聚类结果中标签为A的聚类簇执行取交集操作,并将第一组聚类结果中的标签为A的聚类簇与和第二组聚类结果中标签为A聚类簇中用户标识标签相同的日志确定为目标日志子集,需要说明的是,目标日志子集中的日志个数为偶数。
在一个示例性的实施例中,在所述目标交集结果不包括存在交集的日志子集的情况下,按照所述一组参数中的部分或全部参数的数据,对所述目标日志集合进行聚类,得到一个或多个聚类簇以及与所述一个或多个聚类簇对应的聚类标签。
也就是说,如果在将目标日志集合进行分组聚类求交集的过程中,不存在交集,则直接将目标日志集合进行聚类,得到一个或多个聚类簇以及与所述一个或多个聚类簇对应的聚类标签。
在一个示例性的实施例中,图3是根据本发明实施例的聚类示意图,如图3所示,将目标日志集合划分为两个日志子集集合,分别对两个日志子集集合进行聚类,进而得到两组聚类结果,并将两组聚类结果执行取交集操作。
在一个示例性的实施例中,在将所述一个或多个目标日志子集存储在目标服务器的内存中之后,还包括:在所述目标服务器获取到目标查询指令、且所述目标查询指令指示了目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询满足所述目标查询条件的日志;在所述内存中存储的所述一个或多个目标日志子集中查询不到满足所述目标查询条件的日志的情况下,在所述目标日志集合中查询满足所述目标查询条件的日志。
需要说明的是,目标查询条件包括但不限于用户标识,进而服务器在获取到了目标查询指令以后,先从内存中进行查找,在内存中未找到的情况下,再从服务器外存的目标日志子集中去查询满足目标查询条件的日志。采用上述技术方案,可以提高查询效率。
在一个示例性的实施例中,在将所述一个或多个目标日志子集存储在目标服务器的内存中时,将所述一个或多个目标日志子集对应的聚类标签存储在所述内存中,其中,所述内存中存储的所述聚类标签用于在响应于所述目标查询指令执行目标查询操作时使用。
在一个示例性的实施例中,在将所述一个或多个目标日志子集存储在目标服务器的内存中之后,还包括:在所述目标服务器获取到目标帐号发送的目标查询指令、且所述目标查询指令指示了待匹配标签和目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询所述聚类标签与所述待匹配标签匹配的目标日志子集,其中,所述待匹配标签是所述目标帐号的标签;在查询到所述聚类标签与所述待匹配标签匹配的所述目标日志子集的情况下,在查询到的所述目标日志子集中查询满足所述目标查询条件的日志。
显然,上述所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。为了更好的理解上述数据查询方法,以下结合实施例对上述过程进行说明,但不用于限定本发明实施例的技术方案,具体地:
在一个可选的实施例中,图4是根据本发明实施例的原理图,具体的:
步骤一:确定每一个聚类(相当于上述实施例中的日志子集):从服务器中获取日志源文件(相当于上述实施例中的目标日志集合),将用户数据按出现时间段统计成不同的聚类,在不同的聚类上找到中心对象(相当于上述实施例中的聚类结果),从而统计出不同时间段的每一个聚类;
步骤二:进行交集运算:图5是根据本发明实施例的数据过滤算法原理图,通过中心对象UBehavior数据过滤算法原理(如图5所示),将统计出不同时间段的每一个聚类进行交集运算,计算出交集结果信息,以及与交集信息相似度较高(即不在交集范围内,但距离交集中心对象最近的数据)的数据信息,从而确定出热点数据(相当于上述实施例中的目标交集结果);
步骤三:设置热点数据:将热点数据放入缓存(相当于内存)中,便于下次查询该数据时,直接从热点数据先查询,如果没有查询到,再查询数据库信息,这样提高数据查询效率;清除非热点数据的日志信息,减少服务器内存大小。
此外,本实施例还具备以下步骤:
步骤四:比较查询效率:图6是根据本发明实施例的数据处理效果图,如图6所述,基于中心对象UBehavior数据过滤算法,提高了数据查询效率,并大大减少了日志的大小,从而节省了内存空间,在验证内存的可扩展性,通过增加中心对象数据节点,就可平均提升内存空间1.5倍,可见用户数据处理提高了内存的扩展性。
步骤五:分析总结数据处理方法:数据处理模块提出了基于中心对象UBehavior数据过滤算法,该算法对数据进行预处理,根据数据出现的时间段内先后顺序形成每一个聚类,将不同时间段的聚类进行交集运算,得出交集结果以及与交集结果相似度较高的信息做为热点数据,便于查询数据,并删除非热点数据的日志信息,减少服务器内存大小,为其他服务器信息节省了空间,为后续的分析和处理奠定基础。
需要说明的是,本实施例提出了基于聚类算法对日志热点数据处理的方法,在数据处理模型中提出了基于中心对象UBehavior数据过滤算法,该算法引入通过将用户属性数据和用户行为数据求交集(如图5),将交集结果信息以及与交集信息相似度较高的信息存入缓存,便于数据查询;将不是交集结果信息过滤掉,并从服务器日志信息中去掉非交集信息的日志,减少内存占用大小。
此外,本实施例针对负载问题引入聚类算法技术,保证数据处理的统一性和准确性。基于并行的分布式用户数据处理方式,具有强的可扩展性。并在带宽允许情况下,通过简单增加中心对象节点就可处理用户数据从而提升数据查询效率。且目前用户日志数据处理大多根据用户消费模式或习惯,进行数据挖掘,从而推荐出用户感兴趣的商品,而本方案是提供了一种对用户数据进行处理的方案,并引入中心对象UBehavior数据过滤算法进行处理,确定海量用户日志数据中的热点数据,保证用户数据和热点数据之间的一致性,同时保障数据的准确性。
此外,本发明实施例的上述技术方案,具有较强的可扩展性:在服务压力方面,通过引入聚类算法中的k-means算法技术,建立同一聚类中对象相似度较高的关系,保证了每一类消费者的消费模式或习惯,找出了消费者的共性模式或习惯数据。并基于并行数据节点分布式的串联聚类方式,纵向扩展数据对象节点,全方位的智慧角色赋能,具有极强的可扩展性。为后续大数据研究处理奠定了强有力的基础。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
在本实施例中还提供了一种数据查询装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的设备较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本发明实施例的数据查询装置的结构框图(一),该装置包括:
获取模块70,用于获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
划分模块72,用于根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
聚类模块74,用于分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
处理模块76,用于对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
存储模块78,用于在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
通过上述装置,获取目标日志集合,并将目标日志集合分成与多个时段对应的多个日志子集,进而分别对所述多个日志子集进行聚类,得到多组聚类结果,再对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果,并在目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。采用上述技术方案,解决了服务器在查询日志数据的时候,直接从硬盘的数据库中进行查询,导致查询效率较低的问题。通过上述技术方案,将满足要求的部分数据存储在服务器的内存中,进而在获取到查询指令的情况下,优先在内存中进行查找,提高了查询效率。
在一个示例性的实施例中,聚类模块74还用于,对所述多个日志子集中的每个日志子集分别执行以下操作,其中,在执行以下操作时,所述每个日志子集为当前日志子集:按照所述一组参数中的部分或全部参数的数据,对所述当前日志子集进行聚类,得到当前一组聚类结果,其中,在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,所述当前聚类簇中的每条日志按照所述部分或全部参数的数据确定的日志特征之间的特征距离满足预设聚类条件。
在一个示例性的实施例中,聚类模块74还用于,在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,为所述当前聚类簇设置对应的当前聚类标签;或者在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,根据所述当前聚类簇中的每条日志包括的所述一组参数的数据以及所述预设聚类条件,在目标标签集合中确定与所述当前聚类簇对应的所述当前聚类标签。
在一个示例性的实施例中,处理模块76还用于,在所述多组聚类结果为N组聚类结果时,对N组聚类结果中的第i组聚类结果中的第j个聚类簇,执行以下操作,其中,N为大于或等于2的正整数,1≤i≤N,第i组聚类结果包括Mi个聚类簇,M为大于或等于1的正整数,1≤j≤M,第j个聚类簇的聚类标签为当前聚类标签:在所述N组聚类结果中除所述第i组聚类结果之外的N-1组聚类结果中查找聚类标签为所述当前聚类标签的聚类簇;在查找到聚类标签为所述当前聚类标签的聚类簇的情况下,在所述第j个聚类簇和所述查找到的聚类簇中按照所述用户标识执行取交集操作,得到当前交集结果;其中,所述当前交集结果包括至少2条日志时,将所述至少2条日志确定为一个所述目标日志子集。
在一个示例性的实施例中,聚类模块74还用于,在所述目标交集结果不包括存在交集的日志子集的情况下,按照所述一组参数中的部分或全部参数的数据,对所述目标日志集合进行聚类,得到一个或多个聚类簇以及与所述一个或多个聚类簇对应的聚类标签。
图8是根据本发明实施例的数据查询装置的结构框图(二),该装置还包括:查询模块80。
在一个示例性的实施例中,查询模块80还用于,在所述目标服务器获取到目标查询指令、且所述目标查询指令指示了目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询满足所述目标查询条件的日志;在所述内存中存储的所述一个或多个目标日志子集中查询不到满足所述目标查询条件的日志的情况下,在所述目标日志集合中查询满足所述目标查询条件的日志。
在一个示例性的实施例中,存储模块78还用于,在将所述一个或多个目标日志子集存储在目标服务器的内存中时,将所述一个或多个目标日志子集对应的聚类标签存储在所述内存中,其中,所述内存中存储的所述聚类标签用于在响应于所述目标查询指令执行目标查询操作时使用。
在一个示例性的实施例中,查询模块80还用于,在所述目标服务器获取到目标帐号发送的目标查询指令、且所述目标查询指令指示了待匹配标签和目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询所述聚类标签与所述待匹配标签匹配的目标日志子集,其中,所述待匹配标签是所述目标帐号的标签;在查询到所述聚类标签与所述待匹配标签匹配的所述目标日志子集的情况下,在查询到的所述目标日志子集中查询满足所述目标查询条件的日志。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
S2,根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
S3,分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
S4,对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
S5,在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
S2,根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
S3,分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
S4,对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
S5,在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种数据查询方法,其特征在于,包括:
获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
2.根据权利要求1所述的方法,其特征在于,所述分别对所述多个日志子集进行聚类,得到多组聚类结果,包括:
对所述多个日志子集中的每个日志子集分别执行以下操作,其中,在执行以下操作时,所述每个日志子集为当前日志子集:
按照所述一组参数中的部分或全部参数的数据,对所述当前日志子集进行聚类,得到当前一组聚类结果,其中,在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,所述当前聚类簇中的每条日志按照所述部分或全部参数的数据确定的日志特征之间的特征距离满足预设聚类条件。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,为所述当前聚类簇设置对应的当前聚类标签;或者
在所述当前一组聚类结果中包括至少一个当前聚类簇的情况下,根据所述当前聚类簇中的每条日志包括的所述一组参数的数据以及所述预设聚类条件,在目标标签集合中确定与所述当前聚类簇对应的所述当前聚类标签。
4.根据权利要求1所述的方法,其特征在于,所述对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果,包括:
在所述多组聚类结果为N组聚类结果时,对N组聚类结果中的第i组聚类结果中的第j个聚类簇,执行以下操作,其中,N为大于或等于2的正整数,1≤i≤N,第i组聚类结果包括Mi个聚类簇,M为大于或等于1的正整数,1≤j≤M,第j个聚类簇的聚类标签为当前聚类标签:
在所述N组聚类结果中除所述第i组聚类结果之外的N-1组聚类结果中查找聚类标签为所述当前聚类标签的聚类簇;
在查找到聚类标签为所述当前聚类标签的聚类簇的情况下,在所述第j个聚类簇和所述查找到的聚类簇中按照所述用户标识执行取交集操作,得到当前交集结果;
其中,所述当前交集结果包括至少2条日志时,将所述至少2条日志确定为一个所述目标日志子集。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标交集结果不包括存在交集的日志子集的情况下,按照所述一组参数中的部分或全部参数的数据,对所述目标日志集合进行聚类,得到一个或多个聚类簇以及与所述一个或多个聚类簇对应的聚类标签。
6.根据权利要求1所述的方法,其特征在于,在将所述一个或多个目标日志子集存储在目标服务器的内存中之后,所述方法还包括:
在所述目标服务器获取到目标查询指令、且所述目标查询指令指示了目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询满足所述目标查询条件的日志;
在所述内存中存储的所述一个或多个目标日志子集中查询不到满足所述目标查询条件的日志的情况下,在所述目标日志集合中查询满足所述目标查询条件的日志。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在将所述一个或多个目标日志子集存储在目标服务器的内存中时,将所述一个或多个目标日志子集对应的聚类标签存储在所述内存中,其中,所述内存中存储的所述聚类标签用于在响应于所述目标查询指令执行目标查询操作时使用。
8.根据权利要求7所述的方法,其特征在于,在将所述一个或多个目标日志子集存储在目标服务器的内存中之后,所述方法还包括:
在所述目标服务器获取到目标帐号发送的目标查询指令、且所述目标查询指令指示了待匹配标签和目标查询条件的情况下,响应于所述目标查询指令,在所述内存中存储的所述一个或多个目标日志子集中查询所述聚类标签与所述待匹配标签匹配的目标日志子集,其中,所述待匹配标签是所述目标帐号的标签;
在查询到所述聚类标签与所述待匹配标签匹配的所述目标日志子集的情况下,在查询到的所述目标日志子集中查询满足所述目标查询条件的日志。
9.一种数据查询装置,其特征在于,包括:
获取模块,用于获取目标日志集合,其中,所述目标日志集合中的每条日志包括一组参数的数据,所述一组参数包括用户标识和时间参数;
划分模块,用于根据所述每条日志中的所述时间参数的数据,将所述目标日志集合分成与多个时段对应的多个日志子集,其中,每个日志子集中的日志包括的所述时间参数的数据位于对应的时段内;
聚类模块,用于分别对所述多个日志子集进行聚类,得到多组聚类结果,其中,所述多组聚类结果中的每组聚类结果包括对对应的日志子集进行聚类得到的聚类簇以及与所述聚类簇对应的聚类标签,每个聚类簇中包括一条或多条日志;
处理模块,用于对所述多组聚类结果中相同聚类标签的聚类簇按照所述用户标识执行取交集操作,得到目标交集结果;
存储模块,用于在所述目标交集结果包括一个或多个目标日志子集的情况下,将所述一个或多个目标日志子集存储在目标服务器的内存中,其中,在所述目标服务器的内存中存储的所述一个或多个目标日志子集用于在所述目标服务器获取到目标查询指令的情况下被优先查询。
10.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至8任一项中所述的方法。
11.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至8任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111576272.2A CN114265927A (zh) | 2021-12-21 | 2021-12-21 | 数据查询方法及装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111576272.2A CN114265927A (zh) | 2021-12-21 | 2021-12-21 | 数据查询方法及装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114265927A true CN114265927A (zh) | 2022-04-01 |
Family
ID=80828533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111576272.2A Pending CN114265927A (zh) | 2021-12-21 | 2021-12-21 | 数据查询方法及装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114265927A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114722081A (zh) * | 2022-06-09 | 2022-07-08 | 杭银消费金融股份有限公司 | 一种基于中转库模式的流式数据时间序列传输方法及系统 |
CN115840770A (zh) * | 2023-02-10 | 2023-03-24 | 广东徐工汉云工业互联网有限公司 | 基于分布式环境下的本地缓存数据处理方法和相关设备 |
CN116796206A (zh) * | 2023-06-27 | 2023-09-22 | 北京中科聚网信息技术有限公司 | 基于一体化平台的运营数据处理方法及系统 |
-
2021
- 2021-12-21 CN CN202111576272.2A patent/CN114265927A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114722081A (zh) * | 2022-06-09 | 2022-07-08 | 杭银消费金融股份有限公司 | 一种基于中转库模式的流式数据时间序列传输方法及系统 |
CN114722081B (zh) * | 2022-06-09 | 2022-09-02 | 杭银消费金融股份有限公司 | 一种基于中转库模式的流式数据时间序列传输方法及系统 |
CN115840770A (zh) * | 2023-02-10 | 2023-03-24 | 广东徐工汉云工业互联网有限公司 | 基于分布式环境下的本地缓存数据处理方法和相关设备 |
CN116796206A (zh) * | 2023-06-27 | 2023-09-22 | 北京中科聚网信息技术有限公司 | 基于一体化平台的运营数据处理方法及系统 |
CN116796206B (zh) * | 2023-06-27 | 2024-04-16 | 北京中科聚网信息技术有限公司 | 基于一体化平台的运营数据处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110532451B (zh) | 针对政策文本的检索方法和装置、存储介质、电子装置 | |
CN114265927A (zh) | 数据查询方法及装置、存储介质及电子装置 | |
CN104298679B (zh) | 应用业务推荐方法及装置 | |
CN110019876B (zh) | 数据查询方法、电子设备及存储介质 | |
CN106844407B (zh) | 基于数据集相关性的标签网络产生方法和系统 | |
CN111078818B (zh) | 地址分析方法、装置、电子设备及存储介质 | |
CN112784025A (zh) | 一种目标事件的确定方法和装置 | |
US11556595B2 (en) | Attribute diversity for frequent pattern analysis | |
CN111309946B (zh) | 一种已建立档案优化方法及装置 | |
CN104750872A (zh) | 一种业务对象的查询方法及装置 | |
CN111159577B (zh) | 一种社群划分方法、装置、存储介质及电子装置 | |
CN117221078A (zh) | 关联规则确定方法、装置及存储介质 | |
CN108182200B (zh) | 基于语义相似度的关键词拓展方法和装置 | |
CN113886587A (zh) | 一种基于深度学习的数据分类方法以及图谱的建立方法 | |
CN106708829A (zh) | 一种数据推荐方法及推荐系统 | |
CN111552684A (zh) | 异常数据定位方法、装置、计算机设备和存储介质 | |
CN114553717A (zh) | 一种网络节点划分方法、装置、设备及存储介质 | |
CN110609924A (zh) | 基于图数据的全量关系计算方法、装置、设备及存储介质 | |
CN107844536B (zh) | 应用程序选择的方法、装置和系统 | |
CN112241410A (zh) | 数据存储方法、数据索引的构建方法、装置、计算机设备 | |
WO2023093255A1 (zh) | 聚类集合的确定方法和装置、存储介质及电子装置 | |
CN113448747B (zh) | 数据传输方法、装置、计算机设备和存储介质 | |
CN111723122A (zh) | 数据间关联规则的确定方法、装置、设备及可读存储介质 | |
CN111274209B (zh) | 话单文件处理方法及装置 | |
CN118260273B (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 |