【问题标题】:Load a large Collection on ArangoDB在 ArangoDB 上加载大型集合
【发布时间】:2016-07-25 13:16:01
【问题描述】:

我正在使用 ArangoDB 开展一个项目。这个项目意味着大数据(目前还不算多)作为单个集合中的 4000k 文档。

我一步步迁移数据,最后读取Collection数据没有问题。

因为周末,我们停止了 ArangoDB 和我们的机器。 当我们启动机器时,无法加载该集合的数据。

我们随后尝试:

  • 由 arangodb 客户端加载数据,但响应是一般错误'Collection error'
  • 从控制台转储数据:但响应是:Error: got invalid response from server: Could not connect to 'tcp://localhost:8529' 'connect() failed with #111 - Connection refused'

我们能做什么? 这个集合有很多索引,bucket 固定为 64。

编辑 我试图停止并重新开始 arangodb:问题仍然存在。 所以,我会排除这是一个服务器问题。 Collection 中可能有一些错误的配置(等待同步:false,bucket 64,journal size:32)?

【问题讨论】:

  • 您使用的是什么版本,您的环境是什么?当您尝试连接并从该集合中读取数据时,服务器进程是否会死机?顺便说一句:最好将此作为错误报告发布:github.com/arangodb/arangodb/issues
  • ArangoDB:2.8.7 OS:Ubuntu 14.04 Nodejs:4.4.2
  • 你能在/var/log/arangodb/*查看相关的日志信息吗?
  • 我已经检查过了。没有相关消息。 @dothebart
  • 能否升级到最新的2.8版本,看看是否还有错误?

标签: javascript database indexing arangodb


【解决方案1】:

通过更新到该发行系列的最新版本解决了最初的问题。

新问题是如何为索引选择存储桶。

桶是保存索引的内存区域。默认是有 8 个这样的桶。一旦一个桶装满,就会分配一个双倍大小的新桶,并复制现有结构。复制是有代价的,这会减慢索引建立或插入新项目的速度。

因此,如果您要使用的集合很大并且/或者有很多插入,那么在您的情况下,更大数量的存储桶可能会更好。您可能希望将存储桶数加倍,看看它是否更适合您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 2014-03-20
    • 1970-01-01
    • 1970-01-01
    • 2011-08-05
    • 1970-01-01
    相关资源
    最近更新 更多