Basic Text Search

您可以对表列中存储的文档存储库中的词语和短语执行 Basic Text Search。您可以使用 GBase 8s Basic Text Search DataBlade 模块,对表列中存储的文档存储库中的词语和短语执行 Basic Text Search。

在传统的关系数据库系统中,必须使用 LIKE 或 MATCHES 条件来搜索文本数据,并使用数据库服务器来执行搜索。GBase 8s 使用开放式源代码 CLucene 文本搜索包执行 Basic Text Search。这个文本搜索包及其相关函数(称为文本搜索引擎)专门设计用于对文本数据执行快速检索和自动建立索引操作。文本搜索引擎在数据库服务器控制的虚拟处理器中运行。

要执行 Basic Text Search,请对一个或多个文本列创建 bts 索引,然后使用 bts_contains() 搜索谓词函数查询文本数据。

要执行 Basic Text Search,请对一个列创建 bts 索引,然后使用 bts_contains() 搜索谓词函数查询文本数据。

通过指定分析器,您可以配置如何对文本数据建立索引。每个分析器使用不同的条件对数据建立索引。缺省情况下会使用标准分析器。

您可以为具有多个词语表示相同信息的数据指定同义词,例如,具有多种拼写方式的专有名词。可以使用规范映射来创建同义词的静态列表。您可以使用可动态更新的同义词来创建同义词词典。

要搜索词语和短语,可以使用谓词 bts_contains(),该谓词指示数据库服务器调用文本搜索引擎以执行搜索。

例如,要在表 products 的列 brands 内搜索字符串 century,请使用以下语句:
SELECT id FROM products 
WHERE bts_contains(brands, 'century');

搜索谓词将采用多个自变量来使搜索的详细程度比使用一个 LIKE 条件的详细程度更高。搜索策略包含单个或多个字符通配符搜索、模糊和近似搜索、AND、OR 和 NOT 布尔运算、范围选项,以及条件增强。

可以搜索未结构化文本,如果您使用 XML 索引参数,也可以按标记、属性或 XML 路径搜索具有 XML 文档的列。

可以使用 Basic Text Search 功能执行维护任务,例如压缩 bts 索引和获取建立索引的字段名的列表。