Elasticsearch全文搜索引擎

Elasticsearch 的搜索效率还挺让人惊喜的,是你数据一多,它的倒排索引就能发挥出大作用。嗯,用惯了数据库的同学,一开始不太习惯它的查询方式,不过熟悉之后会觉得真香。

全文检索用得多的场景,比如博客搜索、电商站内搜索,Elasticsearch 都能顶得住压力,响应也快。而且配合Lucene内核,搜索精度和性能都比较稳。

要是你用过Lucene,那上手 Elasticsearch 更轻松。像matchbool这类查询语法不复杂,用 JSON 写规则也比较直观,调试起来蛮顺手的。

不过也不是全无坑,比如字段类型要提前定义好,不然 mapping 一改,数据就得重建了。还有分词器的选型,中文项目千万别偷懒,IK 分词之类的工具可以早点研究一下。

想更系统了解的话,推荐看看这篇:Elasticsearch 2.0 全文搜索入门文档,虽然版本有点旧,但原理讲得还不错,适合打基础。

另外还可以串读一些 Lucene 相关资料,像Lucene 入门全文检索框架Lucene in Action,对理解底层挺有。

如果你还在用数据库做模糊查询,真可以考虑用 Elasticsearch 了,别等到业务顶不住了才想起这工具。

md 文件大小:1.04KB