SET_TOKENIZER_PARAMETER
配置分词器参数。
重要
\n, \t,\r
必须通过 Vertica 表示法 U&’\000D’
或通过 Vertica 转义表示法 E’\r’
以 Unicode 形式输入。否则,它们将被直接视为两个分隔符。例如 "\\" & "r"
。
语法
SELECT v_txtindex.SET_TOKENIZER_PARAMETER (parameter_name, parameter_value USING PARAMETERS proc_oid='proc_oid')
参数
parameter_name
- 要配置的参数的名称。
使用下列内容之一:
-
stopwordsCaseInsensitive
:非索引字列表。属于此列表的所有标记都会被忽略。Vertica 支持最多包含前 256 个 Unicode 字符的分隔符和非索引字。如果您要定义包含逗号或反斜杠的非索引字,则需要对其转义。
例如:"Dear Jack\," "Dear Jack\\"
默认值:
''
(空列表) -
majorSeparators
:主要分隔符列表。用引号引起来且之间没有空格。默认值:
E' []<>(){}|!;,''"*&?+\r\n\t'
-
minorSeparators
:二级分隔符列表。用引号引起来且之间没有空格。默认值:
E'/:=@.-$#%\\_'
-
minLength
— 标记拥有的最小长度,Integer 类型。必须大于 0。默认值:
'2'
-
maxLength
:标记拥有的最大长度。Integer 类型。不得大于 1024 字节。有关增加标记大小的信息,请参阅 文本搜索参数。默认值:
'128'
-
ngramsSize
:大于 0 的整数值。仅与 ngram 分词器结合使用。默认值:
'3'
-
used
:指示无法更改分词器配置。Boolean 类型。将 used 设置为True
后,对 setTokenizerParameter 的任何调用将失败。在使用已配置的分词器之前,您必须将参数
used
设置为True
。这样做可防止配置在用于创建文本索引后被修改。默认值:
False
-
parameter_value
- 配置参数的值。
如果您要禁用 minorSeperators 或 stopWordsCaseInsensitive,则将其值设置为
''
。 proc_oid
- 在创建分词器时为其分配的唯一标识符。用户必须查询系统表 vs_procedures 以为给定分词器名称获取 proc_oid。有关详细信息,请参阅配置分词器。
示例
以下示例显示了如何使用 SET_TOKENIZER_PARAMETER 配置非索引字和分隔符。
配置分词器的非索引字:
=> SELECT v_txtindex.SET_TOKENIZER_PARAMETER('stopwordsCaseInsensitive', 'devil,TODAY,the,fox' USING PARAMETERS proc_oid='45035996274126984');
SET_TOKENIZER_PARAMETER
-------------------------
t
(1 row)
配置分词器的主要分隔符:
=> SELECT v_txtindex.SET_TOKENIZER_PARAMETER('majorSeparators',E'{}()&[]' USING PARAMETERS proc_oid='45035996274126984');
SET_TOKENIZER_PARAMETER
-------------------------
t
(1 row)