前面兩篇關於 Delegator 和 Curator 的文章介紹了最容易參與的兩種方式,但是對於一般的用戶來說,可能不太了解整體的運作流程,本篇會把生態中的其他參與者也一併介紹,讓你知道 GRT 為什麼能有價值、這價值是如何在整個生態中流轉和提升的,並說明誰會使用到 The Graph 的索引服務。
先說接下來會提到的兩種角色
Indexer: 負責將區塊鏈上的資料處理過後儲存起來,讓使用者透過 GraphQL API 來查詢
Subgraph Developer: 負責開發 Subgraph,讓 Curator 有 Subgraph 能夠去發出訊號,指引 Indexer,供 Indexer 去使用、過濾、處理資料。
來一張流程圖:
使用 dApp ,智能合約會在執行交易時,發出事件來紀錄每個動作的一些重要資訊,例如我在 DEX (去中心化交易所)上面用 USDC 換了 GRT,這時紀錄了類似以下的事件:
Swap (address sender, uint256 amount0In, uint256 amount0Out, uint256 amount1In, uint256 amount1Out, address token0, address token1)
token0 是 USDC 的合約地址,token1 是 GRT 的合約地址,amount0In 是 USDC 的數量,amount1Out 是 GRT 的數量,sender 就是我本人的地址。
在和智能合約的交易上面,基本上都能查到一或多個事件,可以自己去處理、過濾這些事件去找到自己需要的資料,但當你是要用在長期、多類型的查詢上時,可能會需要各種成本去達成你的目標,這時候 Subgraph 就出來了。
Subgraph 的作用是讓 Indexer 可以把資料過濾、提供查詢,通常來說,稍有規模的項目都會有自己的團隊成員來撰寫 Subgraph,自己最清楚自己的合約寫了哪些事件、哪些需要過濾並留下,或者像是 Messari 也為了許多項目產出了許多的 Subgraph(核心開發者資助),Indexer 將各個智能合約處理出來的資料儲存好,搭配他們對應的 Subgraph ,透過 The Graph API 提供給用戶查詢。
所以整個流程簡單說:
合約產生數據 → Indexer 過濾、處理、儲存數據 → 用戶查詢數據
之前提到的 Delegator 和 Curator 則是讓整體網路能更去中心化,還有提供非技術人員參與的一個途徑。
Indexer / Delegator /Curator 之間,能夠起到互相監督、合作的作用。
Indexer 如果常常停機或是不積極去分配身上的 GRT 到各個 Subgraph 上的話,Delegator 就會尋找新的 Indexer,原來的 Indexer 身上的委託因此變少,導致能獲得的獎勵也少了;
Curator 透過對優質的 Subgraph 發出訊號,得到查詢費的分潤,Indexer 也會優先使用比較多訊號量的 Subgraph,但如果 Subgraph 沒有持續維護,導致資訊沒被妥善處理,那麼大家就會轉而向其他 Subgraph 發出訊號。
目前(2022/10/16),分散式查詢網路正在逐漸推進當中,當下已經有 519 個 Subgraph、221 位 Indexer、2499 位 Curator、10449 位 Delegator 在參與此生態。
也正在逐漸將託管服務上的 Subgraph 轉移至分散式網路上 (目前尚有30306個)
分散式查詢網路上,除了以太坊以外,也支援 Gnosis Chain,其他的區塊鏈也正在開發和整合當中。
並且,現在也在鼓勵大家參與加入 Indexer 的行列,推出了相關的激勵計畫和建設資源!
整個查詢服務,其實並不會是一般的消費者去直接來使用、付費,而是由各式各樣的 dApp 採用,透過這些整理好的數據,來提供給消費者更好的 UI/UX,或是更有效率地整理出需要的資料,來執行各種 DeFi 的交易、套利等等的用途。
當區塊鏈的應用普及了,The Graph 會把這些活動量轉換為查詢量,並提高消費者對 GRT 的需求,查詢的費用,目前大都是用 DAI 為單位計價後轉換為 GRT 來結帳,所以查詢不會因為 GRT 漲價而變太貴,以致於沒人負擔得起。有查詢需求的人,也可能轉而成為 Delegator 等身份來獲取較穩定數量的 GRT,進而促使整體網路的參與和維護網路的安全。
通往理想的分散式查詢網路的路程並不短,但是社群裡,各式各樣的人用自己所能來維護、推廣這些服務和理念,如果你也想要更深入地參與,可以考慮加入倡導者計畫
或是你有一些構想需要資助,可以看看社群資助的申請
以下是 The Graph 的各個社群、網站
官網: https://thegraph.com/
Twitter: https://twitter.com/graphprotocol
Telegram: https://t.me/GraphProtocol
Academy: https://thegraph.academy/
Graphtronauts: https://t.me/graphtronauts
GRT Staking Chat (delegator): https://t.me/Graphstaking
Graph AdvocatesDAO: https://discord.gg/4kDktUuhtB
Curator Station: https://t.me/CurationStation