使用cbdocloader将JSON文件导入Couchbase

时间:2016-11-22 11:18:24

标签: json node.js import couchbase

我使用cbdocloader命令将不同的json文件导入couchbase数据库。如果我的文件内容json如下所示

{"displayName":"Login","controller":"AppCtrl","action":"login","endpoint":"","group":0,"_type":"Permission"}

工作正常。

但如果我的json内容 _id 它会自动将其从导入中排除,我想导入我的json,如下所示

{"_id":"3dfd4bb0-aff4-11e6-8a96-8598a3ef40c4","displayName":"Login","controller":"AppCtrl","action":"login","endpoint":"","group":0,"_type":"Permission"}

如何使用 cbdocloader ??

执行此操作

2 个答案:

答案 0 :(得分:1)

Couchbase Server 4.5以不同的方式处理_idhttps://github.com/couchbase/couchbase-cli/blob/4.5.0/pump_json.py#L41-L62

下一个版本将使用新的docloader,它不再使用它。您可以独立构建它:https://github.com/couchbase/docloader

export GOPATH=/tmp/gopath
mkdir -p $GOPATH
cd $GOPATH
go get github.com/couchbase/docloader/cmd/cbdocloader

它在

处生成单个静态二进制文件
./bin/cbdocloader

手册页也位于存储库中

man src/github.com/couchbase/docloader/man/man1/cbdocloader.1

您可以在Connect 2016上看到此新文档管理器的演示:https://www.youtube.com/watch?v=OlK9R5Fqmpo

答案 1 :(得分:0)

我得到的解决方案我在以下文件/opt/couchbase/lib/python/pump_json.py

中更改了条件“如果'_id'不在doc:中”