eaglet

本博专注于基于微软技术的搜索相关技术
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Hubble.Net 全文数据库开源项目

 

项目简介

Hubble.Net 全文数据库开源项目是一个建立在 .net 框架基础上的由中国程序员主导的全文数据检索开源项目。项目旨在为全文检索开发者或用户提供一个简单易用、高性能、高可用性的全文数据库中间件。Hubble.Net的骨干版本提供最基本的全文检索接口和界面,并被设计为高度可扩展的系统架构,以吸引众多的开发者参与进系统扩展功能的研发和推广,最终形成一套较为完整的全文检索解决方案。

 

项目名称由来

项目名称 Hubble 取自美国著名天文学家哈勃,也是目前最大的太空望远镜的名字。希望该项目可以帮助搜索引擎搜索到宇宙中的任何角落。(名称的象征性意义,美好愿望吧,能否实现还要依赖科技的发展)

 

项目发起人

Eaglet

 

软件架构

 


 

2008年 11月8日更改


 

更改原因:

本来打算在Lucene.Net 基础上做,后来对Lucene.Net进行了一些测试,发现其算法在处理诸如

元数据的范围查询,元数据的排序,通配符匹配等方面存在很大缺陷,不但效率低下,而且查询数量上

也有限制,默认只能查询2000条记录。这离商业化应用的要求相去甚远,最后还是决定放弃Lucene.Net。

增加一个Hublle.Core 模块,这个模板实现最核心的索引算法,用以替代Lucene.Net。

 

本项目被划分为如下几个大的模块

  • Hubble.Framework 该模块为整个系统提供一些底层类库支持

 

  • Hubble.Analyzer 该模块是一个全文分词模块,为全文检索提供分词方面的支持

 

  • Hubble.Cache 该模块为全文检索提供缓存支持

 

  • Hubble.Data 该模块是整个系统中最主要的模块,该模块细分为如下子模块

  • Hublle.Core 模块,这个模板实现最核心的索引算法,用以替代Lucene.Net。

 

 

 

·        Hubble.Data.SFQL 该模块提供结构化全文查询语言的解析,为全文检索提供一个类似SQL 的结构化查询接口

·        Hubble.Data.Ling 该模块提供Linq 查询接口

·        Hubble.Data.Adapter 该模块为全文检索适配层,对不同版本的Lucene.Net进行适配,也可以为未来更好的全文检索组件进行适配。

·        Hubble.Data.Mapping 该模块提供对其它数据源的映射,通过这个模块,可以将关系数据库等其它数据源映射到全文数据库中,并提供关联查询,以充分发挥全文数据库和关系型数据库的各自优势。

·        Hubble.Data.Distributing 该模块提供高性能分布式全文检索的支持。

 

 

开源协议

Apache Licence 2.0

 

项目相关资源

项目位置

http://www.codeplex.com/HubbleDotNet  已经发布部分代码

 

https://sourceforge.net/projects/hubbledotnet/

目前暂时是空的

 

讨论群组 http://space.cnblogs.com/group/search/

 

团队博客 http://space.cnblogs.com/group/search/


 

参与方式

非常欢迎对这个项目感兴趣的朋友参与到这个项目中来。参与方式多种多样。你可以:

 

  • 参与项目的相关讨论
  • 参与扩展功能的开发
  • 参与软件的使用和测试
  • 参与项目的推广和应用
  • 参与编写相关文档或撰写相关文章
  • 参与翻译相关文档或文章
  • 在电脑前给大家加油