我正在使用cts:element-value-co-occurences
查询返回大量值的查询。由于我将“map
”作为选项,因此将这些出现复制到地图中(下面给出一个示例)。
map:map(
<map:map xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:map="http://marklogic.com/xdmp/map">
<map:entry key="doc">
<map:value xsi:type="map:map">
<map:map>
<map:entry key="/data/fb/www.abcdefgh.com#form123456665364#thread123456968765#post987986513213_65434360536840613_66445444">
<map:value xsi:type="xs:float">0.289406</map:value>
</map:entry>
</map:map>
</map:value>
</map:entry>
</map:map>
)
如您所知,我的地图密钥为“doc
”,返回的出现次数将被复制到此密钥“doc
”中sub-map
。
子地图的“<map:entry key=
”有一个很大的网址作为密钥。
当查询返回一个出现/结果时,它是好的。问题是当返回数百个结果时,性能变得更糟。这有什么替代方案吗?我只关心价值“0.289406”而不是大钥匙。
我可以直接将值单独输入任何xml元素,如: -
<doc>
<valu>0.289406</valu>
<valu>-0.23456</valu>
<valu>0.3665</valu>
</doc>
而不是使用地图或任何迭代??
答案 0 :(得分:0)
数以百计的结果应该没问题。我定期在地图上处理成千上万的结果。
所以我怀疑其他事情正在发生。如果您能够提出可重现的测试用例,则可能有人能够发现问题。