MarkLogic Cluster - 使用所有文档配置 Forest

MarkLogic Cluster - Configure Forest with all documents

我们正在开发 MarkLogic 9.0.8.2

我们正在 Azure 上设置 MarkLogic 集群(3 个虚拟机),根据故障转移设计,希望在 Azure Blob 中有 3 个林(每个用于节点)。

我完成了设置,开始摄取时,我发现文档分布在 3 个林中,并没有全部存储在每个林中。

例如

我摄取了 30000 条记录,每个森林包含 10000 条记录。

我需要的是拥有 30000 条记录的所有森林。

是否有任何配置(在数据库或林级别)我需要实现此目的?

MarkLogic 的工作方式与其他一些 noSQL 文档数据库故障转移不同,后者可能会在每个主机上保留每个文档的副本。

MarkLogic 的集群特性跨主机分布文档以提供可用性和资源消耗的平衡。对于故障转移保护,您必须在每个主机上创建额外的林并将它们作为副本附加到现有的林中。如果 3 台主机中的任何一台发生故障,这将确保可用性。

这是森林布局示例:

Host 1:    primary_forest_01     replica_forest_03
Host 2:    primary_forest_02     replica_forest_01
Host 3:    primary_forest_03     replica_forest_02

副本林必须与主林位于不同的主机上,如果每个主机有多个林,它们应该跨主机条带化,以便在故障转移时最好地平衡资源消耗。

同样重要的是要注意,对于 HA,您还需要为系统数据库配置副本。

所以没有数据库设置将所有文档放在每个主机上,因为这不是 MarkLogic 设计的工作方式。 MarkLogic 提供的Scalability, Availability and Failover Guide is very informative, and in this case, the High Availability of Data Nodes with Failover section is particularly relevant. I also highly recommend checking out the free training