我正在做一些锻炼以找出性能方面哪个更好,无论是元素值查询还是路径范围查询。
我发现使用路径范围查询的搜索比元素值查询慢一点。
即使加载了额外的路径范围索引,有没有人知道使用路径范围查询搜索的速度缓慢。
我使用了下面的代码。
xdmp:document-delete("/aname4.xml")
xdmp:document-insert("/aname1.xml",
<name><fname>John</fname><mname>Rob</mname><lname>Goldings</lname></name>),
xdmp:document-insert("/aname2.xml",
<name><fname>Jim</fname><mname>Ken</mname><lname>Kurla</lname></name>),
xdmp:document-insert("/aname3.xml",
<name><fname>Ooi</fname><mname>Ben</mname><lname>Fu</lname></name>),
xdmp:document-insert("/aname4.xml",
<name><fname>James</fname><mname>Rick</mname><lname>Tod</lname></name>)
create path range index "/name/fname"
checked response time with following search code
cts:search(doc(),cts:path-range-query("/name/fname","=","Jim"),"filtered")
cts:search(doc(),
cts:element-value-query(xs:QName("fname"),"jim"),
"filtered")
Run Code Online (Sandbox Code Playgroud)
在使用路径范围查询时,我应该考虑哪些特定的事情
任何建议都将受到高度赞赏,因为它有助于我们设计高效的搜索代码。