默认的PostgresQL是支持全文检索的,不过是针对英文的,而中文是不行的。网上已经有很多如何使用这种方式,这里就不细所说了。
GiST就是通用搜索树。
谈谈一个初步的体验
数据源是text类型或者varchar类型,索引是tsvector类型。
然后采用是独立索引表或者增加索引字段方式,不管哪种方式,都需要创建触发器。
对于大批量的数据入库的话,可能对写操作速度有些影响
索引表(独立的方式)记录如图:

这个东东算是一个检索的基本入门吧。
另外一种是GIN,叫通用倒排索引,是一个存储对(key,posting list)集合的索引结构,Key是一个键值,而posting list是一组出现过"key“的位置。
据说在全文检索时,采用这种方式比GIST更好,参考内容:
GIN index lookups are about three times faster than GiST.
GIN indexes take about three times longer to build than GiST.
GIN indexes are about ten times slower to update than GiST.
GIN indexes are two-to-three times larger than GiST.
后面是会对GIN的使用再谈下感受。

本文深入探讨了PostgreSQL中用于全文检索的两种技术:GiST(通用搜索树)与GIN(通用倒排索引)。通过对比它们在建立、更新和查找速度方面的性能差异,为开发者提供了在不同场景下选择合适索引类型的关键信息。

2750

被折叠的 条评论
为什么被折叠?



