批量插入marklogic的性能问题

时间:2014-07-01 14:45:25

标签: performance insert document marklogic

我需要在不到10秒的时间内将10,000个文档插入marklogic。

我通过以下方式在一个单节点marklogic服务器上进行了测试:

  1. 使用xdmp:spawn将文档插入任务传递给任务服务器;
  2. 使用xdmp:document-insert而不明确指定林;
  3. 任务服务器有8个主题来处理任务;
  4. 我们启用了CPF
  5. 表现非常糟糕:完成10,000个doc创建需要2分钟。 如果我在集群环境中测试它,我确信性能会更好,但我不确定它是否能在不到10秒的时间内完成。

    请告知改善表现的方法。

3 个答案:

答案 0 :(得分:1)

假设2个套接字服务器,128GB-256GB内存,快速IO(400-800MB /秒持续)

  • 适当数量的森林(12个小学或6个小学/ 6个中学)
  • 超过8个线程假设有足够的内核
  • CPF off

启用性能历史记录,查看指标​​,您将看到瓶颈所在。

不需要SSD - 只是IO吞吐量...多个旋转磁盘提供的没有问题。

答案 1 :(得分:0)

我首先要收集更多信息。这是什么版本的MarkLogic?它运行的操作系统是什么?什么是CPU?内存?什么是存储子系统?数据库附加了多少个森林?

然后收集操作系统级指标,看看其中一个子系统是否是一个明显的瓶颈。现在我不会推测除此之外。

答案 2 :(得分:0)

如果您需要快速加载,我不会为每个单独的文档使用xdmp:spawn,也不会使用CPF。但是10k文档的2分钟并不一定听起来很慢。另一方面,我已达到3k / sec,但没有范围索引,无论如何变换。和一个非常快的磁盘(例如ssd)..

HTH!