日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

高速全文檢索(RUM)

RDS PostgreSQL提供RUM插件,實現高速全文檢索。

前提條件

RDS PostgreSQL實例為10或以上版本。

說明

RDS PostgreSQL 14和15需要內核版本在20221030及以上。如何查看和升級內核小版本,請參見升級內核小版本。

背景信息

GIN索引(通用倒排索引)支持通過tsvector和tsquery兩種數據類型進行全文檢索,但是有如下幾個問題:

  • 排序慢

    需要有關詞匯的位置信息才能進行排序。GIN索引不存儲詞匯的位置,因此在索引掃描之后,需要額外的掃描來檢索詞匯位置。

  • 短語查詢慢

    GIN索引需要位置信息來執行短語搜索。

  • 時間戳排序慢

    GIN索引無法在帶有詞素的索引中存儲一些相關信息,因此需要執行額外的掃描。

基于GIN索引,RDS PostgreSQL提供RUM插件,在RUM索引中存儲額外的信息(詞匯位置或時間戳的位置信息)來解決以上問題。

RUM索引的缺點是構建和插入時間比GIN索引慢。 這是因為需要存儲除密鑰之外的其他信息,并且RUM使用通用WAL記錄。

插件開啟與關閉

  • 開啟插件

    CREATE EXTENSION rum;
  • 關閉插件

    DROP EXTENSION rum;

通用的操作符

RUM模塊提供以下操作符。

操作符

返回值數據類型

描述

tsvector <=> tsquery

float4

返回tsvector與tsquery之間的距離。

timestamp <=> timestamp

float8

返回兩個時間戳之間的距離。

timestamp <=| timestamp

float8

只返回左側時間戳的距離。

timestamp |=> timestamp

float8

只返回右側時間戳的距離。

說明

后三種操作符也適用于這些數據類型:timestamptz、int2、int4、int8、float4、float8、money、oid。

RUM的更多函數介紹,請參見官方網站。

使用方法

RUM的使用方法與開源方法一致,請參見官方網站