這個故事還是要從比特幣談起
比特幣這個電子現金系統是同時去中介化(個人與個人之間的電子現金無須可信第三方中介的介入)和去中心化(由某個機構負責維護)的(交易雙方可以在無須建立信任關系的前提下完成交易)
哈希函數:將任意長的字符串,轉變成固定長度的輸出(計算過程不能太復雜),只要輸入字符串發生微小變化,哈希函數的輸出就會完全不同。
區塊鏈:把大的東西切分成很多個區塊進行存儲,只要其中有一個東西被篡改,下邊的數據都不一樣,就會被發現
采用區塊鏈(數據結構 哈希函數),保障賬本不能被篡改,采用數字簽名技術,保證隻有自己才能夠使用自己的賬戶,采用p2p網絡和pow共識機制,保證去中心化的運作方式
區塊鏈是利用塊鏈式數據結構來驗證與存儲數據,利用分佈式節點共識算法來生成和更新數據,利用密碼學的方式保證數據傳輸和訪問安全的一種全新的分佈式基礎架構與計算機范式。
三要素:
區塊鏈的本質就是分佈式賬本,是一種數據庫。
區塊鏈用哈希算法實現信息不可篡改,用公鑰,私鑰來標識身份,以去中心化和去中介化的方式,來集體維護一個可靠數據庫。
大數據與區塊鏈的區別主要表現在以下幾個方面。
(1)數據量。
區塊鏈技術是分佈式數據存儲、點對點傳輸、共識機制、加密算法等計算機技術的新型應用模式。
區塊鏈處理的數據量小,具有細致的處理方式。
而大數據管理的是海量數據,要求廣度和數量,處理方式上會更粗糙。
(2)結構化和非結構化。
區塊鏈是結構定義嚴謹的塊,通過指針組成的鏈,是典型的結構化數據,而大數據需要處理的更多的是非結構化數據。
(3)獨立和整合。
區塊鏈系統為保證安全性,信息是相對獨立的,而大數據的重點是信息的整合分析。
(4)直接和間接。
區塊鏈是一個分佈式賬本,本質上就是一個數據庫,而大數據指的是對數據深度分析和挖掘,是一種間接的數據。
(5)CAP理論。
C(Consistency)是一致性,它是指任何一個讀操作總是能夠讀到之前完成的寫操作的結果,也就是在分佈式環境中,多點的數據是一致的。
A(Availability)是可用性,它是指快速獲取數據,可以在確定的時間內返回操作結果。
P(Tolerance of Network Partition)是分區容忍性,它是指當出現網絡分區的情況時(即系統中的一部分節點無法和其他節點進行通信),分離的系統也能夠正常運行。
CAP理論告訴我們,一個分佈式系統不可能同時滿足一致性、可用性和分區容忍性這3個需求,最多隻能同時滿足其中2個,正所謂『魚和熊掌不可兼得』。
大數據通常選擇實現AP,區塊鏈則選擇實現CP。
(6)基礎網絡。
大數據底層的基礎設施通常是計算機集群,而區塊鏈的基礎設施通常是P2P網絡。
(7)價值來源。
對於大數據而言,數據是信息,需要從數據中提煉得到價值。
而對於區塊鏈而言,數據是資產,是價值的傳承。
(8)計算模式。
在大數據的場景中,是把一件事情分給多個人做,比如,在MapReduce計算框架中,一個大型任務會被分解成很多個子任務,分配給很多個節點同時去計算。
而在區塊鏈的場景中,是讓多個人重復做一件事情,比如,P2P網絡中的很多個節點同時記錄一筆交易。