gpt4 book ai didi

MongoDB 插入性能 - 带有几个索引的巨大表

转载 作者:可可西里 更新时间:2023-11-01 09:32:18 24 4
gpt4 key购买 nike

我正在测试 Mongo DB,以便在一个包含大约 300 亿条记录(每条约 200 字节)的巨大表的数据库中使用。我知道那种卷需要分片,所以我试图在一台机器上获得 1 到 20 亿条记录。我在一台有 2 个 CPU/6 个内核和 64 GB RAM 的机器上达到了 10 亿条记录。我 mongoimport-ed 没有索引,速度还可以(平均 14k 记录/秒)。我添加了索引,这花了很长时间,但没关系,因为这是一次性的事情。现在将新记录插入数据库需要很长时间。据我所知,机器在插入记录时没有加载(CPU、RAM 和 I/O 都处于良好状态)。如何加快插入新记录的速度?

最佳答案

我建议将此主机添加到 MMS (http://mms.10gen.com/help/overview.html#installation) - 确保您安装了 munin-node 支持,这将为您提供最多的信息。这将使您能够跟踪可能使您放慢速度的因素。对不起,我不能在答案中更具体,但这里有很多很多可能的解释。一些一般要点:

  • 添加索引意味着索引和您的工作数据集现在将在 RAM 中,这可能会占用您的资源(查找页面错误)
  • 现在您有了索引,插入时必须更新它们 - 如果所有内容都适合 RAM,这应该没问题,请参见第一点
  • 您还应该检查您的磁盘 IO 以查看其性能如何 - 您的后台刷新平均值如何?
  • 您是否正在运行正确的文件系统(XFS、ext4)和高于 2.6.25 的内核版本? (早期版本的 fallocate() 存在问题)

可以在这里找到一些很好的跟进信息:

http://www.mongodb.org/display/DOCS/Production+Notes

关于MongoDB 插入性能 - 带有几个索引的巨大表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9869232/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com