[转载]开源搜索引擎 Iveely Search Engine 0.1.0 的发布

[转载]开源搜索引擎 Iveely Search Engine 0.1.0 的发布 – Iveely Liu – 博客园.

一直热爱搜索引擎事业,但是它现在并不是我工作。你也许会 问,Iveely是什么?Iveely 是I void everything,enjoy loving you的首字母缩写,表达我对搜索引擎的热爱。目前发布的是0.1.0版本,是一个基本版本,包含了无数的Bugs,您可以在 http://iveelyse.codeplex.com/上 下载源码,任何一个改动的源码,您都可以下载到。但是,当您下载源码后,也许您会痛骂我一顿,这是什么源码,能看懂吗?乱七八糟的,当您有这样的想法的时 候,请原谅我,这些东西都是我业余开发,不足之处,定然数不胜数,但我相信,终有一天您也会感叹,原来并没有那么糟糕。所有源码的开放,都是为了知识的共 享,如果您有好的想法和建议,可以发送邮件至我:liufanping@iveely.com,如果您想参与进来,贡献您的代码,请联系我,一起为社区, 为开源做出点点奉献。

        上图是Iveely Search Engine 0.1.0版本的截图,目前只有文本搜索部分,其余的新闻、视频等还没有完全做好,主要是统一的存储模型没有找到。下面大致说一个项目的基础结构:

       

上面主要分为三大块,刚好对应着Iveely搜索引擎中的三个运行步骤(当您下载程序后的运行方式就是按照上面上个步骤来的)。

1. 找到发布文件夹下的IveelySE.Spider.exe 文件,然后输入你需要爬行的链接。这是A搜索部分。
2 . 当爬行完毕之后,找到文件夹下的IveelySE.Index.exe 然后运行,直到结束。即完成索引。这是B整理部分。
3. 此刻你只需要,运行另外一个文件IveelySE.exe你就可以执行搜索了。搜索的界面你需要部署WebSite的网站,即可。或者你不想这样的话,你 在不运行IveelySE.exe的情况下,直接运行Iveely.Search.exe 可在本地执行搜索。 这是C服务部分。

下面介绍一下整个解决方案中,各个项目的含义。

“IveelySE”, “IveelySE\IveelySE.csproj”, 是搜索服务建立部分,搜索的入口是从这里开始的。

“IveelySE.AI”, “IveelySE.AI\IveelySE.AI.csproj”, 搜索的人工智能部分,类似于专家系统。例如输入101+90=?就是通过这个项目计算出来的。

“IveelySE.Classify”, “IveelySE.Classify\IveelySE.Classify.csproj”,是搜索引擎中文本分类(聚类)的实现部分。

“IveelySE.Common”, “IveelySE.Common\IveelySE.Common.csproj”,是搜索引擎中共用部分的提取。

“IveelySE.Config”, “IveelySE.Config\IveelySE.Config.csproj”, 是搜索引擎中的配置部分,尽可能的配置在这个项目中实现。

“IveelySE.Grammar”, “IveelySE.Grammar\IveelySE.Grammar.csproj”, 是搜索引擎中的语法分析部分,例如:site、filetype等等。

“IveelySE.Index”, “IveelySE.Index\IveelySE.Index.csproj”, 是搜索引擎中的索引部分,原数据的整理主要在这里实现,倒排序等也是。

“IveelySE.Liquidate”, “IveelySE.Liquidate\IveelySE.Liquidate.csproj”,是语言处理部分,例如停用词过滤、敏感词等等的处理。

“IveelySE.Segment”, “IveelySE.Segment\IveelySE.Segment.csproj”, ISE中的分词部分,包含词库分词和隐马尔可夫分词。

“IveelySE.Server”, “IveelySE.Server\IveelySE.Server.csproj”, ISE中关于网络通信传输部分。

“IveelySE.Spider”, “IveelySE.Spider\IveelySE.Spider.csproj”, 这是网络爬虫,即数据搜集部分。

“IveelySE.IDFS”, “IveelySE.IDFS\IveelySE.IDFS.csproj”, 这是分布式文件系统部分,包括MapReduce的实现都将在此(此版本无效)。

“IveelySE.BigData”, “IveelySE.BigData\IveelySE.BigData.csproj”, 这是大数据处理部分(此版本无效)。

“IveelySE.BigData.Common”, “IveelySE.BigData.Common\IveelySE.BigData.Common.csproj”, 大数据处理的共同引用部分(此版本无效)。

“IveelySE.BigData.FileSystem”, “IveelySE.BigData.FileSystem\IveelySE.BigData.FileSystem.csproj”,大数据处理的虚拟文件系统(此版本无效)。

“IveelySE.BigData.MasterNode”, “IveelySE.BigData.MasterNode\IveelySE.BigData.MasterNode.csproj”, 大数据存储的主节点部分(此版本无效)。

“IveelySE.BigData.StoreNode”, “IveelySE.BigData.StoreNode\IveelySE.BigData.StoreNode.csproj”, 大数据存储的子节点部分(此版本无效)。

“IveelySE.Search”, “IveelySE.Search\IveelySE.Search.csproj”, 搜索的本地实现部分,无需Web,只要用于内部调试。

“IveelySE.Web”, “IveelySE.Web\IveelySE.Web.csproj”,搜索的Web端实现,界面采用ask的界面。

这 是Iveely Search Engine的大致一个介绍,当然,IveelySE一定没有你想象中的那么好,因为目前处于0.1.0低版本阶段 ,无数的错误或者Bugs一定会让大 家崩溃,但是请您放心,我们(更多的热爱开源事业的人士)会积极的修改其中的Bug,当然项目中也参杂了其它开源项目的东西,例如:Html分析采用的是 HtmlAgilityPack。希望和更多地朋友一起分享我们的快乐。谢谢大家!项目地址:http://iveelyse.codeplex.com/

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏