Запись огромного обработанного текста в файл из MarkLogic - PullRequest
0 голосов
/ 17 января 2020

У меня очень большой обработанный текстовый контент (обработка контента выполняется с использованием XQuery на сервере MarkLogi c), который мне нужно записать в текстовый файл / csv (вне сервера MarkLogi c). Когда я использую стандартную функцию API, такую ​​как xdmp:save(), это занимает почти 4-5 минут времени. Какой самый лучший и простой способ сократить время написания контента?

1 Ответ

0 голосов
/ 17 января 2020

Если тайм-ауты являются проблемой, вы всегда можете увеличить предел тайм-аута до настроенного максимума, используя xdmp: request-set-time-limit

Вместо записи вывода непосредственно в файл в файловой системе MarkLogi c, почему бы не предоставить этот запрос в качестве конечной точки и заставить клиент получить содержимое?

  • либо возвращаются непосредственно при выполнении этого модуля
  • , либо сохраняют документ в базе данных и возвращают URI, который они могут использовать для получения через GET / v1 / documents ?

Другим вариантом создания гигантских отчетов CSV может быть использование таких инструментов, как CoRB , для выполнения пакетного задания и сбора результатов в файле CSV.

https://github.com/marklogic-community/corb2/wiki/Hello-World-from-CORB

...