Вы можете запустить CORB-задание , которое выбирает все URI из базы данных в вашем модуле URI, а затем возвращает отдельный список имен элементов, используя либо name()
, либо local-name()
в процессе.модуль с параметром PROCESS-TASK=com.marklogic.developer.corb.ExportBatchToFileTask
для записи всех выходных данных в один файл, а параметры POST-BATCH-TASK=com.marklogic.developer.corb.PostBatchUpdateFileTask
и EXPORT-FILE-SORT=ascending|distinct
для дедупликации и создания отдельного списка имен элементов из базы данных в текстовом файле.
Пример задания со всеми необходимыми опциями, кроме XCC-CONNECTION-URI
:
# Inline module to select all URIs
URIS-MODULE=INLINE-XQUERY|xdmp:estimate(fn:doc()), cts:uris("",(),cts:true-query())
# Inline module to return a distinct list of element names in the document on a separate line
PROCESS-MODULE=INLINE-XQUERY|declare variable $URI as xs:string external; string-join(fn:distinct-values(fn:doc($URI)//*/name())," ")
# Write the results of each process module to a single file
PROCESS-TASK=com.marklogic.developer.corb.ExportBatchToFileTask
EXPORT-FILE-NAME=element-names.txt
# After the batch processing is completed, sort and dedup the element names
POST-BATCH-TASK=com.marklogic.developer.corb.PostBatchUpdateFileTask
EXPORT-FILE-SORT=ascending|distinct
THREAD-COUNT=10