部分字符串匹配的BaseX索引或查询优化

时间:2018-10-25 19:09:54

标签: optimization indexing xquery basex

我当前遇到一个问题,即我的BaseX查询花费的时间比搜索我的数据集所需的时间长得多。问题是我正在搜索固定长度文本字段的子字符串。例如,如果我搜索确切的字符串,则返回时间大约为6ms,而搜索15个字符串的最后8个字符则需要5秒钟。我尝试用3种不同的方式编写搜索,每次都花5秒钟。我担心的是,它需要最后一个字符的索引,并且似乎只允许对整个字符串进行索引。无论如何,这是一些示例信息:

xml:     <xmlfile><sometag>FIXED39LENGTH</sometag></xmlfile>

查询:     <result>{ for $c in db:open('Test') where $c/xmlfile/sometag[text() contains text ".{6,6}9LENGTH" using wildcards] return <result sometag="{$c/xmlfile/sometag}"/> }</result>

对于“全文本”索引,它只是被指定为“ sometag”。

0 个答案:

没有答案