【问题标题】:ArangoDB - arangoimp on csv files is very slow on large datasetsArangoDB - csv 文件上的 arangoimp 在大型数据集上非常慢
【发布时间】:2017-04-28 23:02:31
【问题描述】:

我是 arango 的新手。我正在尝试将我的一些数据从 Neo4j 导入到 arango。 我正在尝试添加数百万个节点和边来存储各种人的播放列表数据。我有来自 neo4j 的 csv 文件。我运行了一个脚本来将节点的 csv 文件的格式更改为具有 _key 属性。并且边缘具有 _to 和 _from 属性。 当我在一个非常小的数据集上尝试这个时,一切都很完美,我可以在 UI 上看到图表并执行查询。宾果游戏!

现在,我正在尝试添加数百万行数据(每个 arangoimp 批次导入大约 100,000 行的 csv)。每批有 5 个集合(每个集合有一个不同的 csv 文件) 在大约 7-8 批这样的数据之后,系统突然变得很慢,没有响应并抛出以下错误:

  1. ERROR 错误消息:失败并出现错误:集合损坏 这只是随机出现的任何批次,尽管数据的格式与之前的批次完全相同

  2. 错误无法连接到端点'tcp://127.0.0.1:8529',数据库:'_system',用户名:'root' FATAL 从服务器收到错误:HTTP 401(未经授权)'

  3. 否则它只会持续处理几个小时而几乎没有任何进展

我猜这一切都与大量进口有关。有帖子说可能我的文件描述符太多了,不知道怎么处理。

我注意到的另一件事是,所有 5 个集合中最大的一个是最容易出错的那个(尽管其他的也有)。即使在不同的导入语句中,文件描述符是否仍然特定于某个集合?

有人可以帮我指出正确的方向吗?我不确定如何开始调试问题

提前谢谢你

【问题讨论】:

    标签: arangodb


    【解决方案1】:

    这里的问题是,就可用磁盘 I/O 而言,服务器不能超限。这种情况可能会受益于更多可用的 RAM。 系统还必须在导入时维护索引,这会随着集合中文档的数量增加复杂性。

    使用ArangoDB 3.4 we have improved Arangoimp to maximize throughput, without maxing out 应该可以解决这种情况并消除将导入数据拆分为块的必要性。

    不过,既然已经是CSV格式,就应该准备好,JSONL也是支持的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-18
      • 2012-03-31
      • 1970-01-01
      相关资源
      最近更新 更多