Part1获取信息的诉求

我们正处于一个信息过载的时代,有用的信息、无用的信息夹杂在一起。

我们有从海量信息中获取数据的诉求,搜索和推荐就是两个有效的工具。

ChatGPT本质上说是一种更加高效准确的获取信息的渠道,至少对于我来说,有效减少了从传统搜索引擎众多结果中过滤有效信息的成本。

Part2让搜索飞入寻常百姓家

曾几何时,搜索引擎也是技术壁垒较深的一个领域,像谷歌、百度等老牌网页搜索引擎公司,就靠着搜索和广告赚得盆满钵满。

时间拉到现在,各类app层出不穷,搜索不再均限于网页,更多的是app内的垂直领域检索,像小红书、知乎、淘宝、拼多多都是如此。

再具体到一些我们日常的业务场景,也同样有检索诉求:筛选检索和模糊检索。

以常用的找房app为例,可以输入商圈名称、小区名称,当然这些都不需要非常具体,检索框就可以进行提示,同时还可以根据具体的条件做筛选,比如面积、朝向、总价等。

这些都可以用es来实现,再有上层的排序逻辑,基本上就可以实现面向用户的检索功能了。

Part3Lucene和ElasticSearch

在聊es之前,就必须要提lucene,如果把es看做是豪车,lucene则是这辆豪车的发动机,真可谓是es的核心部件。

1Lucene的诞生

Luene是一款高性能、可扩展的信息检索库,用于完成文档元信息、文档内容等搜索功能。

用户可以使用Lucene来快速构建搜索服务,如文件搜索、网页搜索等,它是一个索引和搜索库,不包含爬取和HTML解析功能。

1985年 Doug Cutting毕业于美国斯坦福大学,在1999年编写了Lucene,他是一位资深的全文索引及检索专家,曾经是V-Twin搜索引擎的主要开发者,后来在Excite担任高级系统架构设计师,目前从事于一些互联网底层架构的研究。

值得一提的是,Doug Cutting还是大名鼎鼎的Hadoop之父,大牛果然是高产。