Naučte se základy Substreams, výkonného blockchainového řešení pro indexování dat.

TL;DR: Pro ty, kteří jsou v Substreams noví, zjistěte, co to je a jak vývojářům usnadňuje přístup k blockchainovým datům.

Hledáte nejlepší řešení pro indexování dat blockchainu? Zajímá vás, jak efektivně extrahovat a spravovat data z blockchainu?

Začněte se substreamy!

Toto je první ze série článků, které vás od začátečníků v Substreamech přivedou k zvládnutí.

Problémy s přístupem k blockchainovým datům

Vývojáři často považují za obtížné vytvářet aplikace zaměřené na data, zvláště když čelí blockchainovým datům. Extrahování blockchainových dat je obtížné a složité a vzhledem k lineární a distribuované povaze blockchainu je extrahování dat rychlým a spolehlivým způsobem ještě náročnější.

Subflow je řešení

V současné době neexistuje mnoho řešení tohoto problému, ale StreamingFast , odborníci na vytváření nástrojů pro zpracování blockchainových dat, své úsilí zvyšují. Používají novou technologii nazvanou Substreams, která usnadňuje rychlé a spolehlivé zpracování a indexování blockchainových dat.

Pojďme se podívat na to, co jsou Substreamy a jak zpřístupňují data blockchainu.

Co je to substream?

Substreams je výkonná blockchainová technologie indexování dat vytvořená a vyvinutá společností StreamingFast pro The Graph Network. Umožňuje vývojářům extrahovat data z blockchainu, aplikovat vlastní transformace, aby vyhovovaly jedinečným potřebám jejich aplikací, a bez námahy nasměrovat zpracovaná data do různých destinací, jako je PostgresSQL, ClickHouse, MongoDB a další.

Jak fungují dílčí proudy?

Dílčí toky zahrnují dvě hlavní součásti: poskytovatele dílčích toků a balíčky dílčích toků. Pojďme se na každý z nich podívat blíže:

  • Substream poskytovatelé: Substream poskytovatelé ukládají a doručují blockchain data. Tito poskytovatelé, jako je Pinax, používají Firehose, vysoce výkonný motor pro extrakci dat agnostických blockchainů vyvinutý společností StreamingFast, k efektivnímu přijímání blockchainových dat.

  • Balíček Substreams: Balíček Substreams je malý program Rust zkompilovaný do WebAssembly, který definuje transformace, které chce vývojář použít na data. Vývojáři používají požadavky gRPC k odesílání balíčků Substreams poskytovateli Substreams, který pak požadavek provede a přenese zpět transformovaná data. Kromě toho mohou vývojáři podle potřeby odesílat data do jiných destinací.

V současné době lze Substreamy vytvářet pouze pomocí Rust, ale tým StreamingFast plánuje v blízké budoucnosti umožnit vývojářům vytvářet Substreamy v Golang a TypeScript.

Tři způsoby použití dílčích proudů

Vývojáři mají různé možnosti při práci s dílčími toky: mohou použít předem vytvořené dílčí toky nebo vytvořit své vlastní:

  1. Použití dílčích toků: Nejjednodušší způsob, jak využít dílčí toky, je použít předem vytvořené balíčky dílčích toků, které jsou k dispozici v registru dílčích toků, což je váš cíl na jednom místě pro objevování a sdílení balíčků dílčích toků. Můžete si vybrat balíček, který vyhovuje vašim potřebám, a plynule streamovat data do vašeho preferovaného cíle.

  2. Vytvoření dílčího toku: Pokud nemůžete najít vhodný balíček Substreams v registru Substreams, můžete si vytvořit svůj vlastní. Po vývoji mohou být tyto balíčky publikovány v registru, aby byly dostupné ostatním.

  3. Rozšíření dílčích toků: Můžete také využít stávající moduly Substreams v registru a vytvořit nad nimi nové moduly Substreams, což vede ke zcela novým datovým sadám. Tento přístup umožňuje přizpůsobení a rozšíření funkčnosti dílčích toků tak, aby splňovaly specifické požadavky.

Tento přístup založený na spolupráci podporuje živý ekosystém, kde vývojáři mohou přispívat svými řešeními a těžit z kolektivních znalostí a inovací v rámci komunity.

Výhody použití dílčích toků

Substreamy nabízejí vývojářům mnoho výhod při indexování a dotazování blockchainových dat. Tady jsou některé z nich:

  • Rychlost: Substreams upřednostňuje rychlost prostřednictvím paralelní architektury a stream-first designu, což zajišťuje efektivní indexování blockchainových dat.

  • Skládání: Dílčí toky poskytují možnost skládání a umožňují vývojářům snadno vzájemně používat kód nebo moduly k vytváření složitých kanálů indexování.

  • Opakovaně použitelné: Dílčí proudy kladou důraz na opětovnou použitelnost a umožňují vám provádět jejich úlohy indexování pomocí předem vytvořených dílčích proudů dostupných v registru Dílčí proudy.

  • Vlastní umyvadla: Substreams podporuje vlastní umyvadla, což umožňuje bezproblémovou integraci s vaším preferovaným řešením pro ukládání dat nebo analýzu.

  • Přesunout indexování blockchainových dat k poskytovateli: Substreams vám umožňuje přenést těžké zatížení indexování blockchainu na poskytovatele služeb, jako je Pinax. Poskytovatelé mohou škálovat na základě požadavků a ponořovat data do různých databází, čímž zmírňují potřebu provozovat drahé inody sami.

  • Silná podpora komunity: Přestože se jedná o novou technologii, Substreams přilákal velkou pozornost vývojářů a jejich počet neustále roste. V Pinaxu máme kromě komunity StreamingFast Discord další komunitu Discord, která vám může poskytnout podporu a pomoc, pokud chcete používat technologické řešení Substreams.

Naučte se a prozkoumejte další technologie indexování dat blockchainu

Sledujte veřejný účet WeChat: Pinax