全文检索(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的新应用,毕竟很多的应用不用处理这么多的文件类型的索引

目录
打赏
0
0
0
0
9
分享
相关文章
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
208 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
AI程序员:通义灵码 2.0应用VScode前端开发深度体验,在软件开发领域,人工智能技术的融入正深刻改变着程序员的工作方式。通义灵码 2.0 作为一款先进的 AI 编程助手,与广受欢迎的代码编辑器 Visual Studio Code(VScode)相结合,为前端开发带来了全新的可能性。本文将详细分享通义灵码 2.0 在 VScode 前端开发环境中的深度使用体验。
214 2
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
219 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
详解智能编码在前端研发的创新应用
接下来,人与智能体的交互将变得更为紧密,比如 N 年以后是否可以逐渐过渡。这个逐渐过渡的过程实际上是温和的,从依赖人类到依赖超大规模算力的转变,可能会取代我们的一些职责。这不仅仅是简单的叠加关系。对于AI和超大规模算力,这是否意味着我们可以大幅度提升软件质量,是否可以缩短研发周期并提高效率,还有创造出更优质的软件并持续发展,这无疑是肯定的。
196 25
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
72 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
智能编码在前端研发的创新应用
在前端开发领域,智能编码技术正引领一场变革,通过大模型的强大能力将自然语言需求直接转化为高效、可靠的代码实现。
159 10
详解智能编码在前端研发的创新应用 | 领通义灵码蛇年红包封面
详解智能编码在前端研发的创新应用 | 领通义灵码蛇年红包封面
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。
488 14
前端大模型应用笔记(一):两个指令反过来说大模型就理解不了啦?或许该让第三者插足啦 -通过引入中间LLM预处理用户输入以提高多任务处理能力
本文探讨了在多任务处理场景下,自然语言指令解析的困境及解决方案。通过增加一个LLM解析层,将复杂的指令拆解为多个明确的步骤,明确操作类型与对象识别,处理任务依赖关系,并将自然语言转化为具体的工具命令,从而提高指令解析的准确性和执行效率。
175 6