内存限制(MarkLogic)

时间:2019-03-28 03:37:03

标签: marklogic marklogic-9

我目前正在尝试查看是否有增加MarkLogic整体内存限制的选项。我试图增加管理控制台中的内存选项,但似乎没有增加限制。我浏览了各种论坛,发现了这个thread。说明

“当所有正在运行的SPARQL查询的总哈希联接表大小超过主机内存的50%时,由于“ XDMP-MEMCANCELED”错误而取消“

所以问题是我可以增加主机内存百分比限制,例如说90%吗?

同时,它还指出我可以增加对主机的内存来改善这一点。主机内存是否指虚拟内存?我尝试增加它,但是生成错误消息时的内存限制保持不变。

系统当前正在运行Windows。

===更新=== 使用SPARQL查询

SELECT *
WHERE{
?people  </posted>  ?question .
?question </has_comment> ?comment .
?question </date_posted> ?question_date_posted .
?question </has_tags> ?tags .
?commented_by_person </commented_by> ?comment .
?comment </date_commented> ?comment_date_commented .
?comment </text> ?comment_text .
?people </from> ?school .
?people </has_age> ?age
}

控制台产生的错误

  

XDMP-MEMCANCELED:{选择人员...?评论。 } } - 取消   由于主机桌面60k8s55上的内存使用情况,   requestMemory = 4359540880,totalMemory = 4359540880,   memoryLimit = 4294967296

1 个答案:

答案 0 :(得分:3)

MarkLogic内存消耗是各种组和数据库缓存设置以及活动目录林数量的函数。

我建议您检阅Fundamentals of Resource Consumption论文,该论文的一节 MarkLogic Server中的内存利用率。查看Query and Tuning Guide

也是值得的

主机内存是指已配置系统或实例上的RAM数量。

您可以通过更改组级别设置来增加MarkLogic可能消耗的内存量。

在管理界面中,转到配置-> -> [默认] 配置标签,并确保将“缓存大小”设置为手动,然后您可以根据需要调整各种缓存大小。

您还需要确保已针对正在使用的操作系统进行了适当的操作系统级别调整,以进行交换大小和其他最佳实践。

如果以后在系统中添加内存,则还需要确保返回以调整组缓存和操作系统交换。