一种基于Elasticsearch的云盘搜索方法、系统、服务器及存储介质技术方案

技术编号:21477790 阅读:39 留言:0更新日期:2019-06-29 04:51
本发明专利技术涉及一种基于Elasticsearch的云盘搜索方法、系统、服务器及存储介质,方法包括接收用户输入的搜索信息,对所述搜索信息进行解析,并根据解析结果生成可识别的搜索命令;基于Elasticsearch搜索方法,根据所述搜索命令获取与所述搜索信息对应的目标搜索资源并存储;将所述目标搜索资源返回至所述用户并显示。本发明专利技术的云盘搜索方法能够更加高效地查询到云盘中与用户输入的搜索信息对应的目标搜索资源,减少用户检索资源花费的时间,实时搜索能力更强,处理数据强,速度快,易扩展。

【技术实现步骤摘要】
一种基于Elasticsearch的云盘搜索方法、系统、服务器及存储介质
本专利技术涉及互联网搜索
,尤其涉及一种基于Elasticsearch的云盘搜索方法、系统、服务器及存储介质。
技术介绍
从1946年诞生了世界上第一台电子计算机开始,计算机就绵延不绝的开发和创造知识。互联网上的信息成爆炸式增长,开启了互联网信息爆炸的时代,要想拥有先进的生产力,就必须依赖于信息化,而信息化的发展也是当今时代的大势所趋。由于近些年来云盘(网盘)技术的兴起,云盘安全稳定、海量存储、可随时随地实现共享文件的特点越来越受用户的青睐。Elasticsearch(实时分布式搜索和分析引擎),是一个基于Lucene的全文搜索服务,是当前流行的企业级搜索引擎。国内外研究技术现状从技术层面来看,目前国内外网盘搜索引擎实现原理大致分为两派:(1)自定义爬虫程序,使用自定义爬虫的代表有:盘找找、去转盘网等。(2)调用百度三方接口供搜索,Google自定义搜索等,使用Google自定义搜索的代表有:西林街、盘搜等。自定义爬虫程序的网盘搜索引擎优于调用Google接口的网盘搜索引擎,原因在于自定义爬虫程序可以定制资源的搜索,从而达到准确查找资源的目的,而调用Google接口,受制于Google,这就是为什么通过Google自定义搜索出来的资源有效性差(随着百度云的升级,Google不能有效的去除失效链接);另一方面,调用Google接口需要翻墙,从而导致了搜索速度的下降,影响用户体验。然而现有运用自定义爬虫程序的云盘搜索系统均存在如下几个带有共性的问题:(1)检索资速度比较慢;(2)缺乏资源分享功能;(3)部分网站没有向用户推荐相关资源的功能;(4)资源类型划分不明确,所有资源混在一起;(5)用户输入关键字时不友好,没有提示。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术的不足,提供一种基于Elasticsearch的云盘搜索方法、系统、服务器及存储介质。本专利技术解决上述技术问题的技术方案如下:一种基于Elasticsearch的云盘搜索方法,包括以下步骤:接收用户输入的搜索信息,对所述搜索信息进行解析,并根据解析结果生成可识别的搜索命令;基于Elasticsearch搜索方法,根据所述搜索命令获取与所述搜索信息对应的目标搜索资源并存储;将所述目标搜索资源返回至所述用户并显示。本专利技术的有益效果是:由于Elasticsearch(实时分布式搜索和分析引擎)是一个基于Lucene的全文搜索服务器,Elasticsearch实时搜索更强,支持扩展多台服务器,拥有处理PB级数据的能力,且当其中一个节点出现了故障,Elasticsearch能够自动分配可用节点进行替代,检索到资源后直接返回给用户;因此与传统的资源搜索方法相比,本专利技术基于Elasticsearch搜索方法,当通过接收并解析用户的搜索信息后,生成可识别的搜索命令,并直接根据搜索命令获取云盘中的目标搜索资源,能够更加高效地查询到云盘中与用户输入的搜索信息对应的目标搜索资源,减少用户检索资源花费的时间,实时搜索能力更强,处理数据强,速度快,易扩展;其中,根据解析结果生成可识别的搜索命令,可以调用Elasticsearch-sql插件将所述解析结果转换成可识别的json格式的搜索命令。在上述技术方案的基础上,本专利技术还可以做如下改进:进一步:获取所述目标搜索资源的具体步骤包括:采用网络爬虫的方法根据所述搜索命令爬取与所述搜索信息对应的初始搜索资源;对所述初始搜索资源进行资源清洗,得到所述目标搜索资源;将所述目标搜索资源存储入资源数据库中,根据所述资源数据库中的所述目标搜索资源生成索引,并根据所述索引将所述目标搜索资源进行同步。上述进一步方案的有益效果是:网络爬虫能够按照一定的规则自动的抓取资源,通过网络爬虫的方法便于爬取与搜索信息对应的初始搜索资源,并便于后续进行索引;通过资源清洗,便于获取更符合用户要求的目标搜索资源;现有技术中,由于其数据存储和搜索功能在一个模块进行,在同时进行存储和搜索功能时,会产生IO阻塞,即数据资源在被存储功能占用时,数据搜索功能会需要等待数据资源被存储功能释放之后才能实现,同时数据资源被搜索功能占用时,也会造成数据存储无法进行;这样架构会导致系统同时进行两个功能时,互相等待,造成系统的效率过低;本专利技术通过资源数据库存储目标搜索资源,再通过分布式索引而使目标搜索资源同步,进一步提高实时搜索速度,并保证资源数据库的存储量。进一步:采用网络爬虫的方法爬取所述初始搜索资源中还包括:采用Quartz的开源作业调度框架调度所述网络爬虫,并采用cron表达式设置所述网络爬虫程序中定时爬取所述初始搜索资源的定时任务。上述进一步方案的有益效果是:Quartz的开源作业调度框架简单易用;网络爬虫采用Jsoup,Jsoup能够通过HTML的DOM节点、CSS等快速解析HTML、文本等,使爬虫更加高效,进一步提高资源实时搜索能力和搜索速度;通过cron表达式来自定义定制的网络爬虫定时任务,可以准确实时地搜索到初始搜索资源,从而促进整个资源搜索过程中的高效有序地进行,其中,网络爬虫可采用Jsoup。进一步:对所述初始搜索资源进行资源清洗后,还包括对所述初始搜索资源进行分类,得到所述目标搜索资源。上述进一步方案的有益效果是:通过对资源清洗后的初始搜索资源进行分类,能更方便用户快速获取到需要的资源;例如,可根据资源类型进行划分为图片资源、视频资源等,用户在输入搜索信息时,可对应搜索不同资源类型的搜索资源。进一步:接收所述用户输入的所述搜索信息中还包括:采用词语联想接口提供根据所述搜索信息中的关键字联想获得的联想搜索信息。上述进一步方案的有益效果是:通过词语联想接口,当用户输入搜索信息的一个关键字时,可根据输入的关键字进行词语联想,获得联想搜索信息,例如:高频词汇(当前比较流行或者使用比较多的词语),该联想搜索信息对用户表现出提示功能,用户可以直接选择该联想搜索信息进行搜索,明显可以减少用户繁琐的输入,进一步提高资源搜索效率,还可根据该联想搜索信息的提示输入搜索信息,从而便于更加准确地获取到需要的搜索资源,提高用户的体验度。进一步:将所述目标搜索资源返回至所述用户并显示中还包括:采用findBy方法向所述用户推荐近似搜索资源,且所述近似搜索资源与所述目标搜索资源具有相同属性的关键词。上述进一步方案的有益效果是:当目标搜索资源返回至用户时,用户可选择其中一个目标搜索资源进行查看资源详情,而通过findBy方法,可以直接向用户推荐与该目标搜索资源具有相同属性的关键词的近似搜索资源,用户可根据近似搜索资源进行延伸阅读,方便用户进行获取到更多的相关的搜索资源,用户体验度更高。进一步:将所述目标搜索资源返回至所述用户并显示后还包括:采用分享插件分享所述目标搜索资源;或采用下载插件下载所述目标搜索资源。上述进一步方案的有益效果是:当用户接收并显示目标搜索资源时,可通过分享插件分享给其他用户,或直接通过下载插件下载所需的目标搜索资源,使得不仅仅局限于资源搜索,功能丰富,用户体验感更强,且分享或下载方式简单,操作简单,易于推广。依据本专利技术的另一方面,提供了一种基于Elasticsearch本文档来自技高网
...

【技术保护点】
1.一种基于Elasticsearch的云盘搜索方法,其特征在于,包括以下步骤:接收用户输入的搜索信息,对所述搜索信息进行解析,并根据解析结果生成可识别的搜索命令;基于Elasticsearch搜索方法,根据所述搜索命令获取云盘中与所述搜索信息对应的目标搜索资源并存储;将所述目标搜索资源返回至所述用户并显示。

【技术特征摘要】
1.一种基于Elasticsearch的云盘搜索方法,其特征在于,包括以下步骤:接收用户输入的搜索信息,对所述搜索信息进行解析,并根据解析结果生成可识别的搜索命令;基于Elasticsearch搜索方法,根据所述搜索命令获取云盘中与所述搜索信息对应的目标搜索资源并存储;将所述目标搜索资源返回至所述用户并显示。2.根据权利要求1所述的基于Elasticsearch的云盘搜索方法,其特征在于,获取所述目标搜索资源的具体步骤包括:采用网络爬虫的方法根据所述搜索命令爬取与所述搜索信息对应的初始搜索资源;对所述初始搜索资源进行资源清洗,得到所述目标搜索资源;将所述目标搜索资源存储入资源数据库中,根据所述资源数据库中的所述目标搜索资源生成索引,并根据所述索引将所述目标搜索资源进行同步。3.根据权利要求2所述的基于Elasticsearch的云盘搜索方法,其特征在于,采用网络爬虫的方法爬取所述初始搜索资源中还包括:采用Quartz的开源作业调度框架调度所述网络爬虫,并采用cron表达式设置所述网络爬虫程序中定时爬取所述初始搜索资源的定时任务。4.根据权利要求2所述的基于Elasticsearch的云盘搜索方法,其特征在于,对所述初始搜索资源进行资源清洗后,还包括对所述初始搜索资源进行分类,得到所述目标搜索资源。5.根据权利要求1所述的基于Elasticsearch的云盘搜索方法,其特征在于,接收所述用户输入的所述搜索信息中还包括:采用词语联想接口提供根据所述搜索信息中的关键字联想获得的联想搜索信...

【专利技术属性】
技术研发人员:李纪平田骏余通
申请(专利权)人:湖北工程学院
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1