Home » 如何为你的web3项目选择一个数据提供商?

如何为你的web3项目选择一个数据提供商?

by Patricia

除了加密货币代币,区块链还使分析师能够更清楚地了解几乎任何GameFi项目、NFT、市场或DeFi协议,这要感谢Footprint。

在Footprint,我们已经创建了一种方法,对原始区块链数据进行汇编和有意义的汇总。而这适用于编程集成。

1 . 处理区块链数据的方法

我们先来谈谈编程集成的方法。有几种不同的方法来处理区块链数据,你选择的方法将取决于你的具体需求和目标。这里有一个快速的概述:

 src=

1.2自己的索引解决方案

设置自己的索引器来处理区块链数据可以有几个优点和潜在的缺点。下面是每个人的几个例子。

优势:

  • 自定义。当你设置了你的索引器,你可以完全控制数据的索引和访问方式。这可以让你根据你的具体需求和喜好来定制索引器。
  • 独立性。通过设置你的索引器,你并不依赖第三方服务来维护和更新索引。这可以在你的区块链数据工作中提供更大的控制和灵活性。
  • 提高了安全性。当你建立自己的索引器时,你可以实施自己的安全措施来保护数据,防止未经授权的访问。

缺点:

  • 复杂度。设置你的索引器可能是一个复杂而耗时的过程,特别是如果你是区块链技术的新手。你将需要了解底层技术,并愿意投入所需的时间和精力来启动和运行索引器。
  • 维护。一旦你设置了你的索引器,你将负责维护和更新它。这可能需要持续的技术专长和资源,如果你没有必要的知识或支持,这可能是一个不利因素。
  • 成本:建立自己的索引器可能很昂贵,因为你必须购买运行索引器所需的硬件和软件,并支付任何相关费用,如电力和带宽。

总之,设置自己的索引器来处理区块链数据可以提供更大的控制和定制,但它也可能是一个复杂而昂贵的过程。在决定这是否是正确的方法之前,仔细考虑其优点和缺点是很重要的。

1.3数据库作为一种服务

使用第三方索引器来处理区块链数据可以有几个优点和潜在的缺点。下面是每个人的几个例子。

优势:

  • 使用方便。第三方索引器通常被设计成易于使用,这意味着你可以迅速开始处理区块链数据,而不必学习大量的技术细节或运行你的自定义索引解决方案(不管是自主开发还是现成的SDK)。
  • 先进的搜索功能。许多第三方索引器提供高级搜索功能,如布尔运算符和正则表达式,使搜索区块链上的特定信息更加容易。这些可以有很多实际的实现方式,但索引的数据通常被添加到关系数据库中,这意味着完全的SQL支持。
  • 可扩展性。第三方索引器通常被设计为处理大量的数据,这意味着如果你需要搜索或访问大型区块链的数据,它们可以是一个很好的选择。
  • 可靠性。第三方索引器通常由专业机构运行,拥有资源和专业知识,以确保索引始终是最新的和准确的。解决方案并不总是分散的,因为它们专注于处理大量的数据,但绝大多数都是开源的,这增加了用户对服务的信心。

劣势:

  • 依赖性。使用第三方索引器,你要依靠该服务来维护和更新索引。如果索引器遇到技术问题或脱机,你可能无法访问区块链数据。
  • 定制有限。第三方索引器通常被设计为易于使用,这意味着它们可能不提供许多定制选项。这可能使你很难根据你的具体需要或偏好来定制索引器。
  • 成本:一些第三方索引器可能对其服务收取费用,如果你的工作预算紧张,这可能是一个不利因素。

总之,使用第三方索引器来处理区块链数据可以是一个方便有效的选择,但有局限性,有时缺乏定制。

1.4 总结

Footprint的目标主要是降低输入分析和处理web3数据的门槛。这种方法是在易用性和灵活性之间取得平衡。这就是为什么我们的服务之一是DaaS(数据库作为服务类型)。在我们仔细研究我们服务的优势之前,我们还将研究索引器的另一种实现方案,即自写的解决方案或SDK。

在接下来的章节中,我们将探讨只读区块链API应该具备的核心功能。我们将从不同的角度来看待这个问题,并考虑其他的解决方案。区块链API的一些最重要的特征包括以下内容:

  • 易用性和灵活性
  • 可扩展性
  • 兼容性

易用性和灵活性是区块链API的两个重要特征。一个易于使用的区块链API将使开发人员更容易开始构建基于区块链的应用程序,使他们能够快速建立原型并测试他们的想法,而无需花费大量时间学习如何使用API。

另一方面,灵活性是指区块链API支持广泛的用例和应用的能力。一个灵活的区块链API将允许开发者访问区块链的不同部分,并建立与不同类型的智能合约和其他基于区块链的资产互动的应用程序。这对于希望建立可用于不同行业和背景的应用程序的开发者来说,可能特别重要。

总的来说,拥有一个既容易使用又灵活的区块链API可以使开发者更容易建立创新和有用的应用程序,可以利用区块链技术的独特特点和能力。

1.5足迹分析

我们的数据组织保证了易用性和灵活性,这影响到与Footprint生态系统互动的所有方面。Footprint有一个建立在这个数据模型之上的API,允许用户为数据分析和机器学习应用建立成熟的数据管道。我们称它为数据API。我们同时支持两种类型的API和其中的两种子类型,以涵盖大多数情况。Rest API和SQL API。

REST API允许我们快速集成一个应用程序,因为每个端点都是一个预先建立的、硬编码的脚本,我们已经确定它是最受欢迎的一个。所有的端点都带有易于使用的工具,用于过滤、排序和分页。


由于SQL API的接口适应性更强,你可以在更多的特定情况下获得这一点。在Web应用程序和API中使用相同的SQL查询的一个好处是,它可以简化开发和维护。通过在两个界面中使用相同的查询,开发人员可以避免为网络应用程序和API编写和维护不同的查询集。这可以节省时间和精力,并减少两个界面之间出现错误或不一致的风险。


此外,在Web应用程序和API中使用相同的SQL查询,可以使开发人员更容易创建一个无缝的用户体验。通过使用相同的查询,开发人员可以确保网络应用程序和API所访问和操作的数据是一致的,允许用户在两个界面之间切换而不会遇到任何不一致或中断的情况。

1.6 其他平台

许多替代性分析解决方案允许用户根据不同层次的要求来分析不同的网络。然而,在大多数情况下,替代解决方案往往走向极端,要么实施非常灵活的产品,需要查询语言甚至编程语言的知识,要么实施非常简单的界面,准备好的脚本,相应地,灵活性低。

像Moralis和Quicknode这样的解决方案只有一个REST API接口。即使有很多端点,但在返回数据的灵活性方面,它仍然限制了开发者。

Dune最近推出了它的API。这种异步解决方案意味着在平台上初步存在一个特定ID(dune.com/query/{{query id}}下的查询,通过它可以执行SQL形式的查询。这种解决方案的关键限制是需要预先修改平台上的SQL,以便随后执行更新的查询。

Chainbase以与Footprint相同的方式发布SQL API。但是,与Footprint不同的是,Chainbase没有如此复杂的ETL,所以SQL查询只能针对原始交易执行。

2. 可扩展性

区块链API应该能够处理大量的数据和交易,允许开发者建立可以被许多用户同时使用的应用程序。

2.1足迹分析

2.1.1现代开放数据栈

自2021年8月推出以来,Footprint团队已经进行了多次架构升级,这得益于其强大的技术探索和迭代能力。在不到一年半的时间里,该团队已经能够成功地实施这些变化。这证明了该团队在技术和数据科学方面的技能和专长。

通过实验,Footprint反复进行了三次全局性的架构更新,最终达成了一个满足平台各种用例要求的架构。关于实施的演变的更多信息可以在下一篇文章中找到。

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

2.1.2同步和异步执行

在Footprint中,有两种模式可以执行对SQL API的查询–同步和异步。对同步端点的API调用意味着一旦收到应用程序的HTTP请求,SQL查询就会被Footprint服务器执行,从而保持连接。这在使用轻量级请求时是有意义的,因为在这种情况下,应用程序不需要长时间等待执行。详细内容可以在下面的页面上找到。

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

对于重度请求,建议使用异步请求。与同步请求不同,客户端应用程序在执行过程中不需要与服务器保持连接。相反,它可以立即获得request-id,根据它,在一段时间后,分别获得执行结果。作为异步API的一部分,应该包括两个步骤来获取数据–以下端点将被用来发送SQL执行的 “命令”。

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

第二步是发送一个请求,通过访问前一个端点时获得的标识符来接收结果。这第二步的端点在下面的页面中描述。

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

2.2 其他解决办法

DuneV2改变了整个数据库架构。Dune现在正从PostgreSQL数据库过渡到托管在[[Databricks]]上的[[Apache Spark]]的Instance。只有异步的API。

3. 兼容性

区块链API应该与各种编程语言和开发环境兼容,这样开发者就可以使用他们最熟悉的工具和框架。

REST更容易集成,因为每种编程语言都有许多库,提供与这种类型的API的舒适工作。然而,最终,SQL APIs和REST都是通过HTTP工作的,所以关于默认发送请求的开发经验几乎是相同的。

4. 摘要

正如我们所分析的,在大多数情况下,一个应用程序使用现成的DaaS解决方案就足够了,原因是它们可以返回抽象(而不仅仅是原始数据),并节省大量的时间和金钱,因为它们最终允许团队不关注基础设施而关注产品的价值。通过DaaS市场上的各种解决方案。

Footprint似乎是最理想的整合方案,因为它有最灵活的模型来生成请求,同时既容易使用,也有现代开源数据堆栈在引擎盖下,这确保了不间断,最重要的是,快速执行最复杂的请求。

Related Posts

Leave a Comment