Cointime

扫码下载App
iOS & Android

构建区块链 ETL,这些问题你不得不关注

作者:Nikhil Bhintade 编译:Cointime.com 237

随着区块链技术的进一步普及,企业正在寻求从中提取有意义的见解。要从区块链数据中提取这些见解,就必须开发一个专门设计用于此目的的强大的 ETL(Extract, Transform, Load)数据处理流水线。

然而,构建这样一个 ETL 流水线,无论是涉及多个区块链还是单个区块链的数据,都面临着自己独特的挑战

在本文中,我们深入探讨了构建区块链 ETL 流水线时遇到的关键挑战。通过了解这些挑战,您可以制定克服它们的策略。

区块链 ETL 的挑战

任何构建区块链 ETL 流水线的人都需要了解这些挑战,以更好地应对处理区块链数据的复杂性并优化 ETL 流水线。区块链 ETL 面临的挑战涵盖了从数据挑战到构建 ETL 流水线所需工具的可用性。

让我们详细了解每个挑战。

数据索引

对区块链数据进行索引是一个耗时的过程,可能需要几周或几个月,这取决于区块链的大小。例如,以太坊的区块链大小约为 14.5TB。像这样对区块链进行索引意味着处理和组织 14.5TB 的数据,根据您的要求,这将需要一段时间。

数据需求的不断变化和索引过程中的任何问题可能需要重新索引,这是一项资源密集型任务,涉及重新处理整个区块链。根据您的需求,创建一个索引服务每年将花费您从 1700 美元到 43800 美元不等的费用。例如,以下是运行图协议节点所需的硬件要求:

数据索引在 ETL 流水线中起着至关重要的作用,可以实现快速高效的数据访问。通过实施强大的错误处理和数据验证技术,可以最大程度地减少重新索引的需求。此外,对索引数据进行定期监控和维护有助于及早发现和解决潜在问题。

数据量和可扩展性

处理和管理区块链生成的大量数据是区块链 ETL 的主要挑战之一。随着数据量的增加,存储和处理需求也随之增加。

例如,截至 2023 年 6 月,以太坊区块链的大小为 14.5TB,并且每天平均增加 13-14GB的数据。

可扩展性对于确保 ETL 流水线能够处理区块链网络的高吞吐量至关重要。像 Solana 这样的区块链网络,其每秒交易处理速率在 2-4k 之间,与以太坊或比特币在将其集成到 ETL 流水线中时需要采用不同的方法。

一种有效的 ETL 解决方案必须能够随着不断增长的数据量而进行扩展,实现对一个或多个区块链的数据的无缝处理和存储。

区块链网络的持续演进

区块链网络经常进行升级和重组,这对于 ETL 流水线构成了挑战。升级会对共识算法、功能和错误修复等方面进行更改。以下是 Go-Ethereum 客户端发布的示例。正如您所看到的,这些发布频率非常高,因此 ETL 系统必须无缝地适应这些变化,确保准确处理数据。

在区块链中的链重组过程中,之前被认为是正确的区块可能会发生变化。链重组在区块链中经常发生。以下是由于链重组而从以太坊中排除的区块的示例。您可以看到这些重组发生的频率多高。

有时候社区可能会分裂并创建一个链的分叉,比如以太坊和以太经典,或者比特币和比特币现金。例如,正如我们在以太经典 51% 攻击的博客文章中讨论的那样,以太经典经历了一个显著的分叉。这些情况很少见,但根据区块链网络的当前共识更新 ETL 流水线中的数据非常重要,以确保处理数据的准确性。

数据结构和复杂性

处理来自不同区块链的不同数据结构在构建 ETL 流水线时面临着独特的挑战。让我们看一下比特币、Solana 和以太坊中交易的差异。

比特币使用 UTXO 模型,跟踪输入和输出以确定网络中的余额。

在 Solana 中,交易可以包含多个指令,这些指令是程序中的小型执行逻辑单元(在其他区块链上也称为“智能合约”)。

在以太坊的账户模型中,网络跟踪账户,这些账户可以代表个人、组织或智能合约。每个账户都有自己的地址和关联的余额。

这些交易结构的差异使得构建 ETL 流水线变得具有挑战性。将多个区块链集成到一个流水线中增加了复杂性,因为您需要处理各种不同的数据结构。

数据质量挑战

保持高数据质量是区块链 ETL 流水线的关键方面之一。

在处理大量数据时,区块链 ETL 流水线可能会出现缺失或重复的数据。缺失或重复的数据可能由于网络问题或数据源中的间隙等原因而发生。实施强大的数据验证技术和错误处理机制对于将缺失或重复的数据对整体流水线的影响降至最低是至关重要的。

区块链数据可能非常复杂,并且需要仔细解释。数据工程师需要理解区块链网络的复杂性,例如不同的交易类型、智能合约和代币标准。错误解读或误传数据可能导致错误的分析和决策。确保数据工程师对区块链概念和协议有深入的理解对于准确解释数据至关重要。

在区块链领域雇佣熟练的数据工程师可能会很昂贵。对具有区块链技术和 ETL 流程专业知识的经验丰富专业人员的需求往往推高了平均工资水平。

通过实施强大的数据验证技术和去重机制,并投资于熟练的数据工程师,组织可以克服这些挑战,确保他们的区块链 ETL 流水线的可靠性和准确性。

开源ETL软件

在构建区块链 ETL 流水线时,您有两个选择:构建定制解决方案或使用现有的开源工具。定制解决方案需要很多时间,容易出错,并且可能不易扩展。

另一方面,开源 ETL 软件提供预构建的功能和更快的实施速度。找到适用于比特币和以太坊等热门区块链的 ETL 软件非常简单。其中一个针对以太坊网络的热门开源 ETL 软件是ethereum-etl,在下图中可以看到它多年来一直得到维护:

然而,对于某些区块链来说,寻找开源解决方案可能是具有挑战性的,并且可能没有每个开源解决方案的活跃社区支持。对于某些区块链,您会发现它们是开源的,但它们可能没有得到维护以跟上网络中的变化。以下是 Solana、EOS 和 Tezos 的开源解决方案。

对于其他链,比如 Algorand、Flow、Harmony 等,并没有提供开源的替代方案。

公开可用的区块链数据集

有一些由 Google BigQuery 和 AWS 等平台提供的不同区块链的公共数据集,为 ETL 流水线提供了方便的访问。

然而,值得注意的是,像 Google BigQuery 和 AWS 这样的平台上的公共数据集存在一定的限制。这些数据集可能存在数据延迟和模式约束,并且仅提供有限数量的区块链网络的数据。

这些数据集的限制包括区块链产品的数量和更新频率。这些数据集通常每天更新一次,而不是实时更新。因此,如果您的 ETL 流水线完全依赖这些公共数据集,它可能会落后于最新数据高达一天。

虽然这些公共可用的数据集提供了基本的信息,如交易、区块和跟踪,但它们可能无法提供特定用例的全面数据,例如合约调用或去中心化金融(DeFi)交易数据。重要的是要考虑这些限制,并评估是否需要额外的数据源或替代方法来满足您的特定数据需求。

节点依赖

在使用区块链节点消耗区块链数据时,考虑到依赖区块链节点可能存在的问题是很重要的。区块链节点可能面临技术问题、停机时间或提供不一致的数据。

例如,如果一个节点遇到技术问题或下线,它可能导致数据提取延迟和不完整,从而导致数据集中出现间断。

一个强大的 ETL 流水线应该利用多个节点使系统具备冗余性,并最小化依赖单个节点可能引发的问题。

实时数据挑战

实时数据处理对区块链 ETL 带来了重大挑战。由于区块链的持续运作和频繁更新,不同节点可能对当前状态有不同的观点。

在区块链网络中,当多个区块生成时,网络通过共识机制确定哪个区块被视为有效,并将其添加为链中的最新区块。这种共识机制确保网络中的所有参与者对区块链的当前状态达成一致意见,并添加所选的区块以维护一致且准确的交易记录。因此,同一高度的其他区块被丢弃,可能消除了未连接到链中最新区块的多个分支。

由于共识机制的存在,实现明确和一致的状态需要时间。ETL 流程必须有效地适应这些不断变化的网络状态,确保数据同步、一致性和可靠性,尽管可能存在延迟。

Bitquery 如何解决这些问题?

Bitquery 通过提供针对索引化区块链数据的不同解决方案来解决这些问题。如果您正在构建区块链 ETL 流程,Bitquery 的 Streaming APIs 和 Data in Cloud 产品将解决我们上面讨论的大部分挑战。

借助 Bitquery 的 Streaming APIs,您可以访问实时和即时数据,确保您的 ETL 流程具有准确和最新的信息。这些 API 旨在为 Ethereum、BSC 和 Arbitrum 网络提供可靠和及时的数据,并将很快添加更多网络的支持。

Bitquery 的 Data in Cloud 产品非常适合消耗 Ethereum 数据的 ETL流程。它提供了来自Ethereum 主网的全面数据集,包括原始数据和后处理数据。这使得处理和分析变得高效,帮助您构建针对 Ethereum 定制的强大而有效的 ETL 流程。

结论:是否应该构建整个 ETL 流程?

在考虑是自己构建整个 ETL 流程还是将某些部分外包给服务提供商时,需要考虑多个因素。

如果您的 ETL 流程用于非时间敏感目的或仅涉及有限数量的区块链,那么构建自己的解决方案或使用免费可用的数据可能是可行的选择,因为涉及的复杂性较低。

然而,对于时间敏感的 ETL 流程或涉及多个区块链的情况,将某些方面(如数据索引)外包给像 Bitquery 这样的专业服务提供商可能更为实际。这可以利用他们的专业知识和现有基础设施,节省时间并减少与维护整个流程相关的成本。

最终,构建还是购买的决策取决于项目的具体要求,需要平衡复杂性、时间敏感性和相关成本。

评论

所有评论

推荐阅读

  • EXOR集团 :拒绝Tether公司收购尤文图斯股份的提议

    EXOR集团 :拒绝Tether公司收购尤文图斯股份的提议,重申无意出售尤文图斯股份。 此前报道,加密货币巨头Tether公司对于收购尤文图斯俱乐部的计划非常认真,他们准备再次开出一份超过20亿欧元的新报价。

  • Tether 开出总估价超过 20 亿欧元的新报价收购尤文图斯

    加密货币巨头 Tether 公司对于收购尤文图斯俱乐部的计划非常认真,他们准备再次开出一份超过 20 亿欧元的新报价。昨天 Tether 已经向 Exor 董事会提交了一份报价,意图收购阿涅利家族控股公司所持有的尤文图斯 65.4% 股份,这一消息由首席执行官保罗-阿尔多伊诺通过社交媒体公布,但这仅仅是谈判的开始。

  • American Bitcoin比特币储备过去7天增加约623枚,现仓位达4941枚BTC

    此前曾披露分析“1011内幕巨鲸”的链上分析师Emmett Gallic在X平台发文披露特朗普家族支持的加密矿企American Bitcoin比特币储备更新数据,过去七天增加约623枚BTC,其中约80枚来自于挖矿收入,542枚来自于公开市场的战略收购,截至目前其比特币总持有量增至4941枚,当前市值约合4.5亿美元。

  • 美国现货以太坊ETF昨日净流出1940万美元

    据TraderT监测,美国现货以太坊ETF昨日净流出1940万美元

  • 华夏基金香港在Solana上推出亚洲最大代币化货币市场基金

    12月12日消息,华夏基金香港(ChinaAMC HK)产品与策略负责人 Katie He 在 Solana Breakpoint 大会上表示,将推出亚洲首个且规模最大的代币化货币市场基金,涵盖港币(HKD)、美元(USD)和人民币(RMB)计价,将传统货币市场工具代币化,为投资者提供安全、链上访问稳定收益的机会,具有完全透明度和实时结算。经过数月与监管机构及 OSL 等伙伴的合作,这一创新将自香港扩展至更广阔地区,并原生部署到 Solana 区块链上。

  • 加拿大皇家银行已购入77,700股American Bitcoin股票

    据市场消息:价值1万亿美元的加拿大皇家银行已购入77,700股American Bitcoin ($ABTC)股票,价值约15万美元。该比特币矿企由特朗普家族成员Eric Trump支持。

  • 中国人民银行:继续实施适度宽松的货币政策,推进人民币国际化

    中国人民银行党委召开会议,会议纪要第三点指出:继续实施适度宽松的货币政策,加快推进金融供给侧结构性改革。把促进经济稳定增长、物价合理回升作为货币政策的重要考量,灵活高效运用降准降息等多种货币政策工具,把握好政策实施的力度、节奏和时机,保持流动性充裕,促进社会综合融资成本低位运行,加强对实体经济的金融支持。畅通货币政策传导机制,优化结构性货币政策工具运用,加强与财政政策的协同,激励和引导金融机构加力支持扩大内需、科技创新、中小微企业等重点领域。保持人民币汇率在合理均衡水平上的基本稳定。会议纪要第五点指出:稳步推进金融高水平开放,维护中国国家金融安全。践行全球治理倡议,积极参与和推进全球金融治理改革完善。务实开展金融外交和多双边货币金融合作。推进人民币国际化。持续建设和发展多渠道、广覆盖的人民币跨境支付体系。稳步发展数字人民币。

  • 日本央行据悉将进行更多加息 部分官员认为中性利率高于1%

    据知情人士透露,日本央行官员认为,在本轮加息周期结束前,利率很可能升至0.75%之上,这表明在下周加息之后,可能还会有更多次加息。这些人士称,官员认为,即使加息至0.75%,日本央行仍未达到中性利率水平。部分官员已认为1%仍低于中性利率水平。知情人士表示,即便日本央行根据最新数据更新中性利率估算,目前也并不认为该区间会显著收窄。目前日本央行对名义中性利率区间的估计约为1%至2.5%。知情人士称,日本央行官员认为该区间上下限本身也可能存在误差。(金十)

  • Nexus 启动“节点之光·先锋理财周”,打造节点用户专属通道

    Nexus 12月12日宣布即将启动为期五天的 “节点之光·先锋理财周”,以“节点身份金融特权” 为核心理念,为生态核心参与者开启一段独立于全平台的专属理财周期。此次活动仅限节点用户参与专属理财包认购,并为随后上线的全平台理财与 NexSwap 注入市场期待。

  • 美 SEC 主席:DTC 参与者可将代币化证券转入其他参与者的注册钱包

    美国证券交易委员会(SEC)主席 Paul Atkins 在 X 平台发文表示,美国金融市场即将向链上转型并将优先考虑创新并积极采用新技术,SEC 已向美国存托信托与清算公司(DTC)发布了一封不采取行动的信函,链上市场将为投资者带来更高的可预测性、透明度和效率,现在 DTC 参与者可以直接将代币化证券转入其他参与者的注册钱包,这些交易将被 DTC 官方记录跟踪。