使用什么算法为xdmp:document-insert()选择林以及哪些因素会影响跨森林的文档分发?
我看到xdmp:document-insert没有平均分发文档。我尝试将cts:uris的输出传递给xdmp:document-assign,然后使用key = forest-name和value = uris count填充地图。
let $ index:= xdmp:document-assign($ uri,$ forests-count) let $ forest-name:= xdmp:forest-name($ forests [$ index])
当$ forests-count为低时,文件在森林中平衡,但如果没有。森林面积很高(~50),这使得uri分布不均。
答案 0 :(得分:1)
该算法使用64位散列,因此它有足够的地址空间可容纳50多个森林。部署的集群有数百个森林,可能有数千个。使用我使用的集群,文档计数通常在平均值的10%之内。这是足够统一的,因为大多数森林行动都是O(log n)
。
当URI本身均匀分布时,放置往往效果最好。例如,序列号的URI可能会聚集在一起。