数据搜索方法及装置与流程

文档序号:12177231阅读:285来源:国知局
数据搜索方法及装置与流程

本发明涉及互联网领域,具体而言,涉及一种数据搜索方法及装置。



背景技术:

随着互联网的飞速发展,网络上的信息呈爆炸式增长。这使得人们在网上找到所需的信息越来越困难,这种情况下搜索引擎应运而生。搜索引擎搜集互联网上数以亿计的网页,并为每个词建立索引。在建立搜索引擎的过程中,搜集网页是非常重要的一个环节,比如google,百度。

在搜索的过程中,搜索到的结果需要暂时存入内存中,在用户下达展示的命令时,再将搜索结果从内存中提取出来并展示给客户,当数据量过大时,内存中的数据越来越多,占用了大量的内存空间,导致处理速度变慢。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种数据搜索方法及装置,以至少解决数据过多造成的内存空间占用较大的技术问题。

根据本发明实施例的一个方面,提供了一种数据搜索方法,包括:根据获取的搜索关键词搜索与所述搜索关键词相关的网页地址;将搜索到的所述网页地址存储到等待队列中的第一缓存区;判断所述第一缓存区存储的所述网页地址的数量是否大于等于预设阈值;如果判断出所述第一缓存区存储的所述网页地址的数量大于等于所述预设阈值,则将所述第一缓存区存储的所有网页地址存储到数据库中;将所述数据库中的网页地址转存到所述等待队列的第二缓存区;展示所述第二缓存区中存储的第一数量的所述网页地址所对应的标识。

进一步地,将搜索到的所述网页地址存储到等待队列中的第一缓存区包括:判断搜索到的所述网页地址是否为相对地址;如果判断出搜索到的所述网页地址是相对地址,则将所述网页地址由所述相对地址转化为绝对地址;将所述绝对地址存储到所述等待队列中的所述第一缓存区中。

进一步地,在将所述网页地址由所述相对地址转化为绝对地址之后,所述方法还包括:判断所述网页地址是否为预设格式文件的网页地址,其中,所述预设格式文件的网页地址至少包括:JAVASCRIPT格式文件的网页地址和CSS格式文件的网页地址;如果判断出所述网页地址为所述预设格式文件的网页地址,则删除所述预设格式文件的网页地址。

进一步地,展示所述第二缓存区中存储的第一数量的所述网页地址所对应的标识包括:获取所述第二缓存区中存储的所述网页地址的第二数量;在所述第二缓存区中存储的所述网页地址的所述第二数量达到第二阈值时,对所述第二缓存区中存储的第一数量的所述网页地址所对应的标识进行展示,其中,第一数量的所述网页地址为第二数量的所述网页地址的部分或者全部。

进一步地,在展示所述第二缓存区中存储的第一数量的所述网页地址所对应的标识之后,所述方法还包括:在所述第二缓存区中删除已经展示的所述第一数量的所述网页地址。

进一步地,在将所述第一缓存区存储的所有网页地址存储到数据库中之后,所述方法还包括:清空所述第一缓存区存储的所有网页地址。

根据本发明实施例的另一方面,还提供了一种数据搜索装置,包括:获取单元,用于根据获取的搜索关键词搜索与所述搜索关键词相关的网页地址;第一存储单元,用于将搜索到的所述网页地址存储到等待队列中的第一缓存区;判断单元,用于判断所述第一缓存区存储的所述网页地址的数量是否大于等于预设阈值;第二存储单元,用于在判断出所述第一缓存区存储的所述网页地址的数量大于等于所述预设阈值时,将所述第一缓存区存储的所有网页地址存储到数据库中;第三存储单元,用于将所述数据库中的网页地址转存到所述等待队列的第二缓存区;展示单元,用于展示所述第二缓存区中存储的第一数量的所述网页地址所对应的标识。

在本发明实施例中,采用根据获取的搜索关键词搜索与搜索关键词相关的网页地址;将搜索到的网页地址存储到等待队列中的第一缓存区;判断第一缓存区存储的网页地址的数量是否大于等于预设阈值;如果判断出第一缓存区存储的网页地址的数量大于等于预设阈值,则将第一缓存区存储的所有网页地址存储到数据库中;将数据库中的网页地址转存到等待队列的第二缓存区;展示第二缓存区中存储的第一数量的网页地址所对应的标识的方式,通过在数据写入缓存时,将过多的数据存进数据库,达到了减少缓存数据的目的,从而实现了减小内存空间占用的技术效果,进而解决了数据过多造成的内存空间占用较大的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的数据搜索方法的流程图;

图2是根据本发明实施例的一种可选的数据搜索方法的流程图;

图3是根据本发明实施例的一种可选的数据搜索装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明实施例,提供了一种数据搜索的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明实施例的一种可选的数据搜索方法的流程图,如图1所示,该方法包括如下步骤:

步骤S101,根据获取的搜索关键词搜索与搜索关键词相关的网页地址;

步骤S102,将搜索到的网页地址存储到等待队列中的第一缓存区;

步骤S103,判断第一缓存区存储的网页地址的数量是否大于等于预设阈值;

步骤S104,如果判断出第一缓存区存储的网页地址的数量大于等于预设阈值,则将第一缓存区存储的所有网页地址存储到数据库中;

步骤S105,将数据库中的网页地址转存到等待队列的第二缓存区;

步骤S106,展示第二缓存区中存储的第一数量的网页地址所对应的标识。

在本发明实施例中,采用根据获取的搜索关键词搜索与搜索关键词相关的网页地址;将搜索到的网页地址存储到等待队列中的第一缓存区;判断第一缓存区存储的网页地址的数量是否大于等于预设阈值;如果判断出第一缓存区存储的网页地址的数量大于等于预设阈值,则将第一缓存区存储的所有网页地址存储到数据库中;将数据库中的网页地址转存到等待队列的第二缓存区;展示第二缓存区中存储的第一数量的网页地址所对应的标识的方式,通过在数据写入缓存时,将过多的数据存进数据库,达到了减少缓存数据的目的,从而实现了减小内存空间占用的技术效果,进而解决了数据过多造成的内存空间占用较大的技术问题。

可选地,将搜索到的网页地址存储到等待队列中的第一缓存区包括:判断搜索到的网页地址是否为相对地址;如果判断出搜索到的网页地址是相对地址,则将网页地址由相对地址转化为绝对地址;将绝对地址存储到等待队列中的第一缓存区中。

网页地址分为绝对地址和相对地址,其中,相对地址是以包含有该网页地址的文件夹的位置为参考点的网页地址的位置,绝对地址则与网页地址所在文件夹的位置无关。搜索到的网页地址,最终需要展示给用户,而用户可以通过该网页地址,直接查看该网页的内容,因此搜索到并提供给用户的网页地址,应该是绝对地址,所以在将搜索到的网页地址存储到数据库之前,需要判断该网页地址是否为相对地址,如果该网页地址为相对地址,则先将该相对地址转化为绝对地址,然后再存储到数据库中。

可选地,在将网页地址由相对地址转化为绝对地址之后,方法还包括:判断网页地址是否为预设格式文件的网页地址,其中,预设格式文件的网页地址至少包括:JAVASCRIPT格式文件的网页地址和CSS格式文件的网页地址;如果判断出网页地址为预设格式文件的网页地址,则删除预设格式文件的网页地址。

搜索到的网页地址所指示的可能是某些特定格式的文件的地址,这些特定格式的文件可以是:JAVASCRIPT格式的文件,或者CSS格式的文件,指示这些特定格式文件的网页地址无法和普通网页地址一样,获取到HTML代码,无法展示给用户或者用于解析,在将网页地址存储到数据库中时,需要将上述指示某些特定格式文件如:JAVASCRIPT格式的文件,或者CSS格式的文件的网页地址删除。

可选地,展示第二缓存区中存储的第一数量的网页地址所对应的标识包括:获取第二缓存区中存储的网页地址的第二数量;在第二缓存区中存储的网页地址的第二数量达到第二阈值时,对第二缓存区中存储的第一数量的网页地址所对应的标识进行展示,其中,第一数量的网页地址为第二数量的网页地址的部分或者全部。

随着数据库不断向第二缓存中存入网页地址,第二缓存中的网页地址会越来越多,当第二缓存中的网页地址的数量达到第二阈值时,将第一数量的网页地址所对应的标识展示给用户,其中,第一数量即为每次需要展示给客户的网页地址的数量,第二阈值可以与第一数量相等,也可以大于第一数量,在第二阈值与第一数量相等时,将第二缓存中的第一数量的网页地址所对应的标识进行展示,也即将第二缓存中的所有网页地址所对应的标识全部展示;在第二阈值大于第一数量时,将第二缓存中的第一数量的网页地址所对应的标识进行展示后,第二缓存中仍剩余部分网页地址所对应的标识未被展示,在下次展示时,可以优先展示该部分网页地址所对应的标识。

可选地,在展示第二缓存区中存储的第一数量的网页地址所对应的标识之后,方法还包括:在第二缓存区中删除已经展示的第一数量的网页地址。

在第二缓存区中的网页地址所对应的标识经过展示以后,将该部分经过展示的网页地址删除,以使数据库可以向第二缓存区存入新的网页地址。

可选地,在将第一缓存区存储的所有网页地址存储到数据库中之后,方法还包括:清空第一缓存区存储的所有网页地址。

在第一缓存区的所有网页地址存储到数据库中以后,将第一缓存区中的网页地址删除,用来存储新的网页地址。

图2是根据本发明实施例的一种可选的数据搜索方法的流程图,如图2所示,该方法包括如下步骤:

步骤S201,获取搜索关键词;

获取到用户需要搜索的关键词,可以通过要求用户输入关键词的方式,或者提供部分频率出现较高的关键词让用户选择的方式,来获取到用户想要搜索的关键词。

步骤S202,搜索关键词相关的网页地址;

根据获取到的关键词,搜索与关键词相关的网页的地址,与关键词相关的网页包括标题、摘要或者正文中含有该关键词的网页。

步骤S203,将搜索到的网页地址存储到等待队列的第一缓存区;

将上述搜索到的网页的地址按照搜索到的先后顺序,存储到等待队列的第一缓存区,该第一缓存区属于该搜索设备的内存。

步骤S204,判断第一缓存区网页数量是否达到阈值,若第一缓存区网页数量小于阈值,则跳转至步骤S203;

在将搜索到的网页地址存储到等待队列的第一缓存区之后,实时判断第一缓存区中的网页地址的数量是否达到了预先设定的阈值。

步骤S205,若第一缓存区网页数量达到阈值,则判断网页地址是否为绝对地址;

在第一缓存区内的网页地址的数量达到了上述阈值的时候,逐条判断此时存储在第一缓存区中的网页地址是否为绝对地址。网页地址分为绝对地址和相对地址,其中,相对地址是以包含有该网页地址的文件夹的位置为参考点的网页地址的位置,绝对地址则与网页地址所在文件夹的位置无关。搜索到的网页地址,最终需要展示给用户,而用户可以通过该网页地址,直接查看该网页的内容,因此搜索到并提供给用户的网页地址,应该是绝对地址。

步骤S206,如果网页地址是相对地址而非绝对地址,将该相对地址转换为绝对地址;

如果经过判断,网页地址是相对地址,则通过相应的转换,将相对地址变成绝对地址。

步骤S207,判断是否为无效网页地址;

逐条判断第一缓存中存储的网页地址是否是无效的网页地址,搜索到的网页地址所指示的可能是某些特定格式的文件的地址,这些特定格式的文件可以是:JAVASCRIPT格式的文件,或者CSS格式的文件,指示这些特定格式文件的网页地址无法和普通网页地址一样,获取到HTML代码,无法展示给用户或者用于解析,是无效的网页地址。

步骤S208,如果网页地址为无效地址,则将该网页地址删除;

如果经过判断,网页地址是无效的网页地址,则将该网页地址删除掉。

步骤S209,将缓存区中的网页地址存储到数据库;

在经过上述的判断、转换及过滤后,将第一缓存中存储的网页地址存储到数据库中。

步骤S210,清空第一缓存区的网页地址;

第一网页中的网页地址全部存储到数据库中后,将第一缓存中的网页地址全部清除,开始接收新的网页地址。

步骤S211,将数据库中的网页地址存储到第二缓存区;

数据库中的网页地址可以在接到第二缓存区的调用请求时,将网页地址存储到第二缓存区中。

步骤S212,判断第二缓存区网页数量是否达到阈值,如果第二缓存区网页数量小于阈值,则跳转到步骤S211;

在第二缓存区存储网页地址的过程中,实时检测第二缓存区的中网页地址的数量是否达到了预设的阈值,如果第二缓存区中的网页地址的数量未达到预设的阈值,则继续向第二缓存中存储网页地址。

步骤S213,如果第二缓存区网页数量达到阈值,则展示第二缓存区网页地址对应的标识;

如果经过判断,第二缓存中存储的网页地址达到了预设的阈值,则提取第二网页中的网页地址,并将网页地址展示给用户。

步骤S214,清空第二缓存区中已展示的网页地址。

在调取了第二缓存中的网页地址并展示给用户后,将第二缓存中已经展示给用户的网页地址删除。

图3是根据本发明实施例的一种可选的数据搜索装置的示意图,如图3所示,该装置包括:获取单元301,用于根据获取的搜索关键词搜索与搜索关键词相关的网页地址;第一存储单元302,用于将搜索到的网页地址存储到等待队列中的第一缓存区;判断单元303,用于判断第一缓存区存储的网页地址的数量是否大于等于预设阈值;第二存储单元304,用于在判断出第一缓存区存储的网页地址的数量大于等于预设阈值时,将第一缓存区存储的所有网页地址存储到数据库中;第三存储单元305,用于将数据库中的网页地址转存到等待队列的第二缓存区;展示单元306,用于展示第二缓存区中存储的第一数量的网页地址所对应的标识。

在本发明实施例中,采用根据获取的搜索关键词搜索与搜索关键词相关的网页地址;将搜索到的网页地址存储到等待队列中的第一缓存区;判断第一缓存区存储的网页地址的数量是否大于等于预设阈值;如果判断出第一缓存区存储的网页地址的数量大于等于预设阈值,则将第一缓存区存储的所有网页地址存储到数据库中;将数据库中的网页地址转存到等待队列的第二缓存区;展示第二缓存区中存储的第一数量的网页地址所对应的标识的方式,通过在数据写入缓存时,将过多的数据存进数据库,达到了减少缓存数据的目的,从而实现了减小内存空间占用的技术效果,进而解决了数据过多造成的内存空间占用较大的技术问题。

可选地,第一存储单元包括:第一判断模块,用于判断搜索到的网页地址是否为相对地址;转化模块,用于在判断出搜索到的网页地址是相对地址时,将网页地址由相对地址转化为绝对地址;存储模块,用于将绝对地址存储到等待队列中的第一缓存区中。

网页地址分为绝对地址和相对地址,其中,相对地址是以包含有该网页地址的文件夹的位置为参考点的网页地址的位置,绝对地址则与网页地址所在文件夹的位置无关。搜索到的网页地址,最终需要展示给用户,而用户可以通过该网页地址,直接查看该网页的内容,因此搜索到并提供给用户的网页地址,应该是绝对地址,所以在将搜索到的网页地址存储到数据库之前,需要判断该网页地址是否为相对地址,如果该网页地址为相对地址,则先将该相对地址转化为绝对地址,然后再存储到数据库中。

可选地,数据搜索装置还包括:第二判断模块,用于在将网页地址由相对地址转化为绝对地址之后,判断网页地址是否为预设格式文件的网页地址,其中,预设格式文件的网页地址至少包括:JAVASCRIPT格式文件的网页地址和CSS格式文件的网页地址;删除模块,用于在判断出网页地址为预设格式文件的网页地址时,删除预设格式文件的网页地址。

搜索到的网页地址所指示的可能是某些特定格式的文件的地址,这些特定格式的文件可以是:JAVASCRIPT格式的文件,或者CSS格式的文件,指示这些特定格式文件的网页地址无法和普通网页地址一样,获取到HTML代码,无法展示给用户或者用于解析,在将网页地址存储到数据库中时,需要将上述指示某些特定格式文件如:JAVASCRIPT格式的文件,或者CSS格式的文件的网页地址删除。

可选地,展示单元包括:第一获取模块,用于获取第二缓存区中存储的网页地址的第二数量;展示模块,用于在第二缓存区中存储的网页地址的第二数量达到第二阈值时,对第二缓存区中存储的第一数量的网页地址所对应的标识进行展示,其中,第一数量的网页地址为第二数量的网页地址的部分或者全部。

随着数据库不断向第二缓存中存入网页地址,第二缓存中的网页地址会越来越多,当第二缓存中的网页地址的数量达到第二阈值时,将第一数量的网页地址所对应的标识展示给用户,其中,第一数量即为每次需要展示给客户的网页地址的数量,第二阈值可以与第一数量相等,也可以大于第一数量,在第二阈值与第一数量相等时,将第二缓存中的第一数量的网页地址所对应的标识进行展示,也即将第二缓存中的所有网页地址所对应的标识全部展示;在第二阈值大于第一数量时,将第二缓存中的第一数量的网页地址所对应的标识进行展示后,第二缓存中仍剩余部分网页地址所对应的标识未被展示,在下次展示时,可以优先展示该部分网页地址所对应的标识。

可选地,数据搜索装置还包括:第一删除单元,用于在展示第二缓存区中存储的第一数量的网页地址所对应的标识之后,在第二缓存区中删除已经展示的第一数量的网页地址。

在第二缓存区中的网页地址所对应的标识经过展示以后,将该部分经过展示的网页地址删除,以使数据库可以向第二缓存区存入新的网页地址。

可选地,数据搜索装置还包括:第二删除单元,用于在将第一缓存区存储的所有网页地址存储到数据库中之后,清空第一缓存区存储的所有网页地址。

在第一缓存区的所有网页地址存储到数据库中以后,将第一缓存区中的网页地址删除,用来存储新的网页地址。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1