分片技術(shù)的概念要比區(qū)塊鏈技術(shù)早得多,最早是在傳統(tǒng)的數(shù)據(jù)庫(kù)領(lǐng)域里面提出的,主要用于大型商業(yè)數(shù)據(jù)庫(kù)的優(yōu)化。其概念就是將大型數(shù)據(jù)庫(kù)中的數(shù)據(jù)劃分成很多數(shù)據(jù)分片(shard),再將這些數(shù)據(jù)分片分別存放在不同的服務(wù)器中,以減小每個(gè)服務(wù)器的數(shù)據(jù)訪問(wèn)壓力,從而提高整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的性能。
簡(jiǎn)單來(lái)說(shuō),分而治之是分片技術(shù)的核心思想。
而把分片技術(shù)運(yùn)用到區(qū)塊鏈網(wǎng)絡(luò)中的思想是將擁有許多節(jié)點(diǎn)的區(qū)塊鏈網(wǎng)絡(luò)劃分成若干個(gè)子網(wǎng)絡(luò),每個(gè)子網(wǎng)絡(luò)中包含一部分節(jié)點(diǎn),也就是一個(gè)“分片”(shard)。同時(shí)網(wǎng)絡(luò)中的交易也會(huì)被劃分到不同的“分片”中去處理,這樣每個(gè)節(jié)點(diǎn)只需要處理一小部分傳入的交易,不同的節(jié)點(diǎn)可以并行處理交易,即可增加交易處理和驗(yàn)證的并發(fā)度,從而提升整個(gè)網(wǎng)絡(luò)的吞吐量。
傳統(tǒng)的老牌公有鏈大部分都是單鏈結(jié)構(gòu),所有礦工都在相互競(jìng)爭(zhēng)去延伸下一個(gè)區(qū)塊。由于產(chǎn)生區(qū)塊的平均時(shí)間是固定的,例如比特幣平均每10分鐘產(chǎn)生一個(gè)區(qū)塊,隨著越來(lái)越多的礦工加入挖礦行列,挖抗難度得到提升,以保證每10分鐘產(chǎn)生一個(gè)區(qū)塊。但是,隨著投入更多的礦機(jī),整個(gè)系統(tǒng)的吞吐量并沒(méi)有得到提升。
在引入分片技術(shù)之后,隨著整個(gè)網(wǎng)絡(luò)算力的線性提升(即節(jié)點(diǎn)數(shù)增加),分片的數(shù)量也會(huì)增加,進(jìn)而提高了交易處理的并發(fā)度,整個(gè)網(wǎng)絡(luò)的吞吐量也會(huì)線性提升。這個(gè)特點(diǎn)被稱為可擴(kuò)展性,又被稱為水平擴(kuò)容屬性。分片網(wǎng)絡(luò)處理交易過(guò)程如下圖所示:
分片技術(shù)給區(qū)塊鏈網(wǎng)絡(luò)帶來(lái)了如下好處:
1.從理論上講,分片技術(shù)可以提高交易處理和確認(rèn)的并發(fā)度,進(jìn)而可以對(duì)整個(gè)網(wǎng)絡(luò)的吞吐量提高幾十倍甚至上百倍。
2.吞吐量成倍的增加,使得交易擁堵的問(wèn)題得以有效的解決,有助于轉(zhuǎn)賬手續(xù)費(fèi)的降低。
3.整個(gè)網(wǎng)絡(luò)的吞吐量大幅提升,改變了人們對(duì)于加密貨幣支付效率低的看法,這將很大程度上促進(jìn)dApp的發(fā)展,使得更多的dApp在分片網(wǎng)絡(luò)上運(yùn)行。雖然單筆交易手續(xù)費(fèi)降低了,但是總體會(huì)提升挖礦收益,從而形成良性循環(huán)。
4.經(jīng)典的以太坊公鏈狀態(tài)信息都存儲(chǔ)在區(qū)塊鏈上,每個(gè)節(jié)點(diǎn)將保存全部的狀態(tài)信息,這使得它的存儲(chǔ)空間變得非常昂貴。狀態(tài)分片具有很好的存儲(chǔ)空間可擴(kuò)展性,它的實(shí)現(xiàn)將極大地解決存儲(chǔ)空間昂貴的問(wèn)題。