Как повысить производительность xdmp:document-filter() в Marklogic?

Я использую xdmp:document-filter(doc()) для извлечения метаданных из документов (doc, docx, pdf и т. д.). Мы используем его, потому что он работает со всеми форматами документов и создает формат XHTML для каждого типа документа. Но главный недостаток этой команды в том, что она замедляет выполнение запроса. Если в базе есть один или два документа, то запрос работает нормально, но если документов больше (например, 10 или 15), то запрос замедляется. Мы хотим извлечь и показать информацию из метаданных всех документов в базе данных.

Мы используем этот запрос: -

for $d in fn:doc()
return xdmp:document-filter(doc(fn:base-uri($d)))

Есть ли способ ускорить работу этого запроса или есть ли альтернатива xdmp:document-filter() ?


person Puneet Pant    schedule 07.08.2012    source источник


Ответы (1)


xdmp:document-filter() обычно используется во время ETL. Если вы используете Information Studio для загрузки своего контента, вы можете добавить преобразование «Фильтровать документы». Вы можете выбрать между сохранением извлеченных метаданных в виде отдельных документов xhtml или в виде свойств документа. Таким образом, их не нужно вычислять на лету при каждом запросе.

ХТХ!

person grtjn    schedule 07.08.2012