返回首页

gbase数据、南大通用产品文档:GBase8s读和写属性

更新日期:2024年09月11日

以下方法在扩展的 DataSource 接口中定义,以便读取和写入属性。这些方法允许您通过编
辑现有 DataSource 对象的属性列表来定义新的DataSource 对象。
public Properties getDsProperties();
返回包含在 DataSource 对象中的 Property 对象
public void addProp(String key, Object value);
添加属性到属性列表。
key 参数指定要添加的属性。
value 参数是属性的值。
public Object getProp(String key);
从属性列表获取属性的值。
key 参数指定要检索的属性。

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 256
-
public void removeProperty(String key);
从属性列表移除属性。
key 参数指定要移除的属性。
public void readProperties(InputStream in) throws IOException;
将属性从 InputStream 对象读取到 DataSource 对象。
in 参数是要读取属性的 InputStream 对象。
当输入流读取时若发生 I/O 错误,则会出现异常。
public void writeProperties(OutputStream out) throws IOException;
将 DataSource 对象的属性写入到 OutputStream 对象。
out 参数是要写入属性的 OutputStream 对象。
当写入到输出流时若发生 I/O 错误,则会出现异常。

词典用于定义停用词(stop words)
,即全文检索时不搜索哪些词。
词典还可以用于对同一词的不同形式进行规范化,
这样同一个词的不同派生形式都可以
进行匹配。规范化后的词称为词位(lexeme)

除了提高检索质量外,
词的规范化和删除停用词可以减少文档tsvector 格式的大小,从
而提高性能。
词的规范化和删除停用词并不总是具有语言学意义,
用户可以根据应用环境在

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
651
词典定义文件中自定义规范化和删除规则。
一个词典是一个程序,接收标记(token)作为输入,并返回:

如果token 在词典中已知,
返回对应lexeme 数组
(注意,
一个标记可能对应多个lexeme)


一个lexeme。一个新token 会代替输入token 被传递给后继词典(当前词典可被称为过
滤词典)


如果token 在词典中已知,但它是一个停用词,返回空数组。

如果词典不能识别输入的token,返回NULL。
GBase 8c 提供了多种语言的预定义字典,同时提供了五种预定义的词典模板,分别是
Simple,Synonym,Thesaurus,Ispell,和Snowball,可用于创建自定义参数的新词典。
在使用全文检索时,建议用户:

可以在文本搜索配置中定义一个解析器,以及一组用于处理该解析器的输出标记词典。
对于解析器返回的每个标记类型,
可以在配置中指定不同的词典列表进行处理。
当解析
器输出一种类型的标记后,在对应列表的每个字典中会查阅该标记,直到某个词典识
别它。如果它被识别为一个停用词,或者没有任何词典识别,该token 将被丢弃,即
不被索引或检索到。通常情况下,第一个返回非空结果的词典决定了最终结果,后继词
典将不会继续处理。但是一个过滤类型的词典可以依据规则替换输入token,然后将替
换后的token 传递给后继词典进行处理。

配置字典列表的一般规则是,
第一个位置放置一个应用范围最小的、
最具体化定义的词
典,其次是更一般化定义的词典,最后是一个普适定义的词典,比如Snowball 词干词
典或Simple 词典。在下面例子中,对于一个针对天文学的文本搜
索配置astro_en,可
以定义标记类型asciiword(ASCII 词)对应的词典列表为:天文术语的Synonym 同义
词词典,Ispell 英语词典和Snowball 英语词干词典。
gbase=#ALTER TEXT SEARCH CONFIGURATION astro_en
ADD MAPPING FOR asciiword WITH astro_syn, english_ispell, english_stem;
过滤类型的词典可以放置在词典列表中除去末尾的任何地方,放置在末尾时是无效的。
使用这些词典对标记进行部分规范化,可以有效简化后继词典的处理。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
652

 摘要:
返回结果集中的行数。
 语法:
gs_ulonglong gbase_num_rows(GBASE_RES *res);
 参数:
 返回值:
结果集中的行数。



GBase 8a 程序员手册C API 篇
南大通用数据技术股份有限公司

- 29 -