在存储三重索引的MarkLogic中,在磁盘或内存中?哪个在内存或磁盘中更好?

时间:2018-01-31 14:46:40

标签: marklogic tde marklogic-9

在存储三重索引的MarkLogic中,在磁盘或内存中?哪个在内存或磁盘中更好?我们如何在DB中将这些三元组作为XML插入?

1 个答案:

答案 0 :(得分:1)

您正在寻找的答案位于The Semantics Developer's Guide

你应该把这篇文章的一些内容作为入门。它会对你有很大的帮助。在此期间,要解决您的一些问题:

与存储位置相关:
作为标准操作,MarklLogic将大量三重信息存储在特殊索引中的磁盘上。因此,初始内存使用率很少 - 当然,内存缓存(2)用于语义操作的执行,三元组存储的某些部分映射到内存。

然而,有一种方法可以在内存中创建一个三重存储(在某些特殊情况下,您可能会这样做)。这可以通过使用函数sem:in-memory-store()

插入三元组: 三元组不必存在于您管理的文档中

  • 您可以使用功能
  • 插入它们
  • 您可以通过解析标准RDF数据格式来插入它们
  • 您可以通过REST
  • 插入它们
  • 可能还有其他几个选项

是的,您也可以创建它们并将它们存储在您的文档中。在某些用例中,这可能是一种非常有效的解决方案,因为三元组存储在与文档相同的片段中。这可以带来一些有趣的查询。

这里有一个很棒的文件:Managed vs Unmanaged triples