0

Marklogic ServerのUIからいくつかのxmlドキュメントを挿入し、同時にそれらをリストに表示しています。ドキュメントを順番に表示したい。最初に挿入されたドキュメントは、リストの最初に来る必要があります。2番目のドキュメントは2番目に来る必要があります。しかし、Marklogicはそれらを順序なしでランダムに表示しています。

4

2 に答える 2

2

MarkLogicサーバーを使用する場合、挿入順序は保持または保持されません。ドキュメントの挿入順序をデータまたはデータのプロパティに保持する場合は、サーバーが「orderby」句を実行できる値が必要になります。

for $doc in fn:doc()
order by $doc//some-aspect-of-the-xml-structure
return
$doc

ドキュメントは、「シェアードナッシング」アーキテクチャで実際に互いに独立しています。これにより、MarkLogicは、「行」がメンバーシップと「テーブル」内の順序を共有し、その結果、効率的なクラスタリングに問題が発生するリレーショナルデータベースアプローチよりもはるかに高速に実行できます。

于 2012-06-20T18:13:22.100 に答える
0

最終更新のデータでドキュメントを注文できます。

(:If uri lexicone is enabled, else you can iterate by fn:collection():)
for $uri in cts:uris((), "document") 
let $updated-date := xdmp:document-get-properties($uri, fn:QName("http://marklogic.com/cpf", "last-updated"))
order by $updated-date/text()
return $uri

uriレキシコンを使用せずに別の方法があります。

for $doc in fn:collection()
let $uri := xdmp:node-uri($doc)
let $updated-date := xdmp:document-get-properties($uri, fn:QName("http://marklogic.com/cpf", "last-updated"))
order by $updated-date/text()
return $uri
于 2012-06-26T10:54:31.017 に答える