TMT观察网_独特视角观察TMT行业

周迅:智能合約數據存儲的三種解決方案區塊鏈

標準共識 ?|?07月18日, 2018 2018-07-18 18:55
分享到:
導讀

2018 年 7 月 14 日,標準共識成功舉辦了首期線上技術分享會,主講人周迅就「智能合約的數據存儲」與標準共識技術評審團成員及 20 位嘉...

2018 年 7 月 14 日,標準共識成功舉辦了首期線上技術分享會,主講人周迅就「智能合約的數據存儲」與標準共識技術評審團成員及 20 位嘉賓成員分享了技術經驗。

周迅是一家區塊鏈公司的 CEO,對以太坊有著深刻的理解。目前團隊核心目標是做一個工程師易上手的實用版以太坊。以下整理自周迅的分享內容。

只發 Token 無意義

我之前在一家媒體分享過我認為 DApp 開發平臺的共識機制應該是什么樣子。我說我們核心解決的問題是:如何讓開發者把業務也放到鏈上,而不只是發個 Token,把「積分」上鏈了。

今天我們就先不討論邏輯上鏈的必要性,我們從技術上考慮怎么讓邏輯上鏈。

既然是區塊鏈的數據存儲,默克爾證明就必不可少。默克爾證明保證了數據的可驗證性和永久保存性??沈炞C就是提供一個根,就可以得到一個 key 對應的 value,永久保存性就是每次對默克爾樹進行更新的時候,舊的樹根都是可以讀取所有的數據的。

雖然默克爾的功能非常強大,但是默克爾證明有個很大的問題:只能存儲 Key-Value 類型的數據,雖然可以在數據序列化和反序列化的時候做一些擴展,但是功能非常有限。

數據儲存的三種解決方案

我們團隊就在想:是否可以讓 DApp 的開發者可以使用 SQL、Mongo 這樣的數據庫進行 DApp 的開發呢?

然后調研了三個方案:

1、類似于 EOS 的 MySQL 插件和 Mongo 插件,這種實現起來是最簡單的,所有的工作都是交給開發者去做,自己這邊只需要做一個連接管理就可以了。

2、對默克爾字典樹進行更新,葉子節點可以存儲多列數據(List<Object>)、可以存儲 Map,也可以存儲簡單的 value,這種情況下如果 len(list)特別大的情況下,不會像只存儲一個 byte,然后反序列化為 list 有特別大的內存和 CPU 開銷。

3、默克爾樹只存儲簡單 KV,在上層封裝一層 SQL layer。

三種解決方案的思考路徑

我下面先說第三種方案:不知道大家聽說過 pingcap 沒有,我們主要研究的方案就是他們的 tikv 和 tidb,我們使用默克爾字典樹替代 tikv,tidb 就可以直接使用了,只需要修改底層數據讀取的相關邏輯即可,因為 tidb 讀取 tikv 的時候其實也是有多個 tikv 服務器的,所以默克爾樹的讀取效率可以說不受太大的影響。

但是,第三種方案有一個特別大問題,對于開發者來說,我們封裝的 SQL layer 只是個 SDK,對于輕客戶端來說,無法驗證數據的有效性。

因為輕節點還是要把對應的默克爾樹讀一遍才知道數據是否是正確。

第三種方案是我們研究的時間最長的一種方案,但最后發現,對于輕客戶端來說這個基本上沒有太大的意義的,所以選擇了放棄。

第二種方案對默克爾樹的修改比較簡單,也比較能實現復雜邏輯的方案。

這種方案對于開發者來說也是非常友好的,它可以很方便的讓開發者把一個可能有很多條數據的 list 拆分開去存儲。

當然,它的問題在于在根據非主鍵查找/更新 list 的時候效率會比較低。對于這一方案,我們團隊目前一直在研究。

接下來講第一種方案。它就是直接使用 MySQL、Mongo 這種數據庫的方案,我們考慮過使用網絡數據庫,但是可能是有很大問題的。

比如某一個節點對數據庫服務器的網絡中斷了,可能就會出現一些問題。所以,我們在前期考慮的是使用嵌入式的 SQL 數據庫,比如 sqlite。

對于第一種方案,我們也在考慮的原因是,我們是把 sql 這種類型的數據庫當成了一個節點的「私有空間」,在一些數據不方便公開的時候(比如斗地主的隨機數),是不方便寫到默克爾樹里去的,這個時候就可以放在SQL 里面,當適合更新到默克爾樹里面的時候(一局斗地主結束),再把數據從 SQL 中讀出來,寫到第二種方案的默克爾字典樹里面。

總結

1、更新后的默克爾字典樹用于存儲可校驗的公開透明的數據;

2、嵌入式的 sql 數據庫用于作為私有的存儲空間,讓開發者存儲一些不適合公開的數據或者帶有條件查找的數據,帶有條件查找的數據可以指向默克爾根,方便輕節點對數據進行校驗;

這些其實是業務邏輯的數據存儲。當然,除了業務邏輯的數據存儲,可能還會有一些文件的存儲需求;這個時候可能就需要一些第三方的存儲了,比如 IPFS。

需要說明的是,IPFS 雖然做了很多工作,但是無法實現文件的分區高可用,我認為可能適合存儲一些不是那么重要的數據,電子合同之類的肯定是不能存儲在 IPFS 里面的(雖然文件丟失的可能性基本為 0,但是某一個時間內不可用的可能性還是有的)。

預告:標準共識技術分享會②

本周六(7 月 21 日)21 時-22 時,標準共識將進行第二期技術分享會,分享人為梁培利。

梁培利目前是一家區塊鏈公司的核心工程師、知乎專欄「全棧區塊鏈」作者。所在公司為國內最早實現跨鏈技術的區塊鏈公司。本期分享的主題為「基于 JavaScript 開發 DApp」。

愿意在區塊鏈行業扎根的技術人員,請掃描下方二維碼,經我們運營人員審核后入群。

標準共識技術分析會2期

數據 存儲 方案 默克爾 技術
分享到:

1.TMT觀察網遵循行業規范,任何轉載的稿件都會明確標注作者和來源;
2.TMT觀察網的原創文章,請轉載時務必注明文章作者和"來源:TMT觀察網",不尊重原創的行為TMT觀察網或將追究責任;
3.作者投稿可能會經TMT觀察網編輯修改或補充。


專題報道

主站蜘蛛池模板: 硫酸钡厂家_高光沉淀硫酸钡价格-河南钡丰化工有限公司 | 户外-组合-幼儿园-不锈钢-儿童-滑滑梯-床-玩具-淘气堡-厂家-价格 | 厂房出租_厂房出售_产业园区招商_工业地产&nbsp;-&nbsp;中工招商网 | UV固化机_UVLED光固化机_UV干燥机生产厂家-上海冠顶公司专业生产UV固化机设备 | 超声波乳化机-超声波分散机|仪-超声波萃取仪-超声波均质机-精浩机械|首页 | 附着力促进剂-尼龙处理剂-PP处理剂-金属附着力处理剂-东莞市炅盛塑胶科技有限公司 | 校园文化空间设计-数字化|中医文化空间设计-党建|法治廉政主题文化空间施工-山东锐尚文化传播公司 | 合肥白癜风医院_[治疗白癜风]哪家好_合肥北大白癜风医院 | 泥浆在线密度计厂家-防爆数字压力表-膜盒-远传压力表厂家-江苏大亚自控设备有限公司 | 防火卷帘门价格-聊城一维工贸特级防火卷帘门厂家▲ | 广州办公室设计,办公室装修,写字楼设计,办公室装修公司_德科 | 网络推广公司_网络营销方案策划_企业网络推广外包平台-上海澜推网络 | 湖南印刷厂|长沙印刷公司|画册印刷|挂历印刷|台历印刷|杂志印刷-乐成印刷 | 山东石英砂过滤器,除氟过滤器「价格低」-淄博胜达水处理 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 档案密集架_电动密集架_移动密集架_辽宁档案密集架-盛隆柜业厂家现货批发销售价格公道 | 电动液压篮球架_圆管地埋式篮球架_移动平箱篮球架-强森体育 | 脉冲布袋除尘器_除尘布袋-泊头市净化除尘设备生产厂家 | 高速龙门架厂家_监控杆_多功能灯杆_信号灯杆_锂电池太阳能路灯-鑫世源照明 | 悬浮拼装地板_幼儿园_篮球场_悬浮拼接地板-山东悬浮拼装地板厂家 | 铸铁平台,大理石平台专业生产厂家_河北-北重机械 | 车辆定位管理系统_汽车GPS系统_车载北斗系统 - 朗致物联 | 工业硝酸钠,硝酸钠厂家-淄博「文海工贸」 | 通辽信息港 - 免费发布房产、招聘、求职、二手、商铺等信息 www.tlxxg.net | 流变仪-热分析联用仪-热膨胀仪厂家-耐驰科学仪器商贸 | 钢绞线万能材料试验机-全自动恒应力两用机-混凝土恒应力压力试验机-北京科达京威科技发展有限公司 | 浙江华锤电器有限公司_地磅称重设备_防作弊地磅_浙江地磅售后维修_无人值守扫码过磅系统_浙江源头地磅厂家_浙江工厂直营地磅 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 洗瓶机厂家-酒瓶玻璃瓶冲瓶机-瓶子烘干机-封口旋盖压盖打塞机_青州惠联灌装机械 | 密集架-手摇-智能-移动-价格_内蒙古档案密集架生产厂家 | 范秘书_懂你的范文小秘书| MTK核心板|MTK开发板|MTK模块|4G核心板|4G模块|5G核心板|5G模块|安卓核心板|安卓模块|高通核心板-深圳市新移科技有限公司 | 防火门-专业生产甲级不锈钢钢质防火门厂家资质齐全-广东恒磊安防设备有限公司 | 皮带式输送机械|链板式输送机|不锈钢输送机|网带输送机械设备——青岛鸿儒机械有限公司 | 披萨石_披萨盘_电器家电隔热绵加工定制_佛山市南海区西樵南方综合保温材料厂 | 高温链条油|高温润滑脂|轴承润滑脂|机器人保养用油|干膜润滑剂-东莞卓越化学 | 塑料异型材_PVC异型材_封边条生产厂家_PC灯罩_防撞扶手_医院扶手价格_东莞市怡美塑胶制品有限公司 | 食品质构分析仪-氧化诱导分析仪-瞬态法导热系数仪|热冰百科 | 楼承板-开口楼承板-闭口楼承板-无锡海逵 | 钢绞线万能材料试验机-全自动恒应力两用机-混凝土恒应力压力试验机-北京科达京威科技发展有限公司 |