首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SQL数据库存储Dapp的数据是否有意义?

使用SQL数据库存储Dapp的数据是否有意义?
EN

Ethereum用户
提问于 2018-03-01 01:57:32
回答 4查看 3.3K关注 0票数 2

假设我想开发一个Dapp,我需要存储关于用户的不同信息。此信息不得公开,因为并非所有用户都可以查看存储的所有信息。使用集中式数据库是一种糟糕的解决方案吗?Dapp所有者是否应该使用DB运行服务器,以确保没有人能够访问所有存储的数据?

有什么完全分散的方法来解决这个问题?

EN

回答 4

Ethereum用户

发布于 2018-07-23 10:40:28

三个月前我也有同样的问题。我用IPFS商店开发了PoC。使用IPFS的优点是使用弹性搜索来查询它提供的功能。

票数 1
EN

Ethereum用户

发布于 2018-03-01 03:05:55

我会说是的。

理想的DAPP可能如下所示:

( a)用于存储的指规数(分散文件系统)

b)以太智能合同(分散的智能合同)

c) BigChainDB作为数据库(分散数据库)

现实情况是,在这个体系结构中有许多未知因素(例如,-oracles用于从BigChainDB到Ethereum的通信)。截至2018年3月,一个典型的DAPP并没有完全分散。

因此,数据库组件是一个更传统的数据库(NoSql或Sql),智能契约大多只存储部分数据库模式的主键。Ethereum公共网络上的存储非常非常昂贵(订单为1000's美元/Mb)

成本因素促使人们开始研究一种“多链”架构,以获得更便宜的存储成本,并使私人Ethereum更具吸引力。

票数 0
EN

Ethereum用户

发布于 2018-03-01 05:35:53

正如我在您的相关问题"您在哪里保存Dapp的应用程序数据?“中所写的,如果每个用户运行自己的数据库,其中包含自己的数据和管理对这些数据访问的服务外观的实例,您就可以实现分散化。链上您可以管理权限、关系和数据指纹。服务外观连接到区块链,以检查用户授权。DAPP连接到区块链,并且还能够聚合来自不同私有用户数据库的数据。此外,DAPP还可以通过IPFS提供服务。

  • 分散数据存储->每个用户都保存自己的数据
  • 分散数据访问->每个用户都管理对他的数据的访问
  • 通过IPFS分散DAPP托管
  • 通过区块链分散权限/关系管理

无论如何,让DAPP所有者管理集中DB中的所有数据不是一个好主意。这将与DAPP的概念相矛盾。

您是否应该使用SQL或NoSQL数据库的问题取决于使用情况,实际上与分散化方面无关。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/41298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档