先谈一下作为一名 Search Engine 的初学者 , 我对搜索引擎的原理方面的认识 , 微软近期发布了他们的搜索引擎 ”bing”, 中文翻译为 ” 必应 ”, 取有求必应的含义 , 佩服微软的亲中国文化策略 , 但也忽略了 ”bing” 在中文里一般人读出 ” 病 ”. 但不管怎么说微软都看重的技术 , 我们不由得不相信它就是未来的主流技术 .
我在使用搜索引擎的时候 , 往往在考虑的是这么神奇东西是怎么实现的呢 ? 我可以实现它么 ? 这里我发现了 google 虽然和百度界面类似但受到专利的限制 , 两者的本质技术并不同 , 但都是采用的是全文索引技术 . 所谓全文索引技术就是对整个要查询的内容建立索引 , 并把索引文件持久化 , 用户在搜索时先是去找到那个索引文件 , 根据索引文件中的关键字的映射再去匹配 , 流程参看下图 :
故我们开发搜索引擎时也应采取全文索引的方式 , 分类索引已经 OUT 了 , 通过上图可以看出我们的程序要分为这么几部分 : 扫描 , 解析 , 根据规则建立索引 , 存储 , 搜索接口等 .