用python在arangodb中批量导入.json文件。

问题描述 投票:0回答:1

我有一个巨大的.json文件集合,其中包含数百或数千份文件,我想将其导入到arangodb集合中。如果答案是肯定的,谁能给我一个如何从文件列表中导入文件的例子?

for i in filelist:
    import i to collection

我读了文档,但我找不到类似的例子。

python document arangodb
1个回答
1
投票

所以在经过大量的试错后,我发现我面前有了答案。所以我不需要导入.json文件,我只需要读取它,然后进行文档的批量导入。代码是这样的。

a = db.collection('collection_name')
for x in list_of_json_files:
    with open(x,'r') as json_file:
        data = json.load(json_file)
        a.import_bulk(data)

所以其实很简单 在我的实现中,我是从多个文件夹中收集.json文件,并将它们导入到多个集合中。我使用的是python-arango 5.4.0驱动。


0
投票

我也有这个问题。 尽管你的实现会略有不同,但你需要的答案 (也许不是你要找的答案) 是使用 "批量导入 "功能。

由于 ArangoDB 没有一个 "官方的 "Python 驱动程序 (据我所知),你将不得不仔细研究其他来源,以给你一个如何解决这个问题的好主意。

  • 这个 HTTP批量导入导出 文档提供 curl 命令,可以整齐地翻译成Python web请求。 也请参见关于 标题和数值.

  • ArangoJS有一个 大量进口 函数,它可以处理一个对象数组,所以不需要特殊的处理或准备。

我还使用了 arangoimport 工具的巨大作用。 它是命令行的,所以它可以从Python中控制,或者在脚本中独立使用。 对我来说,这里的关键是确保我的数据是在 JSONL 或 "JSON Lines "格式(文件的每一行都是一个自足的JSON对象,没有边界数组或逗号分隔符)。

© www.soinside.com 2019 - 2024. All rights reserved.