使用python批量导入arangodb中的.json文件

w46czmvw  于 2022-12-09  发布在  Go
关注(0)|答案(2)|浏览(233)

我有一个巨大的.json文件集合,其中包含数百或数千个文档,我想导入到arangodb集合。我可以使用python做吗?如果答案是肯定的,有没有人可以发送一个例子,说明如何从文件列表中做这件事?即:

for i in filelist:
    import i to collection

我已经阅读了文档,但我找不到任何类似的东西

c2e8gylq

c2e8gylq1#

所以经过大量的尝试和错误,我发现我已经找到了答案。所以我不需要导入. 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文件,并将它们导入到多个集合中。

e4eetjau

e4eetjau2#

我也遇到了同样的问题,虽然您的实现会略有不同,但您需要的答案(可能不是您正在寻找的答案)是使用“批量导入”功能。
由于ArangoDB没有“官方”Python驱动程序(据我所知),您将不得不仔细阅读其他来源,以给予如何解决此问题的好主意。

  • HTTP bulk import/export文档提供了curl命令,这些命令可以被巧妙地翻译成Python Web请求。
  • ArangoJS有一个bulk import函数,它处理对象数组,因此不需要特殊的处理或准备。

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

相关问题