全文检索(SOLR)前端应用浅析续 LWE-CORE分析-阿里云开发者社区

开发者社区> 开发与运维> 正文

全文检索(SOLR)前端应用浅析续 LWE-CORE分析

简介: 上一篇对Lucid的应用简要进行了介绍,现在对LWE-CORE分析一下 lucidworks enterprise可以免费使用,但不开源,了解一下这个的结构对于基于SOLR的应用有很大的帮助,lucidworks enterprise基于SOLR的应用叫LWE-CORE 上一篇 全文检索(SOLR)前端应用浅析 http://www.

上一篇对Lucid的应用简要进行了介绍,现在对LWE-CORE分析一下

lucidworks enterprise可以免费使用,但不开源,了解一下这个的结构对于基于SOLR的应用有很大的帮助,lucidworks enterprise基于SOLR的应用叫LWE-CORE

上一篇 全文检索(SOLR)前端应用浅析 http://www.cnblogs.com/2018/archive/2011/07/29/2121519.html

启动、停止

start.bat中的

start "LucidWorks LWE-Core" /B "%JVM%" %JAVA_OPTS% %APP_OPTS% %JAVA_MEMORY_OPTS% %JETTY_OPTS% %MISC_OPTS% %MISC_OPTS2% -Djetty.home=jetty -jar jetty/start.jar 1>>

./logs/core-stdout.log 2>>./logs/core-stderr.log

这个是使用Jetty启动Web程序,默认在8888端口提供SOLR的服务,这个服务上提供:

Ø 基于SOLR规范本身的接口:如http://127.0.0.1:8888/solr/collection1/select/?q=NickChase, 这个接口在SOLR的文档有详细定义,在Lucid中Lucid query parser替换了原有的SOLR解析以体现更好的效果和应用

Ø SOLR的WEB界面: http://localhost:8888/solr/

Lucid封装增强的系列REST 服务API:如http://localhost:8888/api/collections/collection1/datasources , REST API最重要的作用是控制和监视数据源和索引

停止程序就是关闭Jetty

SOLR WEB程序分析

在安装目录的lwe-core下:

lwe-core\doc:是Lucid的文档内容

lwe-core\solr:是SOLR自带的JSP程序,可以在Web界面使用

lwe-core\WEB-INF\: 网站需要的基础文件,其中lib\lucidworks-1.8-1127.jar 实现了扩展,包括RestAPI

        web.xml中通过com.lucid.servlet.LWEServletModule实现了REST[google-guice:Google公司的Bob lee开发的轻量级IoC容器]

具体关联的SOLR索引设置和数据

solr\cores\collection** 是对应的不同数据的索引和设置区

conf: solrconfig.xml schema.xml fieldtypes.xml等是SOLR使用的配置文件,具体的语法和SOLR的一致

data: 具体的数据源的索引区域

 

lwe-core\WEB-INF\lib下其他主要的关联文件:

元数据抽取

aperture-core aperture-tools-demork

http://aperture.sourceforge.net/ Aperture is a Java framework for extracting and querying full-text content and metadata from various information systems (e.g. file systems, web sites, mail boxes) and the file formats (e.g. documents, images) occurring in these systems.

多种数据格式文字获取tika

Tika是一个内容抽取的工具集合(a toolkit for text extracting)。它集成了POI, Pdfbox 并且为文本抽取工作提供了一个统一的界面。

PDF - 通过Pdfbox

MS-* - 通过POI

HTML - 使用nekohtml将不规范的html整理成为xhtml

OpenOffice 格式 - Tika提供

Archive - zip, tar, gzip, bzip等

RTF - Tika提供

Java class - Class解析由ASM完成

Image - 只支持图像的元数据抽取

XML

涉及不同格式的处理包:

pdfbox-1.1.0 fontbox-1.1.0

poi-3.7-20100617171931

poi-ooxml-3.7-20100617171931 poi-ooxml-schemas-3.7-20100617171931 poi-scratchpad-3.7-20100617171931

htmlparser-1.6.bundle.jar

metadata-extractor-2.4.0-beta1.bundle

判断文本文件编码的有用工具

juniversalchardet

quartz-1.8.4

Quartz 是个开放源码项目,提供了丰富的作业调度集。

查看数据索引情况Luke

Luke\ luke.bat

对于已经索引的数据,可以使用这个工具查看索引的情况,包括各种信息,也是开源工具

总结

有了以上的信息,我们实现一个类似的方案如下:

1、 直接使用LWE-CORE,这样在这个服务上实现定制界面就是一个定制化的系统;或者直接使用这个方案,这样界面和服务都有[当然需要遵守这个软件的范围约束]

2、 参考上面的方法实现一个基于SOLR的新应用,毕竟很多的应用不用处理这么多的文件类型的索引

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章