`
jiuyuehe
  • 浏览: 184248 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

基于solr 4.0 的二次开发方案

阅读更多
     基于solr4.0 对分布式搜索服务的支持与优化。我也没做太多参考就选择了solr4.0
     关于solr的使用,入门,实战之类的网上资料很多。推荐是wiki 将的比较详细点。国内的太陈旧。
     对与solr 的二次开发方案,网上也一些资料。大部分思路如下:
    
  • 写一个代理proxy bean 用来设置搜索条件
  • 或是通过反射 将 solrInputDocument 与 bean 关联
  • 。。。。。。



看来看去跟我的需求都不是太符合。

作为一个二次开发者,我们是给系统开发者提供一个更加简单的接口,让他们非常轻松的使用solr 并且不需要关心solr 的一切配置。这是我对这次二次开发的理解。

上述的方案可行,但是有局限性,如果是二次开发者一个人使用还好,如果需要给其他开发者去使用的话,人家入手还是需要一点理解的。因为他要去修改schame.xml里面的东西,schame里面的配置又是相当抽象的。

那么是否可以这样:每一个开发者都编写一个相应xxx.xml放入相应的模块、项目下,然后schame.xml Xinclude 进来。他们可以公用分词器

其实这等于没说,还是一样需要去理解solr 的配置,唯一的好处是不需要不需要去动服务器的schame.xml 而且solr配置是否支持Xinclude 还是个问题。

不行那就换一种:
[color=red]schema.xml 里面提供了动态配置。按其约定*_xx,进行通配。
那我们只需要约定 一下索引字段的规则即可,例如:总共分为String,double,int date,然后怎么去选分词器。等等。。。
这里约定好了,那么就是bean 跟Document 之间的转化了。最好不要去转化,但是可以使用
 public class MyDoc extends SolrDocument 

这样类似的解决,因为solrInputDocument 开发出来的方法很少,而且一目了然,直接给他换个名字就ok[/color]

但是有Query 里面是必须要进行修改的。按照这种简单替换的方案不行,因为query 开发的方法非常多,而且逻辑复杂,不符合我们的要求,那怎么去修改呢??我也还没想好
欢迎大家拍砖讨论
0
14
分享到:
评论

相关推荐

    Solr 4.0 源代码实例

    Solr 4.0 是Apache Lucene项目的一个子项目,是一个高性能、全文本搜索服务器,为企业级数据提供强大的搜索功能。源代码实例是学习Solr内部工作原理和自定义功能的关键资源,尤其对于开发者而言,深入理解源码有助于...

    大数据Solr二次开发.pdf

    本文档主要针对Solr的二次开发进行深入探讨,旨在帮助开发者了解如何在现有基础上进行定制化开发,以满足特定的业务需求。 首先,开发环境的准备至关重要。在进行Solr二次开发之前,你需要确保拥有正确的开发工具和...

    solr4二次开发文档

    【Solr4 二次开发文档】的概述 Solr4 是一个基于 Lucene Java 的开源搜索服务器,提供了丰富的搜索功能,如层面搜索、命中醒目显示和多种输出格式支持。其特点是易于集成到Web应用,拥有直观的HTTP管理界面,并具备...

    基于Solr的企业级信息检索的设计与实现

    Solr是Apache基金会下的一个开源项目,它基于Lucene全文检索工具包,提供了更为高级且可定制的企业级搜索解决方案。Solr用Java语言编写,能够支持分布式搜索和索引,具备高度的灵活性和可扩展性,适用于处理大量结构...

    基于Solr的多表join查询加速方法

    Solr,全称为Apache Solr,是一款开源的全文搜索引擎,被广泛应用于企业级搜索解决方案中。它基于Lucene库,提供了高效、可扩展的搜索和分析能力。在处理多表join查询时,传统的关系型数据库如MySQL等通常能很好地...

    基于Solr的搜索引擎研究与实现

    基于Solr的搜索引擎研究与实现,讲述了solr技术的原理及其应用等等

    人工智能-项目实践-信息检索-基于solr的构件检索与推荐系统 web端应用

    基于solr的构件检索与推荐系统 web端应用 构建步骤 # install dependencies npm install # serve with hot reload at localhost:8080 npm run dev # build for production with minification npm run build

    基于Solr的搜索引擎的设计与实现

    基于Solr的搜索引擎的设计与实现

    基于solr的网站索引架构(一)

    在本篇博文中,我们将探讨基于Apache Solr构建的网站索引架构,这是搜索引擎技术中的一个关键组件。Solr是一个开源、高性能的全文检索服务,它允许开发者为大量数据建立索引,从而实现快速的搜索功能。在"基于solr的...

    一个基于Solr的新闻搜索引擎

    系统开发环境:Eclipse 开发语言:Java ...说明:一个基于Solr的搜索引擎,由Spring+SpringMVC框架搭建,通过Solr服务器对MySql数据库表进行索引和检索,数据库中数据爬取自于上述三个网站的部分内容,有待优化。

    基于Solr的分布式铁路科技资源整合与检索实践.pdf

    文章进一步探讨了数据资源整合的方案选型,包括自主开发索引工具、基于Lucene封装实现信息索引、调用第三方API以及基于Solr和Compass+Lucene进行信息索引的几种主要应用模式。其中,基于Solr实现信息索引的模式被...

    基于Solr的海量日志信息查询性能优化的研究

    随着传统互联网和移动互联网的持续发展,网络带给我们的...目前一些搜索公司在公共互联网领域提供了很好的解决方案,但是企业或者政府机关内部相关信息往往需要应用独立的搜索系统,Solr Cloud则是很好的一个平台选择。

    人工智能-项目实践-搜索引擎-基于solr的中文搜索引擎框架

    标题中的“人工智能-项目实践-搜索引擎-基于solr的中文搜索引擎框架”揭示了这个压缩包文件包含的内容主要是关于人工智能领域的一个具体项目实践,这个实践聚焦于搜索引擎的构建,且是针对中文文本的。Solr,作为...

    apache-solr-4.0.0-ALPHA-src.gz官方包

    总之,通过分析"apache-solr-4.0.0-ALPHA-src.gz"源代码,开发者不仅可以深入理解Solr的工作机制,还可以获取到进行二次开发所需的底层知识。这将对提升开发者的技能水平和解决实际问题的能力大有裨益。

    基于Solr的分布式全文检索系统的研究与实现.pdf

    Solr作为系统的核心,是一个基于Java开发的企业级搜索应用服务器,它是Apache Lucene的子项目,旨在提供强大的搜索引擎功能。Solr能够通过其索引处理模块,在多台计算机节点上并行创建索引,显著提升了索引的构建...

Global site tag (gtag.js) - Google Analytics