`
zw1502071
  • 浏览: 6920 次
社区版块
存档分类
最新评论

lucene 基于ftp等其他文件系统创建索引和搜索索引的支持

阅读更多

最近几天公司要求使用Lucene将索引文件创建到ftp上,查询时也从ftp上的索引文件进行取数据,开始在网上搜了很多,发现了一篇文章是说这个的,但是把其中的代码复制了还有问题并且也不行,文章最后说的源代码也找不到,联系了作者也没有回应,不过文章说得还算清楚,把大概的原理进行了阐述,其中主要为:

      继承Directory类并参照FSDirectory类进行改造,本地磁盘文件采用的就是FSDirectory类实现的,现在采用Apache的一个项目Commons-VFS来解决将索引文件创建到ftp服务器上的问题,可以到comms-VFS的官网了解使用需要哪些jar包,以及对那些文件系统给予了支持。

以ftp为例:

1、需要jar包:

需要common-net-x-x.jar包和common-logging-x.jar还有commons-vfs本身的jar包commons-vfs-2.0.zip中的jar包commons-vfs2-2.0.jar

2、API使用例子,获取FileObject,类似于本地磁盘的File类一样

 

FileSystemManager fsManager = VFS.getManager();FileObject jarFile = fsManager.resolveFile("jar:lib/aJarFile.jar");

 

其中红色部分为URI,改为ftp的URI即可,现在为jar的URI

格式为:URI Format

ftp://[ username[: password]@] hostname[: port][ absolute-path]

Examples

  • ftp://myusername:mypassword@somehost/pub/downloads/somefile.tgz

3、利用commons-net包中ToNetASCIIOutputStream中write方法写到ftp上的文件,根据ip、port、相对路径

写到本地磁盘采用native方法写

 

需要修改jar中对于RANDOM_ACCESS_WRITE的支持.

 

 

分享到:
评论

相关推荐

    ftp站内搜索引擎系统源码

    它定义了客户端和服务器之间交互的规则,包括如何登录、列出目录、上传和下载文件等。 2. **搜索引擎原理**: 站内搜索引擎主要基于全文检索技术,包括索引建立、查询解析和结果排序等步骤。首先,系统会遍历FTP...

    搜索引擎Lucene+Heritrix(第二版)5

    1. **分词和索引**:Lucene首先对文本进行分词,生成一系列的关键词,然后创建倒排索引,使得搜索时能快速定位到包含特定关键词的文档。 2. **高效查询**:通过倒排索引,Lucene可以在微秒级别内完成复杂查询,包括...

    搜索引擎Lucene+Heritrix(第二版)3

    《搜索引擎Lucene+Heritrix(第二版)3》是一本深入探讨搜索引擎技术的专业书籍,主要聚焦于两个关键组件:Apache Lucene和Heritrix。Lucene是Java开发的全文检索库,而Heritrix是一款开源的网络爬虫工具。这两者在...

    饮水思源BBS和渔网FTP

    "饮水思源BBS和渔网FTP"是一个学习资源,主要涵盖了两个方面:基于Lucene的BBS(Bulletin Board System,电子公告板)搜索引擎和FTP(File Transfer Protocol,文件传输协议)搜索引擎。这个资源对于想要了解和入门...

    基于asp.net新闻发布系统

    总结,基于ASP.NET的新闻发布系统结合了ASP.NET的Web开发优势和C#的编程灵活性,实现了新闻的发布、展示和搜索等一系列功能。在实际开发过程中,还需要考虑系统的性能优化、安全性防护以及用户体验等多个方面,以...

    heritrixProject.rar

    由于lib库部分未包含在这个压缩包中,你需要从其他来源下载Heritrix和Lucene的库文件。这些库通常包含了运行项目所必需的类和方法,包括网络通信、解析HTML、构建索引等。确保获取的版本与代码示例兼容,否则可能会...

    骆卫华-利用开源工具构造小型搜索引擎

    - **信息检索的技术过程**:讲解信息单元的标引、标引表达式的组织和索引文件等。 - **检索表达式及其制定**:解释检索表达式的概念、布尔检索技术、检索模型的概念过程等。 - **扩展布尔检索技术**:如截词检索、...

    sorl的安装与配置详解.pdf

    Solr是一种基于Lucene的开源搜索服务器,它提供了一个分布式索引引擎和搜索引擎API,允许用户在应用中实现强大的全文搜索功能。在技术文档《sorl的安装与配置详解.pdf》中,详细介绍了如何在CentOS 7操作系统上安装...

    elasticsearch-head-master.tar.gz

    它基于Lucene构建,提供了一个分布式、多用户环境,支持RESTful接口,便于进行数据索引、查询和分析。Elasticsearch的核心特性包括: 1. 分布式:支持跨多个节点的数据分布,能自动处理节点间的通信和数据复制,...

    curl + data.zip

    Elasticsearch 是一个基于Lucene的分布式全文搜索引擎,设计用于实时、可扩展的数据存储和搜索。它不仅支持结构化数据,也支持非结构化数据的处理,如日志、文档等。在大数据和实时分析领域,Elasticsearch因其高...

    JAVA上百实例源码以及开源项目源代码

    FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上...

    alfresco4.0部署及分离solr

    - 同样,调整其他服务端口,如FTP和RMI,以保持网络服务的清晰性 ### 6. 设置Solr分离部署 - 安装单独的Solr服务器,解压并配置Solr的Alfresco核心 - 更新Alfresco的`alfresco-global.properties`文件,指定新的...

    java开源包1

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包11

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包2

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包3

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包6

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包5

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包10

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

    java开源包4

    AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器 j2wap j2wap 是一个基于Java的WAP浏览器,目前处于BETA测试阶段。它支持WAP 1.2规范,除了WTLS 和WBMP。 Java注册表操作类 jared jared是...

Global site tag (gtag.js) - Google Analytics