在多个数据库

时间:2016-10-07 07:09:18

标签: marklogic marklogic-8 marklogic-7

我们的要求是在多个MarkLogic数据库上执行MarkLogic搜索功能。我们有两个版本的Marklogic 7& 8.此要求有两种情况:

  1. 数据库可在一台MarkLogic服务器上使用。

    在这种情况下,我们希望实现xdmp:eval(),xdmp:spawn()和MarkLogic的超级数据库和子数据库概念。但是,我们不确定哪一个是完美的。

  2. 数据库可在不同的MarkLogic服务器上使用。

    在这种情况下,我们不确定要实施什么。但是,我们正在探索MarkLogic的Hadoop和灵活复制。

  3. 请查看这些情景并分享您的最佳想法,以便我们能够朝着正确的方向前进。

1 个答案:

答案 0 :(得分:1)

如上所述,退一步可能是值得的,并讨论是否有必要。 MarkLogic可以很好地处理内容混合。拥有多个数据库可能会使架构过于复杂。

那就是说,从我的头脑中对你的问题进行一些考虑:

  • MarkLogic数据库不仅限于单个服务器,而是限制为群集。
  • 您可以使用数据库复制或Flex-Rep在群集之间同步数据库。
  • xdmp:eval / spawn占用开销,是一个潜在的安全漏洞(例如使用放大器)。
  • 超级/子数据库需要较少的开销,但请记住,跨超级数据库的范围查询将需要在所有包含的数据库中定义匹配的范围索引。
  • 确保跨超级数据库的数据库uri唯一性需要额外的努力。

HTH!