早几天写的文章那里,对域名的搜索那里 http://kernaling-wong.iteye.com/blog/2212191 ,这几天经过实践,有了新的认识所以想补充一下.
简单说说上个文章表达的,其实就是对域名进行搜索,比如输入it.com ,则不希望出现类似 it.com.cn 这样的域名, 只会搜索出 xxx.it.com 这样的域名.
我上个文章说 把域名进行反转,比如索引 www.it.com 则索引成 moc.ti.www (索引按 solr 说法,不是 onText 而是 string 类型, 按 lucene 说法则是 stringField 而不是 textField 了.) ,然后搜索也反转成这样,最后通过前缀匹配. 则可以满足其要求.
但最近这几天实践,发现这样有一个严重的问题.比如现在有 www.hao123.com 这一个域名, 但我搜索 123.com 其实一样能搜索出来的. 而自己细想了一下,这个的确也是能搜索出来.因为只是匹配而已,并没有识别出是否整体地被匹配了.
所以其实我上个文章写的那种方式就是出现这一个问题了.我后来试想了一个办法.既然可以前缀匹配了,那是不是可以把这一个域名的字段变成 onText 然后按 term 这样子位置整体前缀匹配呢?
1 . www.hao123.com =反转域名后=> moc.321oah.www 然后按 term分词后变成 moc , 321oah ,
2 . 然后我想通过前缀匹配 + 搜索短语,类似搜索语法是 : "moc.321oah.www"*
3. 经过实验和测试,这种方式不行,看来前缀匹配只能匹配每一个 term 但不按类似短语这样子匹配起来.
这几天,一直都忙着这一个事情,又看源码,又找相关资料,这种方式,最后还是不行的.
最后,我的上司建议我通过一种比较取巧的办法,因为现在数据主要还是国内的数据,域名基本上就是 .com.cn , org.cn , net.cn , com.hk 之类几种域名,所以我们在分词那里做一个改动,就是把这类域名的,就作为一个词了 ,即 www.it.com.cn 分词后变成 www , it , com.cn 就这三个,这样就能解决上面的问题了.,而且改动也不大. 在索引的时候,对新的数据,另外开了新一个索引字段,然后 使用了新的分词,旧的字段依然存在,也使用以前 的分词方式,这样就能保证了旧的数据也能搜索出来,新的数据也可以搜索出来了,兼容了新旧数据.
经过前几天, 觉得自己还要非常多地方要学习. 加油吧.
相关推荐
资源名称:相关性搜索 利用Solr与Elasticsearch创建智能应用内容简介:《相关性搜索:利用Solr与Elasticsearch创建智能应用》揭开了相关性搜索的神秘面纱,告诉大家如何将 Elasticsearch与 Solr这样的搜索引擎作为可...
总结,本“Solr 3.5开发应用教程”将引导你从基础安装到实际应用,全面掌握Solr搜索引擎的使用技巧。同时,提供的“教程重要说明.txt”可能包含更多关于实践过程中的注意事项和常见问题的解答,配合“Solr 3.5开发...
在3.5版本中,Solr 已经成为一个成熟的技术,广泛应用于网站的全文检索、商品搜索、文档检索等多个场景。本文将深入探讨 Solr 3.5 的配置及其在实际应用中的关键点。 首先,配置 Solr 3.5 包括以下几个主要步骤: ...
本书揭开了相关性搜索的神秘面纱,告诉大家如何将Elasticsearch 或Solr 这样的搜索引擎作为可编程的相关性框架,从而表达业务排名规则。从这本书中你可学会如何结合各种外部数据源、分类方法以及文本分析手段对...
Solr基于Apache Lucene,它提供了更高级的功能,如集群、分布式搜索、复制和负载均衡,使得Solr更适合大规模、高并发的搜索应用。 1.2.2 Schema(模式) Schema是Solr的核心配置之一,用于定义索引字段、数据类型...
除了基础的配置,Solr还支持高级功能,如 faceting(分面搜索),可以实现对搜索结果的多维度分类;Highlighting(高亮显示),可以突出显示查询关键词在文档中的位置;以及Spell Checking(拼写检查),提供纠错...
### Solr 3.5配置及应用...通过这些步骤,用户可以快速搭建起一个基本的Solr搜索环境,并实现中文分词的支持,这对于初学者来说是非常重要的第一步。随着对Solr更深入的理解,用户还可以探索更多高级特性和应用场景。
在本篇博文中,我们将探讨基于Apache Solr构建的网站索引架构,这是搜索引擎技术中的一个关键组件。Solr是一个开源、高性能的全文检索服务,它允许开发者为大量数据建立索引,从而实现快速的搜索功能。在"基于solr的...
标题中的“Solr in Action -- Apache Solr 在比价系统中的应用”表明本文将深入讨论Apache Solr搜索服务器在比价系统中的实际应用案例。Apache Solr是一个开源的搜索引擎平台,广泛应用于企业级应用中,以提高搜索...
Lucene本质上是搜索库,不是独立的应用程序,而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene不负责支撑搜索服务所必须的管理,而Solr负责。所以说,一句话概括 Solr: Solr是Lucene面向企业...
Solr,全称为Apache Solr,是一款开源的企业级搜索引擎,由Apache软件基金会开发。它能够高效、快速地处理大量文本数据,并提供全文检索、 faceted search(分面搜索)、hit highlighting(高亮显示搜索结果)以及...
Solr,全称为Apache Solr,是Apache软件基金会的一个开源项目,主要用来处理全文搜索和企业级的搜索应用。它基于Java,利用Lucene库构建,提供了高效、可扩展的搜索和导航功能。Solr-9.0.0是该软件的最新版本,此...
ES(ElasticSearch)和Solr都是基于Lucene的搜索引擎,它们各自提供了一套搜索框架,用于实现高效的全文搜索功能。由于两者都是在Apache License 2下开源的,因此在选择使用哪种搜索方案时,需要根据不同的使用场景...
Solr搜索引擎的使用介绍 Solr,全称为Apache Solr,是Apache软件基金会的一个开源项目,基于Java开发,是一款高效、灵活且强大的全文检索服务引擎。它构建在Lucene库之上,提供了更高级别的企业级搜索功能,如...
Solr在乐龄易购网站中的应用主要集中在提升搜索效率,优化用户体验方面。Solr是一款由Apache基金会开发的全文搜索引擎,具有快速、可扩展、高度定制化的特点,尤其适合处理大量数据的检索需求。 首先,文章指出乐龄...
Solr服务器是Apache Lucene项目的一个子项目,是一款开源的企业级搜索平台,专门用于处理大量文本数据的全文检索、搜索和分析。它基于Java开发,能够处理多种数据源,包括XML、JSON、CSV等,提供了高效、可扩展的...