Marklogic 在单个林中拥有特定类型数据的利弊

Marklogic 在单个林中拥有特定类型数据的利弊,marklogic,Marklogic,我们有一个MarkLogic应用程序,新数据会频繁添加/更新。这是用户数据,我们应该定期备份数据 我们有一部分数据(300万条记录)没有更新。因此,我们可以将这些数据放在一个单独的林中吗?这对我有什么帮助吗 我们是从备份和恢复的角度考虑这一点的,因为对整个数据库进行每日备份会占用大量磁盘空间 在单个林中使用特定类型的数据有哪些优点和缺点?这并没有解决您的优点和缺点问题,但MarkLogic 8提供了这些优点和缺点,可以解决磁盘空间问题 使用,我们将用户数据与消息数据放在一个单独的数据库中。这使我

我们有一个MarkLogic应用程序,新数据会频繁添加/更新。这是用户数据,我们应该定期备份数据

我们有一部分数据(300万条记录)没有更新。因此,我们可以将这些数据放在一个单独的林中吗?这对我有什么帮助吗

我们是从备份和恢复的角度考虑这一点的,因为对整个数据库进行每日备份会占用大量磁盘空间


在单个林中使用特定类型的数据有哪些优点和缺点?

这并没有解决您的优点和缺点问题,但MarkLogic 8提供了这些优点和缺点,可以解决磁盘空间问题

使用,我们将用户数据与消息数据放在一个单独的数据库中。这使我们能够非常频繁地备份用户数据(如果丢失,将无法恢复),而不必在备份中包含新加载的消息(如果丢失,可以从我们保存的mbox历史中重新加载)。这也意味着大量搅动的用户数据从磁盘上回收的速度要比在更大的消息数据库中更快。我们从不需要数据集之间的事务一致性,因此可以使用单独的数据库。需要更多的应用程序逻辑。我们编写了一个用户库来调用访问用户数据


实际上,单独的林比单独的数据库要难一些,因为如果使用林,就不能使用重新平衡功能,并且不能通过将一个林扩展为两个来轻松地进行扩展。

一般来说,您不想考虑在“单个林”中包含任何数据。MarkLogic设计用于在多个级别上并行读写。将数据放在一个林中会破坏这一点,并可能导致热点和/或单点故障。通常,最好的建议是尽可能广泛地在集群中分布林和副本,每台主机上有多个主服务器和副本(至少三台主机以实现高可用性)

正如您和@hunterhacker在上面所指出的,您的数据可能有一些特征,可以用来比内置的再平衡逻辑做出更明智的布局决策。隔离“热”(主动读取或更新)和“冷”(不经常访问)数据确实可以让您更有效地分配集群中的资源。不过,我建议先用接近真实世界的条件进行测试。我经常看到用户试图比默认的并行化逻辑更聪明,但最终的结果是速度稍微快一些/节省空间,操作也要复杂得多。在更糟糕的情况下,他们实际上使插入或查询的速度比使用默认放置策略时慢


你也应该去看医生。此功能允许管理员将林分组到不同的层中,从而自动重新平衡其中的数据

谢谢贾斯汀的回复。嗨,戴夫。。。我们还在MarkLogic 7上。。当我们进入ML8时,肯定会实现增量备份。