區(qū)塊鏈和數(shù)據(jù)庫在數(shù)據(jù)處理和存儲方式上有著根本的區(qū)別,這些區(qū)別意味著這兩者在技術(shù)上是互補(bǔ)的關(guān)系,而非競爭對手。
區(qū)塊鏈被大肆炒作,連賣菜的大媽也在談?wù)搮^(qū)塊鏈、數(shù)字貨幣,在輿論場上,區(qū)塊鏈占據(jù)了絕對性的主導(dǎo)地位,場面已經(jīng)失控。盡管區(qū)塊鏈?zhǔn)且豁?xiàng)讓數(shù)據(jù)生態(tài)系統(tǒng)更安全、更可信、更可驗(yàn)證的神奇技術(shù),但它并不是什么萬能藥。在區(qū)塊鏈的大肆炒作中,尤其有一個(gè)錯(cuò)誤的觀點(diǎn),就是:區(qū)塊鏈作為可驗(yàn)證的記錄系統(tǒng),因此,就可驗(yàn)證的記錄系統(tǒng)而言,數(shù)據(jù)庫已經(jīng)被淘汰了!其實(shí),這個(gè)觀點(diǎn)完全是錯(cuò)誤的。區(qū)塊鏈和數(shù)據(jù)庫是兩種不同類型的記錄系統(tǒng),事實(shí)上,它們是互補(bǔ)的。
區(qū)塊鏈的好處和挑戰(zhàn)
市面上有許多不同的區(qū)塊鏈技術(shù)和網(wǎng)絡(luò),它們都有一個(gè)共同的基本特征:“事務(wù)”記錄都不存儲在一個(gè)數(shù)據(jù)庫中。相反,交易的共識是記錄在生態(tài)系統(tǒng)中的整個(gè)參與者網(wǎng)絡(luò)中。
區(qū)塊鏈?zhǔn)且粋€(gè)不可變的分布式事務(wù)記錄。它使用加密算法,以一種安全的方式在一組各方之間達(dá)成共識,從而使交易鏈中的各方對每一筆交易都有準(zhǔn)確的記錄。沒有一個(gè)中央存儲庫是由單方保護(hù)的,否則,它可能會為了自己的利益而篡改數(shù)據(jù)庫。區(qū)塊鏈?zhǔn)侵档眯刨嚨模驗(yàn)樗姆植际侥P汀K是如何鏈接到鏈上的,以及它的一致性算法,使得改變它的成本之高,令人望而卻步。
區(qū)塊鏈的計(jì)算量很大。根據(jù)設(shè)計(jì),用于產(chǎn)生共識的加密算法需要進(jìn)行大量的工作。因此,人們在減少計(jì)算費(fèi)用、相應(yīng)的加密貨幣費(fèi)用和電力費(fèi)用上投入了大量的精力。一種稱為“錨定”(anchoring)的方法,該方法減少了存儲在鏈上的數(shù)據(jù)量。在鏈上,事務(wù)被分組、哈希并組織成帶時(shí)間戳的區(qū)塊,以便包含到區(qū)塊鏈中。然后,在區(qū)塊鏈上指示數(shù)據(jù)錨定位置的收據(jù)存儲在數(shù)據(jù)庫或其他持久存儲中,使任何事務(wù)都可以驗(yàn)證。
這種方法的一個(gè)關(guān)鍵方面是,事務(wù)中涉及的數(shù)據(jù)并沒有“存儲”在錨中。錨只存儲數(shù)據(jù)的加密哈希。錨定用于根據(jù)哈希驗(yàn)證原始數(shù)據(jù),并確定何時(shí)將其提交到區(qū)塊鏈,但不用于存儲數(shù)據(jù)。這實(shí)際上就是一個(gè)記錄系統(tǒng),因?yàn)樗涗浟耸聞?wù)數(shù)據(jù)的哈希,其完整性任何人都可以隨時(shí)進(jìn)行驗(yàn)證。這就提供了一個(gè)獨(dú)立的信任來源,同時(shí)還保持了機(jī)密數(shù)據(jù)的隱私,即使在公共區(qū)塊鏈上也是如此。
區(qū)塊鏈應(yīng)用
區(qū)塊鏈支持哪些應(yīng)用?它們分為以下三類:
智能合約確保基于預(yù)先確定的規(guī)則進(jìn)行資產(chǎn)的一致轉(zhuǎn)移。
智能資產(chǎn)確保任何標(biāo)記化資產(chǎn)的所有狀態(tài)可在各方之間跟蹤、驗(yàn)證和結(jié)算。
智能物聯(lián)網(wǎng)確保設(shè)備生成的信號未被篡改,并反映所感知的真實(shí)值。
數(shù)據(jù)庫應(yīng)用
數(shù)據(jù)庫與區(qū)塊鏈的不同之處在于,數(shù)據(jù)庫是明確地存儲數(shù)據(jù),而不僅僅是哈希。數(shù)據(jù)庫支持兩種工作負(fù)載:運(yùn)行工作負(fù)載(operational workloads)和分析工作負(fù)載(analytical workloads)。
操作數(shù)據(jù)庫,也稱為聯(lián)機(jī)事務(wù)處理(Online Transactional Processinig,OLTP),為某些應(yīng)用提供了支持。例如,欺詐爭議解決系統(tǒng),該系統(tǒng)允許呼叫中心代理能夠幫助客戶在一秒或更短的時(shí)間內(nèi)審查金融交易并就這些交易提出爭議。要實(shí)現(xiàn)這一點(diǎn),就需要特殊的數(shù)據(jù)結(jié)構(gòu)和算法,才能夠非常快速地同時(shí)處理許多用戶的數(shù)據(jù)。
在線分析處理(Online Analytical Processing,OLAP)系統(tǒng)負(fù)責(zé)審查歷史事務(wù)并從中獲得見解或生成預(yù)測的機(jī)器學(xué)習(xí)模型。這些系統(tǒng)專門用于對數(shù)據(jù)進(jìn)行排序和計(jì)算指標(biāo),例如求和、平均值。這需要高吞吐量才能做到。
現(xiàn)在出現(xiàn)了一種新型數(shù)據(jù)庫,可以將OLTO、OLAP和機(jī)器學(xué)習(xí)集成到同一個(gè)平臺上,稱為在線預(yù)測處理(online predictive processing,OLPP)。(譯注:Splice Machine就提供了一個(gè)OLPP平臺)
例如,可以考慮以下三個(gè)用例:
客戶服務(wù)呼叫中心:通過電話、網(wǎng)絡(luò)或移動應(yīng)用等渠道,呼叫中心代理在接到訂單后幾秒內(nèi)就對客戶的查詢做出響應(yīng)。
個(gè)性化:使用機(jī)器學(xué)習(xí)模型,可以預(yù)測客戶即將采取何種行動。
預(yù)測維護(hù):使用機(jī)器學(xué)習(xí)模型,預(yù)測現(xiàn)場設(shè)備何時(shí)可能出現(xiàn)停機(jī)故障。
以上談到的這些用例,都需要一個(gè)數(shù)據(jù)庫才能完成,而這些用例區(qū)塊鏈根本無法做到。
最后的話
那些數(shù)據(jù)庫被淘汰的言論實(shí)在太夸張了!區(qū)塊鏈確實(shí)可能會徹底改變事務(wù)的完整性,但是數(shù)據(jù)庫仍將繼續(xù)支持關(guān)鍵任務(wù)應(yīng)用,分析這些應(yīng)用,并作為人工智能學(xué)習(xí)的核心。區(qū)塊鏈和數(shù)據(jù)庫雙劍合璧,一起為許多垂直領(lǐng)域提供了強(qiáng)大的組合。