我是超级账本的新手,想知道在哪里可以找到与超级账本中的数据库如何工作相关的文档。
通过查看差异示例,它似乎是一个简单的键值存储。但是,我目前正在开发一个 POC,我们需要将文档存储到超级账本中,这意味着我们应该能够对它们进行索引,以便查询和检索所需的数据。
是否有一些库允许将文档(类似于 lucene/elasticsearch)索引到超级账本数据库中?
我是超级账本的新手,想知道在哪里可以找到与超级账本中的数据库如何工作相关的文档。
通过查看差异示例,它似乎是一个简单的键值存储。但是,我目前正在开发一个 POC,我们需要将文档存储到超级账本中,这意味着我们应该能够对它们进行索引,以便查询和检索所需的数据。
是否有一些库允许将文档(类似于 lucene/elasticsearch)索引到超级账本数据库中?
Fabric v1.0 具有键/值数据模型,以及基于 CouchDB 的文档数据模型选项。将 CouchDB 与 JSON 数据一起使用时,您可以从链代码中查询数据内容中的各个字段。
即使使用键/值数据模型,您也可以在链代码中将自己的“索引”建模为解决查询的键。
请参阅演示两种数据模式的 Fabric v1.0 marbles02 链代码示例:
由 RocksDB 支持的 Fabric 中的键值存储。您可以尝试使用与此数据库一起使用的库。
请记住,Hyperledger 是为隐私而设计的。在生产环境中security.privacy: true
,文档将被加密并且无法建立索引。
管理文件的最佳方法是将文件的哈希存储在区块链中,授权实体将能够验证文件是否有效。只要正确实施访问控制机制,您就可以使用 IPFS 或 Google Drive 或任何其他机制来共享数据。