当前位置:编程学习 > JAVA >>

开源自主研发搜索引擎,单机400万网页,任意50词以内检索不超过20毫秒

开源:完全自主研发搜索引擎1.0源代码及说明,单机400万网页全文索引,任意50词以内的检索不超过 20毫秒















搜索引擎1.0源代码、相关说明、下载地址如下:

1、Bwsyq.Search.Demo
    进行检索,就是常说的搜索引擎网站。提供检索服务。
    目前实现了:按关键词进行检索,实现了动态摘要、关键词高亮显示、自动分页、每页显示条目可自定义(默认每页显示10条检索结果)
    未实现功能:相关搜索关键词条显示、按相关度进行排序、快照、网页标题、采集时间、网页URL、并行集群检索
            其中:快照、网页标题、采集时间、网页URL 可根据实际情况自行实现
                  相关搜索关键词条显示、按相关度进行排序、并行集群检索 将在下一版提供
2、Bwsyq.Search.Index
    进行索引,就是常说的全文索引。
    
3、DemoDoc 目录中的 3500个txt文档是用来做索引测试的文档。测试的使用请放置在:D:\index\DemoDoc 也可根据实际情况在代码中修改  

4、index 目录中的.idx 文件是测试建立的索引文件。 测试的使用请放置在:D:\index\index 目录,也可根据事情情况修改配置文件
    
5、注意事项:
   A、目前索引存储路径是 D:\index\index\ 可在配置文件中根据实际情况对配置文件“App.config、Web.config”进行修改
      <KeyInfo Key="SEARCHIDX" Value="D:\index\index\"/>
   B、索引所需词库存储路径是 D:\index\  App_Data  可在配置文件中根据实际情况对配置文件“App.config”进行修改
   <KeyInfo Key="PhysicaPath" Value="D:\index\"/>  修改后将 App_Data文件夹及其中的文件全部拷贝到对应目录即可
   C、检索所需词库存存储路径是 网站项目中的 App_Data 目录,无须修改
   D、BwsyqIndex.dll 是核心库,采用C语言开发,可存放在system32目录,或项目运行的目录bin或release目录中。
   
6、目前提供的版本是2.0版,有如下性能指标:    
   A、单机可索引400万网页、
   B、普通PC: AMD 2.0、 7200转硬盘、2G内存每4分钟可索引1000页(已经做了html parse)的文本
   C、经实际测试任意50词以内的检索,检索运算不超过 20毫秒
   D、检索速度不会因为索引的多少而发生任何变化,索引速度也不会因为文档多少或文档大小而变慢
   E、开发工具VS2008,测试环境 windos7 + CPU(AMD 2.0)、 5400转300G硬盘、2G内存
   注:本版本单机索引限制在 400万网页,超过将不在执行索引。
   
7、本版本截止开发周期业余时间不到 3个周末和3个周日,期间还感冒了一周,所以有很多不完善的地方,请大家多指正。
   我会尽快根据大家提供的建议进行改善并提供改进后的新版本。
   
8、本软件完全属于本人自主创作,完全没有任何借鉴和第三方代码,您可以放心的用于学习和商业用途。

下载地址1:http://www.everbox.com/f/xkdvEM3eyrwYXp9yG4d2b7aawZ
下载地址2:http://www.everbox.com/f/xO8NFbNyW5frP5SXSlaTzNdDIf
下载地址3:http://www.everbox.com/f/XcC7HMzMD7PXRKkNZKEVLfLcEK
下载地址4:http://www.everbox.com/f/WXFsqChwLTbLmX2P6gQuQy1z51
下载地址5:http://www.everbox.com/f/Bi9izWoxroLcn9mBs3N2S4PBeG
下载地址6:http://www.everbox.com/f/Tf3XzMdLVXDcX233qirYPTkMvr

版权所有:未经许可不得转载,有任何疑问请与我本人联系 QQ 99923309 Mail:bwsyq@bwsyq.com 更多详情>> --------------------编程问答-------------------- 沙发。。。。。。。。。 --------------------编程问答-------------------- 收藏,学习! --------------------编程问答-------------------- 为什么源代码有200多M啊 --------------------编程问答-------------------- 看效果,比那个啥啥研究院的 人民搜索要好 --------------------编程问答-------------------- 开发工具 VS2008 ???? --------------------编程问答-------------------- asp?? --------------------编程问答-------------------- 看效果还比较专业 --------------------编程问答-------------------- 楼主牛b~ --------------------编程问答-------------------- 没有相关度排序还不能说是一个真正的搜索引擎

实际上最麻烦也最微妙的部分就在这里

不过6天弄出这样一个作品也很厉害了哦,楼主加油 --------------------编程问答-------------------- 未使用任何数据库 --------------------编程问答-------------------- 没搞过类似的,看起来不错 --------------------编程问答-------------------- --------------------编程问答-------------------- 从效果图看,很不专业。 --------------------编程问答-------------------- 我做测试的时候,单机检索3000万网页,任意(50词)以内的搜索不超过50毫秒,担心大家说我吹牛,所以先开放一个400万网页的索引搜索代码,给大家观摩观摩! 

希望各位专家批评指正,多提宝贵意见,谢谢! --------------------编程问答-------------------- 牛xxxx! --------------------编程问答-------------------- UP!!!!!! --------------------编程问答-------------------- 收藏,慢慢研究 --------------------编程问答-------------------- 不错,鼓励一个 --------------------编程问答-------------------- 楼主太有才了  --------------------编程问答-------------------- 楼主厉害,学习了! --------------------编程问答-------------------- 有追求 --------------------编程问答-------------------- 支持开源 --------------------编程问答-------------------- 下一个看看 --------------------编程问答-------------------- 看看再说 --------------------编程问答-------------------- 有意思 --------------------编程问答-------------------- 说的不是速度,而是功能。
1.搜索分词策略是很讲究的,不是拆开几个单词那么简单。
2.分词之后,搜索时还应该能反映出内容关系密度的强弱排序。
。。。
其它细节不用多说,单看搜索结果里的URL就没有被足够重视,而事实上,URL恰恰是最重要的搜索对象之一。一个命名为“不及格通知”的URL,即使里面的内容写得再委婉,一句“不及格通知”都没有出现,它也是“不及格通知”。

任何东西,首先是功能,其次是性能,功能都不全或不完善,性能也就失去意义了。 --------------------编程问答-------------------- mark学习 --------------------编程问答-------------------- 六天就搞出来啦,太牛叉了 --------------------编程问答-------------------- 先鼓励一下

没有下载,只是看截图。你的测试用例都是.txt?而且貌似都是相同的 --------------------编程问答--------------------
引用 29 楼 shine333 的回复:
先鼓励一下

没有下载,只是看截图。你的测试用例都是.txt?而且貌似都是相同的

你要仔细看,不是相同的

开源:完全自主研发搜索引擎1.0源代码及说明,单机400

万网页,任意50词以内的检索不超过 20毫秒

开源:基于百万商业圈.NET开发框架开发的并行带分词的

采集器

百万商业圈 .NET 开发框架2.0及开发框架API说明书

(BWFW)(含并行计算及中英文分词功能)

分享一点代码(小型C web开发框架),用C语言实现的一

个WEB 文件上传(含全部源代码)一


天心天字辈ERP全部PDK源代码到了我手上的后果 - 超越天心之WEB天云

大家看看我的BS的甘特图排程做的如何? 无刷新Ajax甘特

图 展示生产排程结果 演示

软件工程概述 - 企业架构 - IT企业做大做强之根本 - 之

我见

实践检验得出的真理:asp.net 项目在 linux mono上编译

需要修改的只有 3个地方

给大家漏一手本人亲自精心撰写的通用ajax框架,完全兼容 

IE FireFox各个版本!(附完整源码及完整范例)

开发了一个中文分词服务器(C语言开发+词库+源代码),最

大特色可以让javascript来调用!

用纯C语言写了一个HtmlParse(网页分析器)外带采集功能

,大小只有200K(免费+开源+操作示意图)
--------------------编程问答-------------------- 我的问题的重点,不在于相同,而在于.txt --------------------编程问答-------------------- 精神上大力支持LZ --------------------编程问答-------------------- 下载了文件,50M左右居然解压很久这应该改进(个人认为),但是还是支持这种精神的。膜拜! --------------------编程问答--------------------
引用 31 楼 shine333 的回复:
我的问题的重点,不在于相同,而在于.txt


您的意思是应该支持索引其他格式的文档,对吗?
如果是的话,我可以在下一个版本中进行改进。
另外非常感谢您的指正,谢谢! --------------------编程问答-------------------- 后台核心是lucene吗? --------------------编程问答--------------------
引用 35 楼 lin1658 的回复:
后台核心是lucene吗?

不是lucene,是我自己完全自主研发的索引算法 --------------------编程问答-------------------- mark,支持一下 --------------------编程问答-------------------- 在完善完善就更好了 --------------------编程问答-------------------- 沙发,学习,学习 --------------------编程问答-------------------- --------------------编程问答-------------------- 楼主还是比较强悍的,支持 --------------------编程问答-------------------- 自己以前也写过一个网络爬虫.现在搞这个意义不大,尤其是asp.net --------------------编程问答-------------------- 之前在灌水区就见了 
4分钟 1000个网页 不知道你的html页面有多大 有没有包含ajax请求的内容
以前做实验 解析本地html文件 在40W个文件左右时htmlparse就报内存错误 源码级
后改用jsonp 问题解决

其实简单的抓取 和索引都不复杂 主要是相关度排序的算法复杂
支持楼主分享的态度~
--------------------编程问答-------------------- Mark , up , learning... --------------------编程问答-------------------- enjoy --------------------编程问答-------------------- 支持楼主分享的态度~ --------------------编程问答-------------------- 不知道你们在说什么,先鼓励再说 --------------------编程问答-------------------- 小子很猛,鸭梨很大 --------------------编程问答-------------------- 感觉不错。、 --------------------编程问答-------------------- 楼主厉害 --------------------编程问答-------------------- 学习一下,谢谢楼主!
引用楼主  的回复:
开源:完全自主研发搜索引擎1.0源代码及说明,单机400万网页全文索引,任意50词以内的检索不超过 20毫秒















搜索引擎1.0源代码、相关说明、下载地址如下:

1、Bwsyq.Search.Demo
  进行检索,就是常说的搜索引擎网站。提供检索服务。
  目前实现了:按关键词进行检索,实现了动态摘要、关键词高亮显示、自动分页、……
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,