为快速查询数据、使用排序sort字段等需要创建索引。
创建索引有4种方式:
1.命令行
2.couchdb web交互页面点击“All Documents”右边的加号
3.http发送方法为get 、body为json格式的报文
4.放置在链码中在链码安装更新的时候创建
接下来开始介绍第4中放置在链码中的方式
-
在main.go的同级目录下创建文件META-INF\statedb\couchdb\indexes
image.png
-
在该indexes目录下创建.json文件,文件名随便定。.json文件个数没有限制。
image.png -
编辑该json文件,格式如下
{
"index": {
"fields": [
"fileId"
]
},
"ddoc": "fileIdIndex",
"name": "fileId-json-index",
"type": "json"
}
fields中存放的是索引的关键字,可以有多个索引;ddoc是设置生成数据的_id ;name随便定
- 在fabric环境中安装链码。此时couchdb数据库中已经添加了刚刚的索引区块。
{
"_id": "_design/fileIdIndex",
"_rev": "3-0852518a185fcac226fbcf7e59d56e61",
"language": "query",
"views": {
"fileId-json-index": {
"map": {
"fields": {
"fileId": "asc"
},
"partial_filter_selector": {}
},
"reduce": "_count",
"options": {
"def": {
"fields": [
"fileId"
]
}
}
}
}
}
- 此时可以成功执行排序语句
{
"selector": {},
"sort": [
{
"fileId": "asc"
}
]
}
网友评论