上图是Iveely Search Engine 0.1.0版本的截图,目前只有文本搜索部分,其余的新闻、视频等还没有完全做好,主要是统一的存储模型没有找到。下面大致说一个项目的基础结构:
上面主要分为三大块,刚好对应着Iveely搜索引擎中的三个运行步骤(当您下载程序后的运行方式就是按照上面上个步骤来的)。
下面介绍一下整个解决方案中,各个项目的含义。
"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/