區(qū)塊鏈中數(shù)據(jù)的重要性
數(shù)據(jù)是區(qū)塊鏈技術(shù)的關(guān)鍵,是開發(fā)去中心化應(yīng)用程序 (dApp) 的基礎(chǔ)。雖然目前的大部分討論都圍繞著數(shù)據(jù)可用性 (DA)——確保每個(gè)網(wǎng)絡(luò)參與者都可以訪問最近的交易數(shù)據(jù)進(jìn)行驗(yàn)證——但還有一個(gè)同樣重要的方面經(jīng)常被忽視:數(shù)據(jù)可訪問性。
在模塊化區(qū)塊鏈時(shí)代,DA 解決方案已變得不可或缺。這些解決方案確保所有參與者都可以使用交易數(shù)據(jù),從而實(shí)現(xiàn)實(shí)時(shí)驗(yàn)證并維護(hù)網(wǎng)絡(luò)的完整性。然而,DA 層的功能更像是廣告牌而不是數(shù)據(jù)庫。這意味著數(shù)據(jù)不會(huì)無限期地存儲(chǔ);它會(huì)隨著時(shí)間的推移而被刪除,就像廣告牌上的海報(bào)最終會(huì)被新海報(bào)取代一樣。
另一方面,數(shù)據(jù)可訪問性側(cè)重于檢索歷史數(shù)據(jù)的能力,這對(duì)于開發(fā) dApp 和進(jìn)行區(qū)塊鏈分析至關(guān)重要。這一方面對(duì)于需要訪問過去數(shù)據(jù)以確保準(zhǔn)確表示和執(zhí)行的任務(wù)至關(guān)重要。盡管數(shù)據(jù)可訪問性很重要,但討論得較少,但它與數(shù)據(jù)可用性一樣重要。兩者在區(qū)塊鏈生態(tài)系統(tǒng)中發(fā)揮著不同但互補(bǔ)的作用,全面的數(shù)據(jù)管理方法必須解決這兩個(gè)問題,以支持強(qiáng)大而高效的區(qū)塊鏈應(yīng)用程序。
區(qū)塊鏈數(shù)據(jù)之前是如何檢索的
自誕生以來,區(qū)塊鏈就徹底改變了基礎(chǔ)設(shè)施,并推動(dòng)了游戲、金融和社交網(wǎng)絡(luò)等各個(gè)領(lǐng)域的去中心化應(yīng)用程序 (dApp) 的創(chuàng)建。然而,構(gòu)建這些 dApp 需要訪問大量區(qū)塊鏈數(shù)據(jù),這既困難又昂貴。
對(duì)于 dApp 開發(fā)者來說,一種選擇是托管和運(yùn)行自己的存檔 RPC 節(jié)點(diǎn)。這些節(jié)點(diǎn)從一開始就存儲(chǔ)所有歷史區(qū)塊鏈數(shù)據(jù),允許完全訪問數(shù)據(jù)。但是,維護(hù)存檔節(jié)點(diǎn)的成本很高,查詢能力也有限,因此無法以開發(fā)人員需要的格式查詢數(shù)據(jù)。雖然運(yùn)行較便宜的節(jié)點(diǎn)是一種選擇,但這些節(jié)點(diǎn)的數(shù)據(jù)檢索能力有限,這可能會(huì)妨礙 dApp 的運(yùn)行。
另一種方法是使用商業(yè) RPC(遠(yuǎn)程過程調(diào)用)節(jié)點(diǎn)提供商。這些提供商負(fù)責(zé)節(jié)點(diǎn)的成本和管理,并通過 RPC 端點(diǎn)提供數(shù)據(jù)。公共 RPC 端點(diǎn)是免費(fèi)的,但有速率限制,可能會(huì)對(duì) dApp 的用戶體驗(yàn)產(chǎn)生負(fù)面影響。私有 RPC 端點(diǎn)通過減少擁塞提供更好的性能,但即使是簡(jiǎn)單的數(shù)據(jù)檢索也需要大量的來回通信。這使得它們請(qǐng)求繁重,對(duì)于復(fù)雜的數(shù)據(jù)查詢效率低下。此外,私有 RPC 端點(diǎn)通常難以擴(kuò)展,并且缺乏跨不同網(wǎng)絡(luò)的兼容性。
更好的替代方案:區(qū)塊鏈索引器
區(qū)塊鏈索引器在組織鏈上數(shù)據(jù)并將其發(fā)送到數(shù)據(jù)庫以便于查詢方面起著至關(guān)重要的作用,這就是為什么它們經(jīng)常被稱為「區(qū)塊鏈的谷歌」。它們的工作原理是索引區(qū)塊鏈數(shù)據(jù)并通過類似于 SQL 的查詢語言(使用 GraphQL 等 API)使其隨時(shí)可用。通過提供查詢數(shù)據(jù)的統(tǒng)一界面,索引器允許開發(fā)人員使用標(biāo)準(zhǔn)化查詢語言快速準(zhǔn)確地檢索所需的信息,從而大大簡(jiǎn)化了流程。
不同類型的索引器通過各種方式優(yōu)化數(shù)據(jù)檢索:
- 完整節(jié)點(diǎn)索引器:這些索引器運(yùn)行完整的區(qū)塊鏈節(jié)點(diǎn)并直接從中提取數(shù)據(jù),確保數(shù)據(jù)完整準(zhǔn)確,但需要大量的存儲(chǔ)和處理能力。
- 輕量級(jí)索引器:這些索引器依靠完整節(jié)點(diǎn)根據(jù)需要獲取特定數(shù)據(jù),從而減少存儲(chǔ)要求但可能會(huì)增加查詢時(shí)間。
- 專用索引器:這些索引器專門針對(duì)某些類型的數(shù)據(jù)或特定的區(qū)塊鏈,可優(yōu)化特定用例的檢索,例如 NFT 數(shù)據(jù)或 DeFi 交易。
- 聚合索引器:這些索引器從多個(gè)區(qū)塊鏈和來源提取數(shù)據(jù),包括鏈下信息,提供統(tǒng)一的查詢界面,這對(duì)于多鏈 dApp 特別有用。
僅以太坊就需要 3TB 的存儲(chǔ)空間,并且隨著區(qū)塊鏈的不斷增長(zhǎng),Erigon 存檔節(jié)點(diǎn)的數(shù)據(jù)存儲(chǔ)量也會(huì)不斷增加。索引器協(xié)議部署了多個(gè)索引器,可以高效地索引和高速查詢大量數(shù)據(jù),這是 RPC 無法實(shí)現(xiàn)的。
索引器還允許進(jìn)行復(fù)雜查詢、根據(jù)不同標(biāo)準(zhǔn)輕松過濾數(shù)據(jù)以及提取后分析數(shù)據(jù)。一些索引器還允許聚合來自多個(gè)來源的數(shù)據(jù),從而避免在多鏈 dApp 中部署多個(gè) API。通過分布在多個(gè)節(jié)點(diǎn)上,索引器提供了增強(qiáng)的安全性和性能,而 RPC 提供商可能會(huì)因其集中式特性而出現(xiàn)中斷和停機(jī)。
總體而言,與 RPC 節(jié)點(diǎn)提供商相比,索引器提高了數(shù)據(jù)檢索的效率和可靠性,同時(shí)還降低了部署單個(gè)節(jié)點(diǎn)的成本。這使得區(qū)塊鏈索引器協(xié)議成為 dApp 開發(fā)人員的首選。
索引器用例
如前所述,構(gòu)建 dApp 需要檢索和讀取區(qū)塊鏈數(shù)據(jù)才能運(yùn)行其服務(wù)。這包括任何類型的 dApp,包括 DeFi、NFT 平臺(tái)、游戲甚至社交網(wǎng)絡(luò),因?yàn)檫@些平臺(tái)需要先讀取數(shù)據(jù)才能執(zhí)行其他交易。
DeFi
DeFi 協(xié)議需要不同的信息才能為用戶報(bào)出特定的價(jià)格、比率、費(fèi)用等。自動(dòng)做市商 (AMM) 需要有關(guān)某些資金池的價(jià)格和流動(dòng)性信息來計(jì)算掉期利率,而借貸協(xié)議則需要利用率來確定借貸利率和清算的債務(wù)比率。在計(jì)算用戶執(zhí)行的利率之前,將信息輸入他們的 dApp 是必不可少的。
游戲
GameFi 需要快速索引和訪問數(shù)據(jù),以確保用戶流暢地玩游戲。只有通過閃電般的數(shù)據(jù)檢索和執(zhí)行,Web3 游戲才能在性能上與 Web2 游戲相媲美,從而吸引更多用戶。這些游戲需要土地所有權(quán)、游戲內(nèi)代幣余額、游戲內(nèi)操作等數(shù)據(jù)。使用索引器,他們可以更好地確保穩(wěn)定的數(shù)據(jù)流和穩(wěn)定的正常運(yùn)行時(shí)間,以確保完美的游戲體驗(yàn)。
NFT
NFT 市場(chǎng)和借貸平臺(tái)需要索引數(shù)據(jù)訪問各種信息,例如 NFT 元數(shù)據(jù)、所有權(quán)和轉(zhuǎn)讓數(shù)據(jù)、版稅信息等。快速索引此類數(shù)據(jù)可避免逐個(gè)瀏覽每個(gè) NFT 以查找所有權(quán)或 NFT 屬性數(shù)據(jù)。
無論是需要價(jià)格和流動(dòng)性信息的 DeFi 自動(dòng)做市商 (AMM),還是需要更新新用戶帖子的 SocialFi 應(yīng)用程序,能夠快速檢索數(shù)據(jù)對(duì)于 dApp 正常運(yùn)行至關(guān)重要。借助索引器,它們可以高效、正確地檢索數(shù)據(jù),從而提供流暢的用戶體驗(yàn)。
分析
索引器提供了一種從原始區(qū)塊鏈數(shù)據(jù)(包括每個(gè)區(qū)塊中的智能合約事件)中提取特定數(shù)據(jù)的方法。這為更具體的數(shù)據(jù)分析提供了機(jī)會(huì),從而提供全面的見解。
例如,永續(xù)交易協(xié)議可以找出哪些代幣的交易量大,哪些代幣會(huì)產(chǎn)生費(fèi)用,從而決定是否將這些代幣作為永續(xù)合約列在其平臺(tái)上。DEX 開發(fā)人員可以為自己的產(chǎn)品創(chuàng)建儀表板,深入了解哪些資金池的回報(bào)率最高或流動(dòng)性最強(qiáng)。還可以創(chuàng)建公共儀表板,讓開發(fā)人員可以自由靈活地查詢要在圖表上顯示的任何類型的數(shù)據(jù)。
由于有多個(gè)區(qū)塊鏈索引器可用,因此識(shí)別索引協(xié)議之間的差異對(duì)于確保開發(fā)人員選擇最適合其需求的索引器至關(guān)重要。
區(qū)塊鏈索引器概述


索引器概覽
The Graph
The Graph 是第一個(gè)在以太坊上啟動(dòng)的索引器協(xié)議,它可以輕松查詢以前不易訪問的交易數(shù)據(jù)。它使用子圖定義和過濾從區(qū)塊鏈?zhǔn)占臄?shù)據(jù)子集,例如與 Uniswap v3 USDC/ETH 池相關(guān)的所有交易。
使用索引證明,索引器質(zhì)押原生代幣 GRT 用于索引和查詢服務(wù),委托人可以選擇將其代幣質(zhì)押于此。策展人可以訪問高質(zhì)量的子圖,以幫助索引器確定要為哪些子圖編制數(shù)據(jù)以賺取最佳查詢費(fèi)用。在向更大程度的去中心化過渡的過程中,The Graph 最終將停止其托管服務(wù),并要求子圖升級(jí)到其網(wǎng)絡(luò),同時(shí)提供升級(jí)索引器。
其基礎(chǔ)設(shè)施使每百萬次查詢的平均成本達(dá)到 40 美元,這比自托管節(jié)點(diǎn)的成本要低得多。使用文件數(shù)據(jù)源,它還支持同時(shí)對(duì)鏈上和鏈下數(shù)據(jù)進(jìn)行并行索引,以實(shí)現(xiàn)高效的數(shù)據(jù)檢索。


看看 The Graph 的索引器獎(jiǎng)勵(lì),它在過去幾個(gè)季度中一直在穩(wěn)步增長(zhǎng)。這部分是由于查詢量的增加,但也歸因于代幣價(jià)格的增長(zhǎng),因?yàn)樗麄冇?jì)劃在未來整合人工智能輔助查詢。
Subsquid
Subsquid 是一個(gè)點(diǎn)對(duì)點(diǎn)、水平可擴(kuò)展的去中心化數(shù)據(jù)湖,可高效聚合大量鏈上和鏈下數(shù)據(jù),并通過零知識(shí)證明進(jìn)行保護(hù)。作為一個(gè)去中心化的工作器網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)負(fù)責(zé)存儲(chǔ)來自特定區(qū)塊子集的數(shù)據(jù),通過快速識(shí)別保存所需數(shù)據(jù)的節(jié)點(diǎn)來加快數(shù)據(jù)檢索過程。
Subsquid 還支持實(shí)時(shí)索引,允許在區(qū)塊最終確定之前對(duì)其進(jìn)行索引。它還支持以開發(fā)人員選擇的格式存儲(chǔ)數(shù)據(jù),從而便于使用 BigQuery、Parquet 或 CSV 等工具進(jìn)行更輕松的分析。此外,子圖可以在 Subsquid 網(wǎng)絡(luò)上部署,而無需遷移到 Squid SDK,從而實(shí)現(xiàn)無代碼部署。
盡管仍處于測(cè)試網(wǎng)階段,Subsquid 已取得令人印象深刻的統(tǒng)計(jì)數(shù)據(jù),擁有超過 80,000 名測(cè)試網(wǎng)用戶,部署了超過 60,000 個(gè) Squid 索引器,網(wǎng)絡(luò)上有超過 20,000 名經(jīng)過驗(yàn)證的開發(fā)人員。最近,6 月 3 日,Subsquid 啟動(dòng)了其數(shù)據(jù)湖的主網(wǎng)。
除了索引之外,Subsquid Network 數(shù)據(jù)湖還可以替代分析、ZK/TEE 協(xié)處理器、AI 代理和 Oracle 等用例中的 RPC。
SubQuery
SubQuery 是一個(gè)去中心化的中間件基礎(chǔ)設(shè)施網(wǎng)絡(luò),提供 RPC 和索引數(shù)據(jù)服務(wù)。它最初支持 Polkadot 和 Substrate 網(wǎng)絡(luò),現(xiàn)在已擴(kuò)展到包括 200 多個(gè)鏈。它的工作原理類似于使用索引證明的 The Graph,索引器索引數(shù)據(jù)并提供查詢請(qǐng)求,委托人將股份質(zhì)押給索引器。然而,它引入了消費(fèi)者來提交購買訂單,以表明索引器的收入有保障,而不是管理者。
它將引入支持分片的 SubQuery 數(shù)據(jù)節(jié)點(diǎn),以防止每個(gè)節(jié)點(diǎn)之間不斷同步新數(shù)據(jù),從而優(yōu)化查詢效率,同時(shí)走向更大的去中心化。用戶可以選擇按每 1000 個(gè)請(qǐng)求支付約 1 SQT 代幣的計(jì)算費(fèi)用,或通過協(xié)議為索引器設(shè)置自定義費(fèi)用。


盡管 SubQuery 在今年早些時(shí)候才推出其代幣,但節(jié)點(diǎn)和委托人的發(fā)行獎(jiǎng)勵(lì)也以美元價(jià)值環(huán)比增長(zhǎng),這也代表其平臺(tái)上提供的查詢服務(wù)數(shù)量不斷增加。自 TGE 以來,質(zhì)押的 SQT 總量已從 600 萬增加到 1.25 億,凸顯了其網(wǎng)絡(luò)參與度的增長(zhǎng)。
Covalent
Covalent 是一個(gè)去中心化的索引器網(wǎng)絡(luò),由區(qū)塊樣本生產(chǎn)者(BSP)網(wǎng)絡(luò)節(jié)點(diǎn)通過批量導(dǎo)出的方式創(chuàng)建區(qū)塊鏈數(shù)據(jù)的副本,并在 Covalent L1 區(qū)塊鏈上發(fā)布證明。這些數(shù)據(jù)再由區(qū)塊結(jié)果生產(chǎn)者(BRP)節(jié)點(diǎn)根據(jù)設(shè)定的規(guī)則進(jìn)行細(xì)化,篩選出符合要求的數(shù)據(jù)。
通過統(tǒng)一的 API,開發(fā)人員可以輕松以一致的請(qǐng)求和響應(yīng)格式提取相關(guān)的區(qū)塊鏈數(shù)據(jù),無需編寫自定義復(fù)雜查詢即可訪問數(shù)據(jù)。可以使用在 Moonbeam 上結(jié)算的 CQT 代幣作為支付手段從網(wǎng)絡(luò)運(yùn)營(yíng)商處提取這些預(yù)配置的數(shù)據(jù)集。


Covalent 的獎(jiǎng)勵(lì)從 23 年第一季度到 24 年第一季度似乎總體呈增長(zhǎng)趨勢(shì),部分原因是 Covalent 代幣 CQT 價(jià)格上漲。
選擇索引器的注意事項(xiàng)
數(shù)據(jù)的可定制性
一些索引器(例如 Covalent)是通用索引器,僅通過 API 提供標(biāo)準(zhǔn)的預(yù)配置數(shù)據(jù)集。雖然它們可能很快,但它們無法為需要自定義數(shù)據(jù)集的開發(fā)人員提供靈活性。通過使用索引器框架,它允許進(jìn)行更多自定義數(shù)據(jù)處理以滿足特定于應(yīng)用程序的需求。
安全
索引數(shù)據(jù)必須是安全的,否則基于這些索引器構(gòu)建的 dApp 也容易受到攻擊。例如,如果交易和錢包余額可以被操縱,dApp 就有可能失去流動(dòng)性,從而影響其用戶。雖然所有索引器都通過索引器質(zhì)押代幣來采用某種形式的安全性,但其他索引器解決方案可能會(huì)使用證明來進(jìn)一步提高安全性。
Subsquid 提供了使用樂觀和零知識(shí)證明的選項(xiàng),而 Covalent 還發(fā)布了包含區(qū)塊哈希值的證明。Graph 以樂觀挑戰(zhàn)窗口期的方式針對(duì)索引器查詢提供爭(zhēng)議挑戰(zhàn)期,而 SubQuery 為每個(gè)區(qū)塊生成 Merkle Mountain 證明,以計(jì)算其數(shù)據(jù)庫中存儲(chǔ)的所有數(shù)據(jù)的每個(gè)區(qū)塊的哈希值。
速度和可擴(kuò)展性
隨著區(qū)塊鏈的不斷增長(zhǎng),交易量也隨之增加,這使得索引大量數(shù)據(jù)變得更加繁瑣,因?yàn)樾枰嗟奶幚砟芰痛鎯?chǔ)空間。隨著區(qū)塊鏈網(wǎng)絡(luò)的增長(zhǎng),保持效率變得更加困難,但索引器協(xié)議引入了解決方案來滿足這些日益增長(zhǎng)的需求。
例如,Subsquid 通過添加更多節(jié)點(diǎn)來存儲(chǔ)數(shù)據(jù),從而實(shí)現(xiàn)水平擴(kuò)展,隨著硬件改進(jìn),它能夠擴(kuò)展。Graph 提供并行流數(shù)據(jù),以更快地同步數(shù)據(jù),而 SubQuery 引入節(jié)點(diǎn)分片來加快同步過程。
支持的網(wǎng)絡(luò)
盡管大多數(shù)區(qū)塊鏈活動(dòng)仍在以太坊內(nèi)進(jìn)行,但隨著時(shí)間的推移,不同的區(qū)塊鏈越來越受歡迎。例如,Layer 2s、Solana、Move 區(qū)塊鏈和比特幣生態(tài)系統(tǒng)鏈都有自己的一套不斷增長(zhǎng)的開發(fā)人員和活動(dòng),這也需要索引服務(wù)。
為其他索引器協(xié)議不支持的某些鏈提供支持可以獲得更多市場(chǎng)份額費(fèi)用。索引數(shù)據(jù)密集型網(wǎng)絡(luò)(如 Solana)并非易事,到目前為止,只有 Subsquid 成功為它們提供索引支持。
結(jié)論
盡管索引器在 dApp 開發(fā)中被廣泛采用,但索引器的潛力仍然巨大,尤其是在集成 AI 的情況下。隨著 AI 在 Web2 和 Web3 中的不斷普及,其改進(jìn)能力取決于訪問相關(guān)數(shù)據(jù)以訓(xùn)練模型和開發(fā) AI 代理。確保數(shù)據(jù)完整性對(duì)于 AI 應(yīng)用程序至關(guān)重要,因?yàn)樗梢苑乐鼓P捅惠斎胗衅娀虿粶?zhǔn)確的信息。
在索引器解決方案領(lǐng)域,Subsquid 在性能和用戶指標(biāo)方面取得了重大進(jìn)展。用戶已經(jīng)開始嘗試使用 Subsquid 構(gòu)建 AI 代理,展示了該平臺(tái)在不斷發(fā)展的數(shù)據(jù)索引領(lǐng)域的多功能性和潛力。此外,AutoAgora 等工具幫助索引器使用 AI 為 The Graph 上的查詢服務(wù)提供動(dòng)態(tài)定價(jià),而 SubQuery 支持多個(gè) AI 網(wǎng)絡(luò)(如 OriginTrail 和 Oraichain),以實(shí)現(xiàn)透明的數(shù)據(jù)索引。
人工智能與索引器的集成有望增強(qiáng)區(qū)塊鏈生態(tài)系統(tǒng)中的數(shù)據(jù)可訪問性和可用性。通過利用人工智能技術(shù),索引器可以提供更高效、更準(zhǔn)確的數(shù)據(jù)檢索,使開發(fā)人員能夠構(gòu)建更復(fù)雜的 dApp 和分析工具。隨著人工智能和索引器繼續(xù)共同發(fā)展,我們?nèi)匀粚?duì)數(shù)據(jù)索引的未來及其在塑造去中心化數(shù)字格局中的作用持樂觀態(tài)度。