Solidity

我們還需要集中數據庫來進行 Dapp 開發嗎?

  • July 30, 2022

這個問題一直在我腦海中浮現,我們是否需要為 PostgreSQL、MongoDB 等 Dapp 開發提供集中式數據庫,如果我們想儲存使用者的電子郵件並每次都向他們發送電子郵件怎麼辦?那些要求人們添加他們的電子郵件地址以獲取新聞信的 Dapp 是如何實現的,例如 Opensea 等等,他們是如何建構它的,所有東西都儲存在區塊鏈/乙太坊上嗎?我知道我們現在需要類似 gmail 的東西,因為我們仍處於 web3 的早期階段,人們只能通過 gmail 輕鬆獲得參與/與使用者聯繫。但我的問題是,在區塊鏈/乙太坊上建構我們的 dapp 時,我們是否完全放棄了中心化數據庫?

不,您肯定仍然需要集中式數據庫。

將數據寫入區塊鏈既昂貴又緩慢。閱讀是免費的,但速度很慢。你很可能不能使用區塊鏈作為你的主要數據儲存,除非你的項目是圍繞區塊鏈設計的。

像 Opensea 這樣的網站使用了大量的傳統數據庫,而區塊鏈只包含最重要的部分,這些部分也可以被外部方(例如使用者,直接)使用。外部各方無權訪問數據庫中的數據。

需要正常數據庫的一些原因:

  • 敏感數據:您不能將敏感數據儲存在公共區塊鏈中
  • 速度:讀取和寫入正常數據庫要快得多
  • 記錄區塊鏈元數據,例如索引合約事件,以便能夠回答諸如“地址 X 擁有哪些 NFT?”之類的查詢。
  • 更嚴格的訪問控制

引用自:https://ethereum.stackexchange.com/questions/132699