Vertica 词干分析器

Vertica 词干分析器采用 Porter 词干抽取算法来查找从同一基词/根词派生的词语。例如,在文本索引中搜索关键字 database 时,您可能还希望获得包含 databases 一词的结果。

为了实现这种类型的匹配,当使用任何 v_txtindex 词干分析器时,Vertica 都会以已抽取词干的形式存储词语。

Vertica Analytics Platform 提供了以下词干分析器:

示例

以下示例显示了创建文本索引时如何使用词干分析器。

使用 StemmerCaseInsensitive 词干分析器创建文本索引:

=> CREATE TEXT INDEX idx_100 ON top_100 (id, feedback) STEMMER v_txtindex.StemmerCaseInsensitive(long varchar)
                                                              TOKENIZER v_txtindex.StringTokenizer(long varchar);

使用 StemmerCaseSensitive 词干分析器创建文本索引:

=> CREATE TEXT INDEX idx_unstruc ON unstruc_data (__identity__, __raw__) STEMMER v_txtindex.StemmerCaseSensitive(long varchar)
                                                                                  TOKENIZER public.FlexTokenizer(long varbinary);

在不使用词干分析器的情况下创建文本索引:

=> CREATE TEXT INDEX idx_logs FROM sys_logs ON (id, message) STEMMER NONE TOKENIZER v_txtindex.StringTokenizer(long varchar);