使用 cbdocloader 将 JSON 文件导入 Couchbase
Import JSON file into Couchbase using cbdocloader
我使用 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 做到这一点??
Couchbase Server 4.5 以不同的方式对待 _id
:
https://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 上看到这个新的 docloader 的演示:https://www.youtube.com/watch?v=OlK9R5Fqmpo
我得到了解决方案,我在以下文件 /opt/couchbase/lib/python/pump_json.py
中更改了条件“if '_id' not in doc:”
我使用 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 做到这一点??
Couchbase Server 4.5 以不同的方式对待 _id
:
https://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 上看到这个新的 docloader 的演示:https://www.youtube.com/watch?v=OlK9R5Fqmpo
我得到了解决方案,我在以下文件 /opt/couchbase/lib/python/pump_json.py
中更改了条件“if '_id' not in doc:”