
本文字数:6240;估计阅读时间:16 分钟
作者:ClickHouse Team
审校:庄晓东(魏庄)
本文在公众号【ClickHouseInc】首发
介绍
作为一家以开源为根基的公司,我们发现用户通常是第一个识别并运用新的架构模式或应用的人。虽然我们可能是ClickHouse的专家,但要尝试所有可能的集成技术,或对所有用例代表性的数据集都进行实验,几乎是不可能的。因此,每当我们进行客户访谈时,我们总是很兴奋地听到新兴的部署模式,尤其是与其他流行的开源项目一起使用的模式。在与我们的客户Goldsky交流,并听到这样一种模式后,我们决定分享他们对Redpanda、Apache Flink和ClickHouse的部署架构。我们认为这对于那些需要将数据集的转换子集传递给多个最终客户的用户,可能具有广泛应用价值。
为了突显这种架构的能力,Goldsky慷慨地分享了来自广泛使用的区块链的数据,该数据基于一个公开可访问的ClickHouse实例。这使得有兴趣使用此免费且持续更新的数据源创建基于区块链数据的功能、产品或平台的用户,可以轻松地使用Goldsky平台进行概念验证。通过消除有关摄取管道、基础架构设置或通过BigQuery直接使用此数据时管理成本的担忧,我们希望此概念验证能够作为使用ClickHouse和Goldsky进行区块链分析时实现效率的宝贵示例。
Goldsky
Goldsky提供加密数据服务,将来自超过15个最受欢迎的区块链的数据交付给客户的数据存储。这包括区块链索引、子图和数据流水线。通过提供开发人员创建简单API的能力,这些数据可以在强大的dApps(去中心化应用程序)中公开,而无需关注所需基础设施、数据管理和提取有用信息的逻辑的复杂性。通常,前者涉及远程过程调用(RPC)提供程序和复杂且难以建模的API。
通过提供“数据管道即服务-data-pipelines-as-a-service”,Goldsky允许开发人员使用客户特定的逻辑对区块链数据进行过滤和转换,以便只将区块链的特定子集传递到智能API端点。虽然用户通常在Goldsky提供的数据上公开API端点,但如果需要更复杂的查询,则ClickHouse越来越被视为首选的分析数据库。在这种情况下,Goldsky需要将区块链数据交付到专用的ClickHouse(通常是Cloud)集群。该数据集通常是特定区块链的子集,例如与特定地址相关的所有区块或钱包的余额。除了过滤或仅从特定时间点开始流,用户还需要在插入到ClickHouse之前对数据进行预聚合的能力。
虽然这些处理能力都内置在Goldsky服务中,但从数据工程的角度来看,这提出了一个挑战 - 如何有效地将相同的TB数据流式传输到可能有数万个ClickHouse实例,同时提供面向客户的处理,可能仅针对子集。

本文介绍了Goldsky如何使用开源技术构建了一个架构,通过Redpanda存储转换后的区块链数据,ApacheFlink进行实时处理和过滤,最后将数据流式传输到ClickHouse进行分析。该架构展示了如何将大规模区块链数据高效地分发给多个用户,同时提供低延迟的服务。
最低0.47元/天 解锁文章
1109

被折叠的 条评论
为什么被折叠?



