搜索引擎+B2B平台+SNS网站=?, 一个三不像网站。偏偏投资人需要这样一个三不像网站。从4月份开始组建团队。时间一瞬2个月过去了。做B2B需要的就是大工作量和时间,而做搜索引擎光分词这块就搞的头大。在此结合开源数据写个一二,已备后用。

搜索引擎需要的就是数据,抓取海量数据、然后存储、分析、建立索引、计算,最终根据用户需求快速检索出结果。存储分析和建立索引的过程开源项目中有个Hadoop是不二之选。这里分析的不是hadoop,而是搜索引擎中最后一步,也是至关重要的一步:中文分词。因为程序员基本是写java为主,故在考虑搜索引擎时,就采用了搜索领域影响颇深的基于纯java语言开发的Nutch搜索引擎。搜索引擎处理英文文档时,几乎不需要特殊的加工处理,英文文档本身就是以词为单位的组织,词个词之间是靠空格或标点符号显式地表示词的边界。我们采用的庖丁解牛正是为中文的分词提供了技术基础。首先,用wget下载了细胞词库,哇,太棒了,数据大的惊人。加上paoding自带的22M词库,基本可以满足我们词典库。

第一步是建立两个文件,在nutch目录的src/plugin目录下建立两个文件夹分别命名为analysis-zh,lib-paoding-analyzers。然后在这两个文件夹下建立plugin.xml和build.xml。
analysis-zh文件夹下plugin.xml内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<plugin />
.......
</target>

最后就可以用 ant进行编译了,编译后的结果测试:http://www.huisou.com
编译后把\nutch-1.0\build下出现的analysis-zh和lib-paoding-analyzers两文件夹复制到\nutch-1.0\plugins下面,删掉里面的classes和test文件。并把\nutch-1.0\src\plugin下相同文件夹下的plugin.xml复制过去。在用ant编译一次。把\nutch-1.0\build下的nutch -1.0.job,nutch-1.0.war,nutch-1.0.jar复制到nutch的根目录下替代原来的文件。

用Nutch抓取来的1T数据,通过hadoop的MapReduce进行存储实现,然后建立倒索引,配置Tomcat,就可以体验分词带来的搜索效果了。

山寨级别的搜索引擎自然不能与Google、百度相提并论。在搜索引擎实现的每一个步骤(数据抓取、存储、索引、分词系统、分布式查询等)每一个都是巨大的课题,值得我们去深入研究。同时欢迎更多的搜索引擎互联网爱好者加入我们的团队,一起学习进步。

相关文章:

  • 2022-12-23
  • 2021-06-25
  • 2022-01-15
  • 2021-10-19
  • 2021-08-12
  • 2021-11-18
  • 2021-07-12
  • 2021-06-26
猜你喜欢
  • 2021-08-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-04
  • 2021-09-30
相关资源
相似解决方案