基于大数据的科技信息资源检索查询系统的制作方法

文档序号:11432302阅读:1210来源:国知局

本发明属于互联网技术中信息查询技术领域,具体涉及一种基于大数据的科技信息资源检索查询系统。



背景技术:

随着信息资源共享的基础设施发展和数字化信息资源的体系构架的逐步形成,开放、互联、便捷、高速运行的信息传递系统,使文献资源的整体开发、交流、利用的深度、广度以及传播的速度正在发生革命性的变化;这为广大的公众特别是科技人员共享科技信息的资源提供了良好的技术与资源保障,同时也存在一些问题:(1)信息知识更新与信息技术的发展存在差距,信息的要求与人的认知发展同步,科技人员对于这些变化认识不足,不能及时的、多角度的、多途径的更新自己的知识结构、提高信息素质,尤其面对网络环境下的信息产生及增长,信息的存储等特点没有深层次的了解,在开发利用科技信息资源方面就会存在认识上的差距,也就无法在网络环境下顺利的获取科技信息;(2)科技信息资源管理呈整体优化复合配置,知识经济时代的文献信息的两大特点:知识不断创新,文献量呈几何级速度爆炸性增长;文献信息的载体向多元化方向发展;尤其是科技信息专业性更强,无论是科技信息资源的开发,还是科技信息资源的使用,都离不开网络技术的支撑;在最大限度发挥网络科技信息资源效益的同时,也造成了网络信息资源的繁杂,不同程度上限制了信息的全面性和准确性,更会因此使获取有价值的信息变得困难;值得科技人员关注的是如何强化对信息化社会的基础设施和知识环境的认知,如何进行信息咨询、检索,提高自己获取信息的能力,如何过滤信息、分析信息、处理信息,提炼有价值的信息为自己的研究服务,也就成为科技人员在网络环境下开发利用科技信息资源在实践上的差距;(3)科技信息资源需求层次智能化程度不断提高,网络环境下用户对信息需求已不在是单一的学科研究信息,这种变化导致用户对信息的需求也从整体需求转向浓缩专深的知识单元,多层次、多元化、多样化、综合化的信息需求特征越来越明显;这种信息需求的个性化、专题化、智能化,也必然会对信息资源的管理、信息存储的方式、信息服务的形式提出更高的要求,能满足某一特定领域或某一特定用户的信息需求,将信息资源保障体系包括功能、信息、技术、制度等要素有机地链接成一个整体,为信息需求组织信息资源及提供可靠的依据,真正享受到个性化服务;科技人员对网络环境下信息资源只有正确认识,才能有效的提高科技信息资源开发利用的主动性,实现网络环境下科技信息资源全方位的共享。

大数据的科技信息资源检索查询系统目前存在着不能满足用户查询所需科技信息资源快速准确定位,无法满足用户进行专业、有效和精准的推送。



技术实现要素:

为解决上述技术问题,本发明提供了一种基于大数据的科技信息资源检索查询系统,其包括以下步骤:

①采集用户数据:服务器端采集用户数据,并上传到服务器上;采集数据包括用户输入的关键词和浏览行为以及个人的基本信息;

②拦截分析处理:系统安全模块对客户端上传的数据进行拦截分析处理并将分析结果反馈给服务器,若为用户恶意行为则进行拦截处理,若为安全行为则执行下一步骤;

③预处理和聚合处理:对用户数据进行预处理和聚合处理,过滤掉一些不完整的数据以及一些垃圾无用数据,并将完整有用数据保存到大数据中;

④行为分析:系统分析模块对用户信息进行分析,提取用户经常浏览的行为信息;

⑤数据检索:数据提取模块利用solr搜索引擎技术,从大数据库中检索出基于分析模块分析出的用户行为相关的科技信息资源;

⑥数据推送:数据推送模块将检索出的信息资源推送给用户;

⑦统计分析:统计分析模块根据用户行为形成用户行为分析报表并推送给用户。

优选地,所述步骤①的基于服务器端的数据采集可以分成主动的服务器采集方式和被动的服务器采集方式;被动的服务器端采集的用户浏览行为数据,主要是通过web服务log文件中记录的客户端http请求的相关信息;也就是说,我们对服务器端的web页面等一些相关的内容不作任何修改,它是目前最常用的用户行为数据的采集方式;这种方法中往往通过从服务器端的web日志文件中,根据用户的ip地址和所使用浏览器情况进行用户识别;主动式的服务器采集中主要采用cookie技术的识别方法;cookie是web服务器上的一段程序代码,它能将自身安装到来访者的客户机中,当客户端向服务器发送请求时,cookie程序会传送此客户机的标识,这样就可以区分出相同ip下不同的计算机。优选地,所述步骤②的恶意行为拦截,在网络服务器根据当前用户终端发起的访问请求进行业务处理时,利用过滤器和拦截器分析当前用户终端发起的访问请求是否为恶意访问,并将分析结果返回给网络服务器,并记录该用户的ip,若为恶意访问则将ip放进黑名单当中。优选地,所述步骤③的数据预处理和聚合处理,首先对用户数据进行分箱处理,分箱方法是一种简单常用的预处理方法,通过考察相邻数据来确定最终值;所谓“分箱”,实际上就是按照属性值划分的子区间,如果一个属性值处于某个子区间范围内,就称把该属性值放进这个子区间所代表的“箱子”内;把待处理的数据按照一定的规则放进一些箱子中,考察每一个箱子中的数据,采用某种方法分别对各个箱子中的数据进行处理。优选地,所述步骤⑤的利用solr搜索引擎从大数据中检索数据,并利用hits算法,hits算法是一种与用户查询主题相关排序算法,考虑了页面的权威性与中心性;具体思想如下:将查询q提交给传统的基于关键字匹配的搜索引擎,搜索引擎返回很多网页,从中取前n个网页作为根集,用s表示;s满足如下3个条件:a.s中网页数量相对较小;b.s中网页大多数是与查询q相关的网页;c.s中网页包含较多的权威网页。

优选地,所述步骤⑥的推送系统,利用websocket技术,在建立连接之后,服务器可以主动传送数据给客户端,减少之前传统项目通过轮询推送的弊端;websocket并不限于以ajax或xhr方式通信,因为ajax技术需要客户端发起请求,而websocket服务器和客户端可以彼此相互推送信息。

本发明具有以下有益效果:

本发明综合利用云计算、大数据及搜索引擎等技术,对实时采集的海量用户实时行为数据,在满足安全的前提下,实现了专业、有效与精准的推送,满足了用户需求。

附图说明

图1是本发明的流程图。

具体实施方式

下面将结合本发明的附图,对本发明的技术方案进行清楚、完整地描述。

基于大数据的科技信息资源检索查询系统,其包括以下步骤:

①采集用户数据:服务器客户端采集用户数据,并上传到服务器上;采集数据包括用户输入的关键词和浏览行为以及个人的基本信息;

②拦截分析处理:系统安全模块对客户端上传的数据进行拦截分析处理并将分析结果反馈给服务器,若为用户恶意行为则进行拦截处理,若为安全行为则执行下一步骤;

③预处理和聚合处理:对用户数据进行预处理和聚合处理,过滤掉一些不完整的数据以及一些垃圾无用数据,并将完整有用数据保存到大数据中;

④行为分析:系统分析模块对用户信息进行分析,提取用户经常浏览的行为信息;

⑤数据检索:数据提取模块利用solr搜索引擎技术,从大数据库中检索出基于分析模块分析出的用户行为相关的科技信息资源;

⑥数据推送:数据推送模块将检索出的信息资源推送给用户;

⑦统计分析:统计分析模块根据用户行为形成用户行为分析报表并推送给用户。

优选地,所述步骤①的基于服务器端的数据采集可以分成主动的服务器采集方式和被动的服务器采集方式;被动的服务器端采集的用户浏览行为数据,主要是通过web服务log文件中记录的客户端http请求的相关信息;也就是说,我们对服务器端的web页面等一些相关的内容不作任何修改,它是目前最常用的用户行为数据的采集方式;这种方法中往往通过从服务器端的web日志文件中,根据用户的ip地址和所使用浏览器情况进行用户识别;主动式的服务器采集中主要采用cookie技术的识别方法;cookie是web服务器上的一段程序代码,它能将自身安装到来访者的客户机中,当客户端向服务器发送请求时,cookie程序会传送此客户机的标识,这样就可以区分出相同ip下不同的计算机。优选地,所述步骤②的恶意行为拦截,在网络服务器根据当前用户终端发起的访问请求进行业务处理时,利用过滤器和拦截器分析当前用户终端发起的访问请求是否为恶意访问,并将分析结果返回给网络服务器,并记录该用户的ip,若为恶意访问则将ip放进黑名单当中。优选地,所述步骤③的数据预处理和聚合处理,首先对用户数据进行分箱处理,分箱方法是一种简单常用的预处理方法,通过考察相邻数据来确定最终值;所谓“分箱”,实际上就是按照属性值划分的子区间,如果一个属性值处于某个子区间范围内,就称把该属性值放进这个子区间所代表的“箱子”内;把待处理的数据按照一定的规则放进一些箱子中,考察每一个箱子中的数据,采用某种方法分别对各个箱子中的数据进行处理。优选地,所述步骤⑤的利用solr搜索引擎从大数据中检索数据,并利用hits算法,hits算法是一种与用户查询主题相关排序算法,考虑了页面的权威性与中心性;具体思想如下:将查询q提交给传统的基于关键字匹配的搜索引擎,搜索引擎返回很多网页,从中取前n个网页作为根集,用s表示;s满足如下3个条件:a.s中网页数量相对较小;b.s中网页大多数是与查询q相关的网页;c.s中网页包含较多的权威网页。

优选地,所述步骤⑥的推送系统,利用websocket技术,在建立连接之后,服务器可以主动传送数据给客户端,减少之前传统项目通过轮询推送的弊端;websocket并不限于以ajax或xhr方式通信,因为ajax技术需要客户端发起请求,而websocket服务器和客户端可以彼此相互推送信息,具体实施如下:

varws=newwebsocket(“ws://localhost:8080”);

ws.onopen=function()

{

console.log(“open”);

ws.send(“hello”);

};

ws.onmessage=function(evt)

{

console.log(evt.data)

};

ws.onclose=function(evt)

{

console.log(“websocketclosed!”);

};

ws.onerror=function(evt)

{

console.log(“websocketerror!”);

}。

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