《自制搜索引擎》一文探讨了创建个人搜索引擎的过程与意义。通过技术与创意的结合,作者展示了如何利用开源工具优化信息检索,提升用户体验。这不仅激发了读者对信息组织的思考,也鼓励了自主创新的精神。
《自制搜索引擎》读后感(一)
1. 第一章“搜索引擎是如何工作的”是我感觉收获最多的一部分,把倒排说明说得比较清楚,通过一些插图能容易理解倒排索引对于搜索的核心作用;
2. 本书是通过C语言来实现一个小型的搜索引擎,代码量比较少而且都比较清楚,对于实现一个搜索引擎的理解是很有帮助的;
3. 另外还谈到倒排索引的压缩和其他的一些优化,还是有一些收获的,因此综合以上打个四星,对这一块感兴趣的可以翻翻看,书很薄,两三个小时就翻完了。
《自制搜索引擎》读后感(二)
在此之前还看过《这就是搜索引擎 : 核心技术详解 》,以及翻阅过图书馆一两本搜索相关教科书。
其他书,都是部分概念讲得还行,但是极少有真正的代码讲解。
该书经典之处,
一是行文思路逻辑清晰,编排合理。搜索原理、倒排索引核心与实现、检索排序、搜索的优化,以及还有哪些wiser没做到的值得思考改进的内容,都有讲解。
二是有2000+行最简易搜索引擎代码(本人在ubuntu虚拟机轻测有效、好用)。
三是提纲挈领简洁程度已经登峰造极了,但并未有马虎大意之笔,感恩于此书,故在心中奉之为圣经。
未看此书前,只知道有搜索这个东西,阅完此书后,神清气爽,对搜索加深了理解。
临近毕业图书馆借的,读完一遍还不够,等工作打算自己买一本,更加详细的阅读,相信还会有奇效。
《自制搜索引擎》读后感(三)
本书主要讲解了:如何从零开始,用C语言编写一个基于“倒排索引”(Inverted Index)的“全文检索引擎”(FullText Search Engine)。最终的成果,相当于一个迷你版的Apache Lucene(Lucene是大数据全文搜索框架Elasticsearch的核心引擎)。注意:是自制Lucene,而不是调用Lucene。
倒排索引的思想较简单,但编程实现比较复杂。源码部分的“数据结构”设计很精巧,但需要时间慢慢研究代码。
译者翻译很用心,包括配书源码的注释都翻译了,感谢译者的辛苦工作。
《自制搜索引擎》读后感(四)
想了解和入门搜索引擎的话,这本书还是挺推荐的。
其实这本书已经讲了搜索引擎架构的基本脉络【不包括搜索策略】,其实主要就是分为离线建库与在线检索这两部分。离线建库书中提到的主要就是倒排索性的构建,以及倒排索引的压缩,但没有商业搜索引擎中更为重要的建库特征权重计算,比如如何针对某些网站或者链接提升或者降低其权重。而在线检索部分,其简化了语义理解,就正常使用切词库进行切词,转换为查询的 DSL,而相关性的判断也是用的最简单的模型TF-IDF。搜索引擎的基本架构是讲清楚了,但离实际上商业的搜索引擎还是差别很大的。就像我们都知道发电机原理,但真的要自己造一个可用的发电机,其实还是有很长的路要走的。
google 为了解决搜索引擎的很多工程问题,提出了 GFS、BigTable、MapReduce 等解决方案,去存储互联网上指数级增长的信息,以及对各种网页信息进行清洗建库。在这基础上商业引擎还有各种方案去做优化,比如漏斗分层、索引压缩、流式计算等各种技术的优化,虽然大体的框架没变,但在很多细节方面还是有优化空间的。
而搜索策略上,关于相关性计算,离线建库有google 的 pagerank 和百度的 超链分析,在线检索的时候除了精准召回,还会有向量召回,能够召回更多相关的结果,而语义理解也引入了机器学习,能够更准确地分析用户真正的意图,在检索与排序上更加细致化。
但因为搜索引擎做到极致,里面会掺夹业务细节以及某些特定的工程优化,就不可能像ES 那般开源,有时候还是挺遗憾的!