风险提示:理性看待区块链,提高风险意识!
技术指南:Fabric状态数据库如何实现?
首页 > 币界资讯 > 区块链新闻 2019-01-16 17:01:30
币界网报道:

目标

1.了解 Hyperledger Fabric 中所支持的数据库

2.掌握 CouchDB 数据库的实现

任务实现

9.2.1 CouchDB数据库介绍

在 Hyperledger Fabric 项目中,目前可以支持的状态数据库有两种:

LevelDB:LevelDB 是嵌入在 Peer 中的默认键值对(key-value)状态数据库。

CouchDB:CouchDB 是一种可选的替代 levelDB 的状态数据库。与 LevelDB 键值存储一样,CouchDB 不仅可以根据 key 进行相应的查询,还可以根据不同的应用场景需求实现复杂查询。

CouchDB 是前 IBM 的 Lotus Notes 开发者 Damien Katz 创建于2005年的一个项目,定义为“面向大规模可扩展对象数据库的存储系统”,在2008年成为了 Apache 的项目。2010年7月发布第一个稳定版,目前官网的最新版本为 2.2.0。

Apache CouchDB 是一种新一代数据库管理系统之一,具有核心概念简单(但功能强大)且易于理解的特征,使用 JSON 并支持二进制数据以满足所有数据存储需求。具有高可用性和容错存储引擎,将数据的安全性放在第一位;适用于现代网络和移动应用程序,可以高效地实现数据分发。

后期 Hyperledger Fabric 正式版本中可能会支持更多的数据库管理系统。

9.2.2 CouchDB在Hyperledter Fabric中的具体实现

下面我们使用 CouchDB 容器来实现对 CouchDB 的使用。

以一个票据查询功能实现为例,链码中提供两个查询方法,根据持票人的证件号码查询所有票据与根据持票人的证件号码查询待签收票据。链码部署后调用自定义的 billInit 方法进行数据的初始化,然后分别调用两个查询方法进行测试。实现步骤如下:

首先定义一个票据的结构体文件:domain.go

FAQ

1.在 Hyperledger Fabric 中,状态数据库使用 LevelDB 与 CouchDB 有什么区别?

如果状态数据库使用 CouchDB 的话,具有最大的一个特点:可以使用富查询实现对状态的检索,但是需要自定义富查询字符串,该字符串必须符合 CouchDB 查询语法结构。

2.如何使用 CouchDB?

在 Hyperledger Fabric 环境中,如果需要使用 CouchDB,那么必须在 docker-compose.yml/docker-compose.yaml或自定义的配置文件中声明 CouchDB 容器,然后在各个 peer 容器中 environment 属性中声明相关环境内容,且在 depends_on 属性中指定声明的 CouchDB 容器的名称。

未经授权禁止转载、改编,转载请注明出处!

上一篇: ETC事件后续:黑客已返还所有资金,2019年会成为51%攻击之年吗?
下一篇: 放长眼,走出君士坦丁堡一小步,以太坊还有大未来
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
61496.17 USDT
¥446,622.08
-0.32%
Solana
144.54 USDT
¥1,049.74
-1.96%
Curve
0.2938 USDT
¥2.13
-0.54%
Filecoin
4.5376 USDT
¥32.95
+1.84%
Beta Finance
0.07798 USDT
¥0.57
-17.71%
柚子
0.5963 USDT
¥4.33
+1.84%
狗狗币
0.1269 USDT
¥0.92
+2.42%
Conflux
0.1672 USDT
¥1.21
-0.77%
Shiba Inu
1.734E-5 USDT
¥0.00
-0.91%
Terra Classic
8.356E-5 USDT
¥0.00
+0.63%
Arweave
26.2605 USDT
¥190.72
-2.62%
dYdX
1.4265 USDT
¥10.36
+0.99%
最新快讯
更多
美国政府地址转移11.84枚BTC,约72.6万美元
2024-06-28 21:31:24
CurveFinance采用crvUSD进行费用分配
2024-06-28 21:29:26
尼日利亚SEC对当地加密货币产业的估值为4亿美元
2024-06-28 21:23:34
FET跌破1.5美元
2024-06-28 21:18:36
币界网最新行情晚报:PEOPLE价格达0.08751美元/枚,日内跌幅-3.20%
2024-06-28 21:10:55
Nostra首席执行官在代币空投11天后辞职
2024-06-28 21:09:29
币界网最新行情晚报:UNI价格达9.321美元/枚,日内跌幅-3.04%
2024-06-28 21:06:05
下载币界网APP