Home » Jak vybrat poskytovatele dat pro svůj projekt web3?

Jak vybrat poskytovatele dat pro svůj projekt web3?

by Thomas

Kromě kryptoměnových tokenů umožňuje blockchain analytikům díky Footprintu získat jasnější představu prakticky o jakémkoli projektu GameFi, NFT, marketplace nebo protokolu DeFi.

Ve Footprintu jsme vytvořili metodiku, která shromažďuje a smysluplně agreguje surová data z blockchainu. A to platí i pro programování integrací.

1 . Způsoby práce s daty blockchainu

Nejprve si povíme něco o způsobech programování integrace. Existuje několik různých způsobů práce s daty blockchainu a zvolený přístup bude záviset na vašich konkrétních potřebách a cílech. Zde je jejich stručný přehled:

1.1 Průzkumníci blockchainu

Blockchain explorer je webová stránka nebo nástroj, který umožňuje prohlížet data uložená v blockchainu. Může to být rychlý a snadný způsob, jak získat přístup k informacím o konkrétních transakcích, blocích a dalších údajích v blockchainu.

Blockchain explorery mohou být užitečným nástrojem pro přístup k datům uloženým v blockchainu a jejich prohlížení, mají však určitá omezení pro softwarové integrace. Zde je několik příkladů věcí, které průzkumníkům blockchainu mohou chybět:

  • Zaměřují se především na surová data. Blockchain explorery obvykle zobrazují surová data z blockchainu. To vyžaduje implementaci abstrakcí nad surovými daty, což může být zdlouhavé, zejména u projektů zaměřených spíše na doručování než na technické detaily některých blockchainů.
  • Možnosti přizpůsobení: Průzkumníci blockchainů jsou obvykle navrženi tak, aby byli uživatelsky přívětiví a snadno použitelní, což znamená, že nemusí nabízet mnoho možností přizpůsobení. To může ztížit přizpůsobení průzkumníka vašim konkrétním potřebám nebo preferencím.
  • Funkce pokročilého vyhledávání: Blockchain explorery často disponují základními funkcemi vyhledávání, ale nemusí podporovat pokročilejší funkce vyhledávání, jako jsou booleovské operátory nebo regulární výrazy. To může ztížit vyhledávání konkrétních informací v blockchainu.
  • Interaktivita: Mnoho průzkumníků blockchainu jsou v podstatě nástroje určené pouze pro čtení.

Přestože blockchain explorery mohou být užitečným způsobem přístupu k surovým datům blockchainu a jejich prohlížení, mají některá omezení, kterých byste si měli být vědomi, než se rozhodnete na jejich základě implementovat infrastrukturu svého řešení.

1.2 Vlastní řešení indexování

Nastavení vlastního indexeru pro práci s daty blockchainu může mít několik výhod i potenciálních nevýhod. Zde uvádíme několik příkladů:

Výhody:

  • Přizpůsobení: Při nastavení indexeru máte plnou kontrolu nad tím, jak se data indexují a jak se k nim přistupuje. Díky tomu můžete indexátor přizpůsobit svým specifickým potřebám a preferencím.
  • Nezávislost: Nastavením vlastního indexeru se nespoléháte na službu třetí strany, která by index udržovala a aktualizovala. To vám může poskytnout větší kontrolu a flexibilitu při práci s daty blockchainu.
  • Zvýšená bezpečnost: Když si nastavíte vlastní indexer, můžete zavést vlastní bezpečnostní opatření na ochranu dat a zabránit neoprávněnému přístupu.

Nevýhody:

  • Složitost: Nastavení indexeru může být složitý a časově náročný proces, zejména pokud s technologií blockchain pracujete poprvé. Budete muset rozumět základní technologii a být ochotni investovat čas a úsilí, které jsou nutné pro zprovoznění indexeru.
  • Údržba: Po nastavení indexeru budete zodpovědní za jeho údržbu a aktualizaci. To může vyžadovat průběžné technické znalosti a zdroje, což může být nevýhodou, pokud nemáte potřebné znalosti nebo podporu.
  • Náklady: Zřízení vlastního indexeru může být nákladné, protože musíte zakoupit hardware a software potřebný k provozu indexeru a zaplatit veškeré související náklady, jako je elektřina a šířka pásma.

Obecně vzato, nastavení vlastního indexeru pro práci s daty blockchainu může poskytnout větší kontrolu a přizpůsobení, ale může to být také složitý a nákladný proces. Než se rozhodnete, zda je tento přístup správný, je důležité pečlivě zvážit jeho výhody a nevýhody

1.3 Databáze jako služba

Použití indexeru třetí strany pro práci s daty blockchainu může mít několik výhod i potenciálních nevýhod. Zde uvádíme několik příkladů:

Výhody:

  • Snadné použití: Indexátory třetích stran jsou obvykle navrženy tak, aby se snadno používaly, což znamená, že můžete začít pracovat s daty blockchainu rychle a bez nutnosti učit se spoustu technických detailů nebo spouštět vlastní indexovací řešení (nezáleží na tom, zda je vyvinuté vlastními silami, nebo je to hotové SDK).
  • Pokročilá funkce vyhledávání: Mnoho indexátorů třetích stran nabízí pokročilé vyhledávací funkce, jako jsou booleovské operátory a regulární výrazy, které usnadňují vyhledávání konkrétních informací v blockchainu. Ty mohou mít mnoho skutečných implementací, ale indexovaná data se často přidávají do relační databáze, což předpokládá plnou podporu jazyka SQL.
  • Škálovatelnost: Indexery třetích stran jsou často navrženy tak, aby zvládaly velké objemy dat, což znamená, že mohou být dobrou volbou, pokud potřebujete vyhledávat nebo přistupovat k datům z velkého blockchainu.
  • Spolehlivost: Indexery třetích stran jsou obvykle provozovány profesionálními organizacemi, které mají zdroje a odborné znalosti, aby zajistily, že index bude vždy aktuální a přesný. Řešení nejsou vždy decentralizovaná, protože se zaměřují na zpracování obrovského množství dat, ale naprostá většina z nich je open source, což zvyšuje důvěru uživatelů ve službu.

Nevýhody:

  • Závislost: Při použití indexátoru třetí strany se spoléháte na to, že tato služba bude index udržovat a aktualizovat. Pokud se u indexeru vyskytnou technické problémy nebo dojde k jeho výpadku, je možné, že nebudete mít přístup k datům blockchainu.
  • Omezené možnosti přizpůsobení: Indexery třetích stran jsou obvykle navrženy tak, aby se snadno používaly, což znamená, že nemusí nabízet mnoho možností přizpůsobení. To může ztížit přizpůsobení indexeru vašim konkrétním potřebám nebo preferencím.
  • Cena: Některé indexátory třetích stran mohou za své služby účtovat poplatek, což může být nevýhodou, pokud pracujete s omezeným rozpočtem.

Shrnuto a podtrženo: Použití indexátoru třetí strany pro práci s daty blockchainu může být pohodlnou a efektivní možností, avšak omezenou a někdy nedostatečně přizpůsobitelnou.

1.4 Shrnutí

Cílem projektu Footprint je především snížit laťku pro zadávání analýz a práci s daty webu3. Tento přístup představuje rovnováhu mezi snadností použití a flexibilitou. Proto je jednou z našich služeb DaaS (Databáze jako typ služby). Než se blíže podíváme na výhody naší služby, podíváme se také na další možnost implementace indexátoru, a to na řešení napsané vlastními silami neboli SDK.

V dalších kapitolách se budeme zabývat základní vlastností, kterou by mělo mít rozhraní API pro čtení blockchainu. Na problém se podíváme z různých úhlů a zvážíme alternativní řešení. Mezi nejdůležitější vlastnosti rozhraní API pro blockchain patří následující:

  • Snadné používání a flexibilita.
  • Škálovatelnost
  • Kompatibilita

Snadné použití a flexibilita jsou dvě důležité vlastnosti blockchainových API. Rozhraní API blockchainu, které se snadno používá, usnadní vývojářům začít vytvářet aplikace založené na blockchainu a umožní jim rychle vytvářet prototypy a testovat své nápady, aniž by museli trávit spoustu času učením se, jak rozhraní API používat.

Flexibilita na druhé straně odkazuje na schopnost blockchainového API podporovat širokou škálu případů použití a aplikací. Flexibilní blockchainové API umožní vývojářům přistupovat k různým částem blockchainu a vytvářet aplikace, které komunikují s různými typy chytrých smluv a dalšími aktivy založenými na blockchainu. To může být důležité zejména pro vývojáře, kteří chtějí vytvářet aplikace využitelné v různých odvětvích a kontextech.

Celkově lze říci, že mít k dispozici rozhraní API blockchainu, které je snadno použitelné a zároveň flexibilní, může vývojářům usnadnit vytváření inovativních a užitečných aplikací, které mohou využívat jedinečné funkce a možnosti technologie blockchainu.

1.5 Analýza stop

Snadné používání a flexibilitu zajišťuje naše organizace dat, která ovlivňuje všechny aspekty interakce s ekosystémem Footprint. Footprint má nad tímto datovým modelem postavené rozhraní API, které uživatelům umožňuje vytvářet plnohodnotné datové pipeline pro aplikace datové analýzy a strojového učení. Říkáme mu datové rozhraní API. Současně podporujeme dva typy API a dva podtypy v rámci jednoho z nich, abychom pokryli většinu případů: Rest API a SQL API.

REST API nám umožňuje rychlou integraci aplikace, protože každý koncový bod je předpřipravený, natvrdo vytvořený skript, který jsme identifikovali jako jeden z nejoblíbenějších. Všechny koncové body jsou vybaveny snadno použitelnými nástroji pro filtrování, třídění a stránkování.


Díky přizpůsobivějšímu rozhraní SQL API jej můžete získat pro specifičtější případy. Jednou z výhod používání stejných dotazů SQL ve webové aplikaci i v rozhraní API je, že to může zjednodušit vývoj a údržbu. Použitím stejných dotazů v obou rozhraních se vývojáři mohou vyhnout nutnosti psát a udržovat samostatné sady dotazů pro webovou aplikaci a rozhraní API. To může ušetřit čas a úsilí a snížit riziko chyb nebo nekonzistencí mezi oběma rozhraními.


Používání stejných dotazů SQL ve webové aplikaci i v rozhraní API může navíc vývojářům usnadnit vytvoření bezproblémového uživatelského prostředí. Použitím stejných dotazů mohou vývojáři zajistit, že data, k nimž webová aplikace a rozhraní API přistupují a s nimiž manipulují, jsou konzistentní, což uživatelům umožňuje přepínat mezi oběma rozhraními, aniž by se setkali s jakýmikoli nesrovnalostmi nebo narušením.

1.6 Ostatní platformy

Mnoho alternativních analytických řešení umožňuje uživateli analyzovat různé sítě podle různých úrovní požadavků. Většinou však alternativní řešení směřují k extrémům a implementují buď velmi flexibilní produkt, který vyžaduje znalost dotazovacích nebo dokonce programovacích jazyků, nebo velmi jednoduché rozhraní s připravenými skripty a v souladu s tím nízkou flexibilitu.

Řešení jako Moralis a Quicknode mají pouze rozhraní REST API. I když existuje mnoho koncových bodů, stále to omezuje vývojáře ve flexibilitě vracených dat.

Dune nedávno představil své rozhraní API. Toto asynchronní řešení předpokládá předběžnou existenci dotazu na platformě pod určitým id (dune.com/query/{{query id}}), pomocí kterého je možné provádět dotazy ve formě SQL. Klíčovým omezením tohoto řešení je nutnost předem upravit SQL na platformě tak, aby byl následně proveden aktualizovaný dotaz.

Chainbase uvolňuje SQL API stejným způsobem jako Footprint. Přesto na rozdíl od Footprintu nemá Chainbase tak sofistikovaný ETL, takže dotazy SQL lze provádět pouze pro nezpracované transakce.

2. Škálovatelnost

Blockchain API by mělo být schopno zpracovávat velké objemy dat a transakcí, což vývojářům umožní vytvářet aplikace, které může používat mnoho uživatelů současně.

2.1 Analýza stop

2.1.1 Moderní otevřený datový zásobník

Tým Footprint od svého spuštění v srpnu 2021 provedl několik architektonických vylepšení díky své silné schopnosti zkoumat a iterovat technologie. Za necelý rok a půl se týmu podařilo tyto změny úspěšně implementovat. To svědčí o dovednostech a odborných znalostech týmu v oblasti technologií a datové vědy.

Prostřednictvím experimentů společnost Footprint iterativně provedla tři globální aktualizace architektury a nakonec dospěla k architektuře, která splňuje požadavky různých případů použití platformy. Více informací o vývoji implementace naleznete v dalším článku:

https://www.footprint.network/article/iceberg-spark-trino-a-modern-opensource-data-stack-for-blockchain-fp-HGZpPm3D

2.1.2 Synchronizované a asynchronizované provádění

Ve Footprintu existují dva režimy provádění dotazů na SQL API – synchronní a asynchronní. Volání API na synchronní koncový bod znamená, že SQL dotaz bude proveden servery Footprint, jakmile bude přijat požadavek HTTP z aplikace, čímž bude zachováno spojení. To má smysl při použití lehkých požadavků, protože v tomto případě nemusí aplikace na provedení dlouho čekat. Podrobnosti naleznete na následující stránce:

https://docs.footprint.network/reference/post_native.

U těžkých požadavků se doporučuje použít asynchronní požadavek. Na rozdíl od synchronního nemusí klientská aplikace během provádění udržovat spojení se serverem. Místo toho může okamžitě získat request-id, podle kterého po určité době samostatně získá výsledky provedení. V rámci asynchronního API by měl být pokryt dvoustupňový proces získávání dat – následující koncový bod bude sloužit k odeslání „příkazu“ k provedení SQL:

https://docs.footprint.network/reference/post_native-async.

Druhým krokem je odeslání požadavku na získání výsledků podle identifikátoru získaného při přístupu k předchozímu koncovému bodu. Koncový bod pro tento druhý krok je popsán na následující stránce:

https://docs.footprint.network/reference/get_native-execution-id-results

2.2 Další řešení

DuneV2 mění celou architekturu databáze. Dune nyní přechází z databáze PostgreSQL na instanci [[Apache Spark]] hostovanou na [[Databricks]]. Pouze asynchronní API.

3. Kompatibilita

Blockchain API by mělo být kompatibilní s širokou škálou programovacích jazyků a vývojových prostředí, aby vývojáři mohli používat nástroje a rámce, které nejlépe znají.

Integrace REST je snazší, protože každý programovací jazyk má mnoho knihoven, které zajišťují pohodlnou práci s tímto typem API. Nakonec však jak rozhraní API SQL, tak REST pracují přes protokol HTTP, takže zkušenosti s vývojem jsou téměř totožné, pokud jde o standardní odeslání požadavku.

4. Shrnutí

Jak jsme analyzovali, ve většině případů stačí, aby aplikace používala hotová řešení DaaS z toho důvodu, že mohou vracet abstrakce (nejen surová data) a ušetřit spoustu času a peněz, protože v konečném důsledku umožňují týmům soustředit se nikoli na infrastrukturu, ale na hodnotu produktu. Procházíme různá řešení na trhu DaaS,

Footprint se jeví jako nejoptimálnější pro integraci, protože má nejflexibilnější model generování požadavků a zároveň se snadno používá a zároveň má pod kapotou moderní open-source datový stack, který zajišťuje nepřerušované a hlavně rychlé provádění nejsložitějších požadavků.

Related Posts

Leave a Comment