CN106611000A - 一种检索资源对象的方法、装置和系统 - Google Patents
一种检索资源对象的方法、装置和系统 Download PDFInfo
- Publication number
- CN106611000A CN106611000A CN201510701298.3A CN201510701298A CN106611000A CN 106611000 A CN106611000 A CN 106611000A CN 201510701298 A CN201510701298 A CN 201510701298A CN 106611000 A CN106611000 A CN 106611000A
- Authority
- CN
- China
- Prior art keywords
- resource object
- search
- retrieval
- resource
- server
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种检索资源对象的方法、装置和系统,方法包括:接收客户端发送的资源对象检索请求,请求中携带检索条件;将检索条件发送给搜索服务器;接收搜索服务器返回的检索结果判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID,当检索结果为满足检索条件的资源对象唯一标识ID时,将资源对象唯一标识ID发送给存储服务器;接收存储服务器返回的与资源对象唯一标识ID对应的资源对象;将资源对象返回给客户端。本发明技术方案首先利用搜索服务器检索出资源对象唯一标识ID,然后利用存储服务器查找符合唯一标识ID的资源对象,分工合作,两个主体各自承担的查找任务较少,提高了资源对象的检索性能和检索效率。
Description
技术领域
本发明涉及网络技术领域,具体涉及一种检索资源对象的方法、装置和系统。
背景技术
近年来,网络监控系统已被大部分企业所使用。随着电信行业和互联网行业的发展,网络监控系统在网络应用中的地位越来越重要。强有力的监控和诊断可以帮助运行维护人员快速地检索到网络中的设备,及时了解设备的运行情况,分析出应用故障原因。
现有技术的资源对象检索方案之一:将资源对象存储在关系型数据库中,根据用户输入的检索条件,通过结构化查询语言(Structured Query Language,简称SQL)语句直接查询关系型数据库来得到查询结果,将查询结果界面展示给用户。然而这种方式下,随着数据量的不断增加,检索效率会不断降低,从而影响页面响应速度。
现有技术的资源对象检索方案之二:将监控系统抓取的资源对象数据保存到监控系统的缓存中,根据用户输入的检索条件,逐条从缓存中比对资源对象,以过滤出符合检索条件的资源对象;将检索出的资源对象界面展示给用户。这种方式在数据量不断增加时,需要不断加大内存,并且需要根据检索条件对每一个资源对象进行逐条比对,影响检索性能。
由上可知,随着资源对象数据量的不断增大,现有技术的资源对象的检索效率不断降低,页面响应时间越来越慢,用户体验差。
发明内容
本发明提供了一种检索资源对象的方法、装置和系统,以解决现有技术方案存在的检索效率低,用户体验差的问题。
根据本发明的一个方面,提供了一种检索资源对象的方法,该方法包括:
接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
将所述检索条件发送给搜索服务器;
接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给存储服务器;
接收所述存储服务器返回的与所述资源对象唯一标识ID对应的资源对象;
将所述资源对象返回给所述客户端。
可选地,在接收客户端发送的携带检索条件的资源对象检索请求之前,该方法还包括:
抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
可选地,所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述将所述检索条件发送给搜索服务器包括:
将所述检索条件转换成符合所述Solr搜索服务器检索要求的检索式;
通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
可选地,所述方法还包括:
当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
根据本发明的另一个方面,提供了一种检索资源对象的装置,所述装置包括:
检索请求接收单元,用于接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
检索条件发送单元,用于将所述检索条件发送给搜索服务器;
检索结果判断单元,用于接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
资源对象ID发送单元,用于当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象的唯一标识ID发送给存储服务器;
资源对象接收单元,用于接收所述存储服务器返回的与所述资源对象的唯一标识ID对应的资源对象;
资源对象返回单元,用于将所述资源对象返回给所述客户端。
可选地,所述装置还包括:
资源对象创建单元,用于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
可选地,所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述检索条件发送单元,具体用于将所述检索请求中的检索条件转换成符合所述Solr搜索服务器检索要求的检索式;通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
可选地,所述装置还包括:
空值提示单元,用于当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
根据本发明的再一个方面,提供了一种检索资源对象的系统,该系统包括如上所述的检索资源对象的装置,搜索服务器以及存储服务器;
所述检索资源对象的装置,适于接收客户端发送的检索请求,所述资源对象检索请求中携带有资源对象的检索条件,将所述检索条件发送给所述搜索服务器;
所述搜索服务器,适于接收所述检索条件,并根据所述检索条件返回相应的检索结果;
所述检索资源对象的装置,还适于接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID,当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给所述存储服务器;
所述存储服务器,适于接收检索资源对象的装置发送的所述资源对象唯一标识ID,根据所述资源对象唯一标识ID找到与所述资源对象唯一标识ID对应的资源对象,将所述资源对象发送给所述检索资源对象的装置;
所述检索资源对象的装置,还适于接收所述存储服务器发送的资源对象,将所述资源对象返回给所述客户端。
可选地,所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述检索资源对象的装置,还适于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID,将所述资源对象发送给所述Solr搜索服务器;
所述Solr搜索服务器,还适于从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
所述Redis存储服务器,还适于建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
本发明的有益效果是:本发明实施例的技术方案将资源对象ID作为资源对象唯一标识,通过搜索服务器建立资源对象ID与检索条件的索引,并将资源对象存储到存储服务器中,实现索引与资源对象的拆分;在检索时首先通过检索条件快速检索到资源对象ID,然后通过资源对象ID实现资源对象的快速定位,以减少资源对象的检索时间。本发明的技术方案在数据量不断增大的情况下,只需利用搜索服务器根据检索条件检索资源对象ID,只需利用存储服务器根据资源对象ID检索资源对象,分工合作,两个主体各自承担的查找任务较少,从而能够快速查找到符合要求的资源对象返回客户端,提高检索性能,避免了直接通过SQL语句在庞大的关系数据库中查找资源对象时效率低的缺陷,同时也避免了将大量的资源对象数据放在内存中,加剧了监控系统资源紧张、影响检索性能的问题,提高了用户使用体验。
附图说明
图1是本发明一个实施例的一种检索资源对象的方法的流程图;
图2是本发明一个实施例的检索资源对象的装置的框图;
图3是本发明一个实施例的检索资源对象的流程图;
图4是本发明一个实施例的检索资源对象的系统的示意图。
具体实施方式
本发明的核心思想是:针对现有技术方案中检索资源对象效率低的问题,提出了一种检索资源对象的方法,该方法利用每个资源对象的唯一标识ID,由搜索服务器根据检索条件,查找满足检索条件的资源对象唯一标识ID,返回给监控系统,监控系统再将收到的资源对象唯一标识ID发送给存储服务器去检索对应的资源对象并返回,这样由于搜索服务器只需要根据监控系统发送的检索条件搜索资源对象唯一标识ID,存储服务器只需要根据监控系统发送的资源对象唯一标识ID检索对应的资源对象,分工合作,从而快速的检索出需要的资源对象,显著提高了资源对象的检索性能。
图1是本发明一个实施例的一种检索资源对象的方法的流程图,参见图1,该检索资源对象的方法包括:
S11,接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
S12,将所述检索条件发送给搜索服务器;
S13,接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
S14,当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给存储服务器;
S15,接收所述存储服务器返回的与所述资源对象唯一标识ID对应的资源对象;
S16,将所述资源对象返回给所述客户端。
经过图1所示的步骤,本发明一个实施例的这种检索资源对象的方法,在检索资源对象时,采用搜索服务器检索资源对象的唯一标识ID,并通过存储服务器根据资源对象的唯一标识ID定位出资源对象,由于利用搜索服务器和存储服务器分工合作,各自承担的检索任务相对较轻从而在数据量不断增加的情况下依然能够快速的检索出符合要求的资源对象,提高页面的响应速度和用户满意度。
在本发明的一个实施例中,图1所示的方法在S11,在接收客户端发送的携带检索条件的资源对象检索请求之前,还包括:
抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系并以Key-value键值对的格式存储,其中键key为所述资源对象唯一标识ID,值value为所述资源对象。
具体的,图1所示方法的执行主体为一个监控系统,这个监控系统会实时监控,当发现一个新的设备需要监控时,抓取该设备的资源数据,并创建一个资源对象记录该设备的资源数据,且为该资源对象分配一个ID(唯一标识)。即在监控系统中,一个设备对应一个资源对象,每个资源对象都有一个ID以区分于其他资源对象。
一方面,监控系统创建了资源对象后,将该资源对象发送给搜索服务器,以配置资源对象ID的检索属性,创建资源对象的索引。
另一方面,监控系统会把记录设备资源数据的资源对象以及资源对象ID发送给存储服务器,存储服务器按照key-value的存储格式把资源对象ID和资源对象映射存储起来,即资源对象ID-资源对象。
在本发明的一个实施例中,图1所示的方法中所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述将所述检索条件发送给搜索服务器包括:
将所述检索条件转换成符合所述Solr搜索服务器检索要求的检索式;
通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
Redis存储服务器是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的应用程序编程接口API(Application Programming Interface)。Redis是一个高性能的key-value数据库,Redis的出现很大程度补偿了同类key-value数据库存储的不足,在部分场合可以对关系数据库起到很好的补充作用。Redis支持各种不同方式的排序。为了保证效率,Redis中的数据都是缓存在内存中,周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步,数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器,这使得Redis可执行单层树复制,同步对读取操作的可扩展性和数据冗余很有帮助。
Solr是一个独立的搜索应用服务器,它对外提供类似于Web-service的应用程序编程接口API。它的主要特性包括:高效、灵活的缓存功能,垂直搜索功能,高亮显示搜索结果,通过索引复制来提高可用性,Solr支持多种输出格式(包括XML/XSLT和JSON格式),易于安装和配置,提供基于Web的管理界面。
本实施例中,采用Solr服务器作为搜索服务器,接收监控系统发送的资源对象数据,并根据配置文件配置资源对象的检索属性,创建资源对象ID的索引。具体的,Solr搜索服务器配置能够查找到资源对象ID的字段(即索引字段)的检索属性为真。在一个资源对象的多个字段中,选取部分字段设置这些选中字段(即索引字段)的stored="false",indexed="true",indexed属性表示字段是否需要被索引,stored属性表示字段内容是否需要被返回;也就是说,这些被选择作为索引的字段仅用于搜索,而不用于实际返回。并且,Solr搜索服务器将资源对象唯一标识ID字段设置为stored="true",indexed="false",即资源对象唯一标识ID仅用于返回,不用于搜索。
一个具体的示例为:Solr搜索服务器收到了一个包括如下5个字段的资源对象:资源对象ID,IP地址,资源名称,描述信息,系统名称;Solr搜索服务器选取IP地址以及系统名称这两个字段,并将这两个字段的stored属性设为假,indexed属性设为真。当用户输入一个检索条件是IP地址时(如查找IP=192.168.),Solr搜索服务器将接收到的检索条件与资源对象ID的索引即IP地址这个字段进行匹配,如果满足检索条件,则将这个IP地址字段所在的资源对象ID返回。
通过这种方式,Solr搜索服务器只选取部分字段作为资源对象ID的索引,不需要设置全部字段为索引,从而达到了最佳的索引大小和搜索性能。
需要说明的是,上述示例只是一个示意性说明,在实际应用中,资源对象包括的字段通常很多,不止5个,这样在数据量不断增大时,Solr搜索服务器的这种选取部分字段为资源对象ID配置索引方式的有益效果更加突出,也更加节省检索时间。此外,Solr搜索服务器可以根据历史搜索记录数据从每个资源对象中选取感兴趣的字段设置为索引字段,Solr搜索服务器具体选取哪些字段配置为资源对象ID的索引是现有技术,可以采用现有技术中的算法来实现,对此不作限制。
在本实施例中用户输入的检索条件可以精确的也可以是模糊的,根据不同的检索条件,Solr搜索服务器检索的资源对象ID可能是一个也可能是多个,并且当用户输入的检索条件有误时,Solr搜索服务器返回的资源对象ID也可能是空值。因此,监控系统需要对Solr搜索服务器返回的检索结果进行判断。如果返回的检索结果是满足检索条件的资源对象ID时,才将资源对象ID发送给存储服务器进行查找,如果检索结果是没找到符合检索条件的资源对象ID时,不需要再去存储服务器中进一步查找,这样就节省了再去存储服务器中查找资源对象的时间。
在本发明的一个实施例中,图1所示的方法中当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
具体的,Solr搜索服务器根据输入的检索条件,并根据检索条件与资源对象ID的索引进行匹配后发现没有符合要求的资源对象ID,这时Solr搜索服务器会返回一个空的资源对象ID,即资源对象ID为空值,监控系统收到空的资源对象ID时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息,以提示用户及时检查或更换检索条件。
图2是本发明一个实施例的检索资源对象的装置的框图;参见图2,该检索资源对象的装置20,包括:
检索请求接收单元201,用于接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
检索条件发送单元202,用于将所述检索条件发送给搜索服务器;
检索结果判断单元203,用于接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
资源对象ID发送单元204,用于当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象的唯一标识ID发送给存储服务器;
资源对象接收单元205,用于接收所述存储服务器返回的与所述资源对象的唯一标识ID对应的资源对象;
资源对象返回单元206,用于将所述资源对象返回给所述客户端。
本实施例中,检索资源对象的装置20还包括:
资源对象创建单元,用于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系并以Key-value键值对的格式存储,其中键key为所述资源对象唯一标识ID,值value为所述资源对象。
在本实施例中,所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述检索条件发送单元,具体用于将所述检索请求中的检索条件转换成符合所述Solr搜索服务器检索要求的检索式;通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
在本实施例中,检索资源对象的装置20还包括:
空值提示单元,用于当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
需要说明的是,本发明一个实施例中检索资源对象的装置是一个监控系统,而该检索资源对象的装置的工作过程示意如下:
图3是本发明一个实施例的检索资源对象的流程图;参见图3,
流程开始:
1)、发起资源对象检索请求
客户端想了解某台设备或主机的资源对象信息,可在客户端页面输入IP地址或其他检索条件,向检索资源对象的装置(即监控系统)发送检索设备资源对象的请求(请求中包含检索条件);
2)、获取资源对象检索请求
检索资源对象的装置接收到客户端发来的资源对象检索请求后,会将接收到的检索信息转换成Solr检索形式:检索条件1:*值*AND检索条件2:*值*……例如:IP地址:*192.168.AND系统名称:*Linux;这里客户端输入了两个检索条件,并且两个检索条件之间是逻辑和的关系,查找出既满足IP地址又满足系统名称这一检索条件的资源对象,其中Solr检索式中的符号*表示模糊匹配。
3)、向Solr服务发送检索请求
检索资源对象的装置通过超文本传输协议HTTP请求将转换后的Solr检索式发送到Solr搜索服务器;
4)、Solr搜索服务器获取检索请求
Solr搜索服务器接收到检索资源对象的装置发送的HTTP请求之前,先在检索资源对象的装置与Solr搜索服务器之间建立通信连接,并在连接建立后,再接收检索资源对象的装置发送的HTTP检索请求;
5)、获取资源对象ID
Solr搜索服务器接收到包含检索条件的HTTP检索请求后,会根据检索条件以及资源对象ID索引设置好的stored、indexed属性信息去索引库中查找匹配的资源对象ID,这样可快速检索出资源对象ID,然后Solr搜索服务器会将检索结果返回给检索资源对象的装置;
6)、向Redis存储服务器发送请求
检索资源对象的装置接收到Solr服务器返回的资源对象ID后进行判断,如果资源对象ID为空,表示没有检索到相关的资源对象,会直接返回给客户端没有记录的提示信息,这样就节省了再去Redis存储服务器中查找资源对象的时间;如果资源对象ID不为空,则会继续向Redis存储服务器发送请求,将资源对象ID信息发送给Redis存储服务器;
7)、Redis存储服务器获取发送请求
Redis存储服务器接收到检索资源对象的装置发送的请求之前,先在检索资源对象的装置与Redis服务器之间建立通信连接,再接收检索资源对象的装置发送的资源对象ID;
8)、Redis服务器获取资源对象
Redis存储服务器接收到资源对象ID后,根据资源对象ID所对应的key快速定位到value资源对象,然后将资源对象信息直接返回给检索资源对象的装置;
9)、检索资源对象的装置获取资源对象
检索资源对象的装置从Redis存储服务器获取到资源对象,将检索结果返回给客户端。
流程结束。
需要说明的是,检索资源对象的装置20与Solr搜索服务器之间的通信连接、检索资源对象的装置20与Redis存储服务器之间的通信连接,在完成相应的请求发送后可以根据实际使用场景关闭,并在每次通信前建立连接。或者,根据使用需要,当检索资源对象的装置20和Solr搜索服务器/Redis存储服务器需要频繁通信时,可以在一次通信连接建立后保持一段时间以方便通信。
另外,本实施例中的检索资源对象的装置20是和前述的检索资源对象的方法的操作步骤相对应的,因此,检索资源对象的装置20的更详细的工作过程可以前面的检索资源对象的方法部分的相应描述,在此不再赘述。
图4是本发明一个实施例的检索资源对象的系统的示意图;参见图4,该检索资源对象的系统40包括:前述检索资源对象的装置20,以及搜索服务器401,存储服务器402;
检索资源对象的装置20,适于接收客户端发送的检索请求,所述资源对象检索请求中携带有资源对象的检索条件,将所述检索条件发送给所述搜索服务器401;
搜索服务器401,适于接收所述检索条件,并根据所述检索条件返回相应的检索结果;
检索资源对象的装置20,还适于接收所述搜索服务器401返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID,当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给所述存储服务器402;
存储服务器402,适于接收检索资源对象的装置20发送的所述资源对象唯一标识ID,根据所述资源对象唯一标识ID找到与所述资源对象唯一标识ID对应的资源对象,将所述资源对象发送给所述检索资源对象的装置20;
检索资源对象的装置20,还适于接收所述存储服务器402发送的资源对象,将所述资源对象返回给所述客户端。
在本实施例中,搜索服务器401为Solr搜索服务器;
存储服务器402为Redis存储服务器;
检索资源对象的装置20,还适于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID,将所述资源对象发送给所述Solr搜索服务器401;
Solr搜索服务器401,还适于从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
Redis存储服务器402,还适于建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系,并以Key-value键值对的格式存储,其中键key为所述资源对象唯一标识ID,值value为所述资源对象。
具体的,检索资源对象的装置20接收用户在客户端输入并由客户端发送的检索条件(检索条件包含在客户端向检索资源对象的装置20发送的检索资源对象请求中);
检索资源对象的装置20将检索条件发送给Solr搜索服务器401,Solr搜索服务器401根据配置的资源对象ID的索引查找相应的资源对象ID,并返回检索结果给检索资源对象的装置20;
检索资源对象的装置20判断接收到的检索结果,并在检索结果为满足检索条件的资源对象ID时,将资源对象ID发送给Redis存储服务器402,Redis存储服务器402根据资源对象ID查找对应的资源对象,并将资源对象返回给检索资源对象的装置20;
检索资源对象的装置20收到Redis存储服务器402返回的资源对象后将检索结果发送给客户端,由客户端将检索结果展示给用户;当检索资源对象的装置20收到多个资源对象时,可以列表的形式记录多个资源对象。
综上所述,本发明实施例的技术方案将资源对象ID作为资源对象唯一标识,通过搜索服务器建立资源对象ID与检索条件的索引,并将资源对象存储到存储服务器中,实现索引与资源对象的拆分;在检索时首先通过检索条件快速检索到资源对象ID,然后通过资源对象ID实现资源对象的快速定位,以减少资源对象的检索时间。本发明的技术方案在数据量不断增大的情况下,只需利用搜索服务器根据检索条件检索资源对象ID,只需利用存储服务器根据资源对象ID检索资源对象,分工合作,两个主体各自承担的查找任务较少,从而能够快速查找到符合要求的资源对象返回客户端,提高检索性能,避免了直接通过SQL语句在庞大的关系数据库中查找资源对象时效率低的缺陷,同时也避免了将大量的资源对象数据放在内存中,加剧了监控系统资源紧张、影响检索性能的问题,提高了用户使用体验。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种检索资源对象的方法,其特征在于,所述方法包括:
接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
将所述检索条件发送给搜索服务器;
接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给存储服务器;
接收所述存储服务器返回的与所述资源对象唯一标识ID对应的资源对象;
将所述资源对象返回给所述客户端。
2.如权利要求1所述的方法,其特征在于,在接收客户端发送的携带检索条件的资源对象检索请求之前,该方法还包括:
抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
3.如权利要求2所述的方法,其特征在于,
所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述将所述检索条件发送给搜索服务器包括:
将所述检索条件转换成符合所述Solr搜索服务器检索要求的检索式;
通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
4.如权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
5.一种检索资源对象的装置,其特征在于,所述装置包括:
检索请求接收单元,用于接收客户端发送的资源对象检索请求,所述资源对象检索请求中携带有资源对象的检索条件;
检索条件发送单元,用于将所述检索条件发送给搜索服务器;
检索结果判断单元,用于接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID;
资源对象ID发送单元,用于当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象的唯一标识ID发送给存储服务器;
资源对象接收单元,用于接收所述存储服务器返回的与所述资源对象的唯一标识ID对应的资源对象;
资源对象返回单元,用于将所述资源对象返回给所述客户端。
6.如权利要求5所述的装置,其特征在于,所述装置还包括:
资源对象创建单元,用于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID;
将所述资源对象发送给搜索服务器,使得所述搜索服务器从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;以及,将所述资源对象发送给存储服务器,使得所述存储服务器建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
7.如权利要求6所述的装置,其特征在于,
所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述检索条件发送单元,具体用于将所述检索请求中的检索条件转换成符合所述Solr搜索服务器检索要求的检索式;通过超文本传输协议HTTP请求将转换后的所述检索式发送给所述Solr搜索服务器。
8.如权利要求5-7中任一项所述的装置,其特征在于,所述装置还包括:
空值提示单元,用于当所述检索结果为空值时,直接向所述客户端返回没有满足检索条件的资源对象的提示信息。
9.一种检索资源对象的系统,其特征在于,所述系统包括搜索服务器,存储服务器以及权利要求5-8中任一项所述的检索资源对象的装置;
所述检索资源对象的装置,适于接收客户端发送的检索请求,所述资源对象检索请求中携带有资源对象的检索条件,将所述检索条件发送给所述搜索服务器;
所述搜索服务器,适于接收所述检索条件,并根据所述检索条件返回相应的检索结果;
所述检索资源对象的装置,还适于接收所述搜索服务器返回的检索结果,判断所述检索结果是空值还是满足所述检索条件的资源对象唯一标识ID,当所述检索结果为满足所述检索条件的资源对象唯一标识ID时,将所述资源对象唯一标识ID发送给所述存储服务器;
所述存储服务器,适于接收所述检索资源对象的装置发送的所述资源对象唯一标识ID,根据所述资源对象唯一标识ID找到与所述资源对象唯一标识ID对应的资源对象,将所述资源对象发送给所述检索资源对象的装置;
所述检索资源对象的装置,还适于接收所述存储服务器发送的资源对象,将所述资源对象返回给所述客户端。
10.如权利要求9所述的检索资源对象的系统,其特征在于,
所述搜索服务器为Solr搜索服务器;
所述存储服务器为Redis存储服务器;
所述检索资源对象的装置,还适于抓取设备的资源数据,为所述资源数据创建资源对象,并为每个资源对象分配唯一标识ID,将所述资源对象发送给所述Solr搜索服务器;
所述Solr搜索服务器,还适于从所述资源对象中选取预定数量的字段,配置所述预定数量的字段的检索属性并创建资源对象唯一标识ID与所述预定数量的字段的检索属性间的索引;
所述Redis存储服务器,还适于建立所述资源对象唯一标识ID与所述资源对象之间的一一映射关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701298.3A CN106611000A (zh) | 2015-10-26 | 2015-10-26 | 一种检索资源对象的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510701298.3A CN106611000A (zh) | 2015-10-26 | 2015-10-26 | 一种检索资源对象的方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106611000A true CN106611000A (zh) | 2017-05-03 |
Family
ID=58612402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510701298.3A Pending CN106611000A (zh) | 2015-10-26 | 2015-10-26 | 一种检索资源对象的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106611000A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446313A (zh) * | 2018-02-06 | 2018-08-24 | 北京极智感科技有限公司 | 一种数据格式转换方法和装置 |
CN108668160A (zh) * | 2018-04-23 | 2018-10-16 | 武汉斗鱼网络科技有限公司 | 节奏弹幕展示方法、装置及电子设备 |
CN109063215A (zh) * | 2018-10-16 | 2018-12-21 | 成都四方伟业软件股份有限公司 | 数据检索方法及装置 |
CN109308326A (zh) * | 2018-09-14 | 2019-02-05 | 中国科学院上海高等研究院 | 基于redis的遥感图像检索提取方法、系统、存储介质及装置 |
CN109672716A (zh) * | 2018-09-18 | 2019-04-23 | 平安科技(深圳)有限公司 | 网络设备的监控方法、装置、设备及存储介质 |
CN109815261A (zh) * | 2018-12-11 | 2019-05-28 | 北京荣之联科技股份有限公司 | 全局搜索功能实现及数据实时同步方法、装置及电子设备 |
CN111223533A (zh) * | 2019-12-24 | 2020-06-02 | 深圳市联影医疗数据服务有限公司 | 一种医疗数据检索方法及系统 |
CN112579897A (zh) * | 2020-12-16 | 2021-03-30 | 北京百度网讯科技有限公司 | 信息搜索方法和装置 |
CN113268624A (zh) * | 2020-02-17 | 2021-08-17 | 北京沃东天骏信息技术有限公司 | 针对图片的处理方法、服务器以及电子设备和介质 |
CN115114361A (zh) * | 2022-06-25 | 2022-09-27 | 上海道客网络科技有限公司 | 一种基于容器云平台统一接口的资源检索方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216837A (zh) * | 2008-01-18 | 2008-07-09 | 索意互动(北京)信息技术有限公司 | 基于匹配用户个性化配置来显示搜索结果的方法和系统 |
CN102200979A (zh) * | 2010-03-26 | 2011-09-28 | 上海市浦东科技信息中心 | 一种分布式并行信息检索系统及其方法 |
CN103581230A (zh) * | 2012-07-26 | 2014-02-12 | 深圳市腾讯计算机系统有限公司 | 文件传输系统和方法、接收端、发送端 |
CN104408177A (zh) * | 2014-12-15 | 2015-03-11 | 西安电子科技大学 | 基于云文档系统的密文检索方法 |
CN104424325A (zh) * | 2013-09-10 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 数据查询方法和装置 |
-
2015
- 2015-10-26 CN CN201510701298.3A patent/CN106611000A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101216837A (zh) * | 2008-01-18 | 2008-07-09 | 索意互动(北京)信息技术有限公司 | 基于匹配用户个性化配置来显示搜索结果的方法和系统 |
CN102200979A (zh) * | 2010-03-26 | 2011-09-28 | 上海市浦东科技信息中心 | 一种分布式并行信息检索系统及其方法 |
CN103581230A (zh) * | 2012-07-26 | 2014-02-12 | 深圳市腾讯计算机系统有限公司 | 文件传输系统和方法、接收端、发送端 |
CN104424325A (zh) * | 2013-09-10 | 2015-03-18 | 阿里巴巴集团控股有限公司 | 数据查询方法和装置 |
CN104408177A (zh) * | 2014-12-15 | 2015-03-11 | 西安电子科技大学 | 基于云文档系统的密文检索方法 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446313A (zh) * | 2018-02-06 | 2018-08-24 | 北京极智感科技有限公司 | 一种数据格式转换方法和装置 |
CN108668160A (zh) * | 2018-04-23 | 2018-10-16 | 武汉斗鱼网络科技有限公司 | 节奏弹幕展示方法、装置及电子设备 |
CN108668160B (zh) * | 2018-04-23 | 2020-12-15 | 武汉斗鱼网络科技有限公司 | 节奏弹幕展示方法、装置及电子设备 |
CN109308326A (zh) * | 2018-09-14 | 2019-02-05 | 中国科学院上海高等研究院 | 基于redis的遥感图像检索提取方法、系统、存储介质及装置 |
CN109672716B (zh) * | 2018-09-18 | 2022-02-01 | 平安科技(深圳)有限公司 | 网络设备的监控方法、装置、设备及存储介质 |
CN109672716A (zh) * | 2018-09-18 | 2019-04-23 | 平安科技(深圳)有限公司 | 网络设备的监控方法、装置、设备及存储介质 |
CN109063215A (zh) * | 2018-10-16 | 2018-12-21 | 成都四方伟业软件股份有限公司 | 数据检索方法及装置 |
CN109815261A (zh) * | 2018-12-11 | 2019-05-28 | 北京荣之联科技股份有限公司 | 全局搜索功能实现及数据实时同步方法、装置及电子设备 |
CN111223533A (zh) * | 2019-12-24 | 2020-06-02 | 深圳市联影医疗数据服务有限公司 | 一种医疗数据检索方法及系统 |
CN111223533B (zh) * | 2019-12-24 | 2024-02-13 | 深圳市联影医疗数据服务有限公司 | 一种医疗数据检索方法及系统 |
CN113268624A (zh) * | 2020-02-17 | 2021-08-17 | 北京沃东天骏信息技术有限公司 | 针对图片的处理方法、服务器以及电子设备和介质 |
CN112579897A (zh) * | 2020-12-16 | 2021-03-30 | 北京百度网讯科技有限公司 | 信息搜索方法和装置 |
CN112579897B (zh) * | 2020-12-16 | 2023-07-28 | 北京百度网讯科技有限公司 | 信息搜索方法和装置 |
CN115114361A (zh) * | 2022-06-25 | 2022-09-27 | 上海道客网络科技有限公司 | 一种基于容器云平台统一接口的资源检索方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106611000A (zh) | 一种检索资源对象的方法、装置和系统 | |
US11829330B2 (en) | Log data extraction from data chunks of an isolated execution environment | |
US11269872B1 (en) | Intent-based natural language processing system | |
US7290061B2 (en) | System and method for internet content collaboration | |
US7596533B2 (en) | Personalized multi-service computer environment | |
US9197597B2 (en) | RDF object type and reification in the database | |
US7877726B2 (en) | Semantic system for integrating software components | |
US20040187111A1 (en) | Content management portal and method for communicating media content | |
US7925641B2 (en) | Indexing web content of a runtime version of a web page | |
US20200372007A1 (en) | Trace and span sampling and analysis for instrumented software | |
US20040167896A1 (en) | Content management portal and method for communicating information | |
KR101004576B1 (ko) | 연쇄 발견 웹 서비스 | |
US8806345B2 (en) | Information exchange using generic data streams | |
EP2182448A1 (en) | Federated configuration data management | |
US8620724B2 (en) | Integration framework for enterprise content management systems | |
US20080154906A1 (en) | Selecting information for ad hoc exchange | |
US11755531B1 (en) | System and method for storage of data utilizing a persistent queue | |
US11494395B2 (en) | Creating dashboards for viewing data in a data storage system based on natural language requests | |
US7765203B2 (en) | Implicit context collection and processing | |
US11461408B1 (en) | Location-based object identification and data visualization | |
CN109284435A (zh) | 面向互联网的用户交互痕迹捕获、存储和检索的系统及方法 | |
US20040167905A1 (en) | Content management portal and method for managing digital assets | |
CN107665237A (zh) | 数据结构分类装置、非结构化数据的发布订阅系统及方法 | |
US20070050394A1 (en) | Method and apparatus for automated database creation from Web Services Description Language (WSDL) | |
US20040117434A1 (en) | System and method for merging, filtering and rating peer-solicited information |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170503 |