我有一个包含 50,000,000 个文档的数据库,我想将它写入每个文档的 base-uri 文件。运行整个 50,000,000 运行时间太长(查询超时)。所以,我想我会使用谓词将数据库分成更易于管理的批次。因此,我尝试了以下方法来了解其性能:
for $i in ( 49999000 to 50000000 )
return fn:base-uri( /mainDoc[position()=$i] )
但是,这 1000 个基本 uri 的性能非常缓慢。事实上,查询超时了。我尝试了类似的查询并得到了类似的结果(或缺少结果):
for $i in ( /mainDoc ) [ 49999000 to 50000000 ]
return fn:base-uri( $i )
是否有一种更高效的方法来遍历大型数据库,其中数据库末尾的文档与数据库开头的文档一样快?