ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

作者: 舒适 (ArcBlock 团队数据工程师)

为帮助大家深入了解 ArcBlock 的开放链访问协议的实现和技术细节,我们工程团队将定期接受采访或撰写技术博客来“解密” OCAP 背后的设计思路和实现细节,欢迎大家的批评指正,在讨论中进一步完善我们的设计和产品。

今天发表的“深入理解 OCAP 实现”系列之三是数据工程师舒适结合她个人在 ArcBlock 的工作实践谈一谈数据对区块链行业发展的重要性。

很多人会问,为什么 ArcBlock 这样一家初创的区块链公司需要大量的数据分析?又有什么数据可以分析呢?今天我们从 “开放链访问协议(OCAP)” 的数据方面切入,介绍一下目前比特币和以太坊上数据量的情况和潜在价值,并从宏观角度介绍一下 ArcBlock 平台是如何构建自己的data pipeline的。数据分析不仅是 ArcBlock 产品和服务的一部分,也是我们做出各种决策的基础和信心。

什么是数据?

首先要统一一下对数据的定义: 数据就是数值,也就是我们通过观察、实验或计算得出的结果。更广义地理解可以说,数据就是人们在这个世界留下过的痕迹,而人们最终可以通过收集和分析这些痕迹,提出之前未曾想到的问题,并找到问题的答案。 ArcBlock 平台使用的数据包括了:用户使用产品的情况和反馈、现有的链上数据,以及系统的日志 。

在 ArcBlock,我们对数据的使用主要分成三个部分:

  1. 链上数据的分析

  2. 用户和产品的分析

  3. 安全监控

一. 链上数据的分析

区块链技术的一个核心亮点是数据的不可篡改性,也就是说每一笔产生过的交易都有迹可循。区块链就像是一本公开的总账,只要有比特币地址,你就可以查询到这个地址参与过的所有交易。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

从 2017 年开始,由于比特币价格直线走高,越来越多的人开始关注并使用它作为交易平台,使得比特币上的数据类型和内容都日益丰富。比特币链上自 2009 年诞生至今将近十年,储存的交易总数高达大约 17 亿条。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性哪怕是更年轻的诞生于 2015 年的以太坊,其链上也已经有超过 600 万个区块,数亿条交易数据,并且新的数据仍在以 12 秒一个区块的速度持续增加着。

这些数据实际上是用户的交易行为,蕴藏着大量的有价值信息。一笔一笔的钱都从哪里来,又去了哪里?资金的流通过程是怎样的?什么样的地址存在异常交易行为?有无数的信息等待我们挖掘。

为什么这些公开的数据在市场上没有足够多的数据分析报告呢?一是由于区块链去中心化的特点,其背后没有专门的产品经理和团队做专门的用户画像和产品分析;二是因为区块链的结构和算法有一定门槛,需要一定的研究才能把数据解析出来。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性为了更好地做数据分析,我们把比特币和以太坊的数据解析出来,并通过 Listener 保持数据的实时更新。在之前的文章中,已经介绍了数据是如何解析的。我们把解析好的数据以 parquet 的形式存在 s3 上面备份,同时把数据打入 data pipeline,用 Spark 做好数据的清理和聚合,然后再将整理好的数据放进 redshift,处理之后用可视化图表展示出来。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性目前我们使用 Superset 对以太坊做了日活跃用户和月活跃用户的分析,之后还会陆续加入更多的链上数据分析报告,如用户留存率,用户流失率,冷钱包数量等。

二. 对用户和产品的分析

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性更好的服务的核心是更优化的产品,更优化的产品又离不开对用户的了解。在打造一个产品的过程中,充斥着大大小小的决定:大到应该优先开发哪一个功能,产品的定位应该往什么方向发展,小到应该优先修复服务中的哪一个问题,网站页面如何布局才能更好地提升用户体验。只有对用户需求有更准确的了解,我们才能做出正确的决定。在 ArcBlock,所有做出的决定都应该是一个可追溯的过程,而数据的支持是一切答案的信心和基础——数据是用户真实行为和选择的反映。

因为对数据的重视,从一开始我们就很注重打造一条和产品线齐头并进的数据 pipeline。这条 pipeline 可以让我们实时获取产品被使用的状况,保存好每个时间段的数据。我们的 API 会把产品的使用数据实时打进 Kinesis stream,然后用 s3 做好这部分原始数据的备份;另一边用 spark 做原始数据的处理和聚合,并且把处理好的数据导到 redshift 上,用来做之后的数据分析以及可视化。随着之后产品的不断升级和新功能的增加,我们的 pipeline 也会不断优化。

三. 安全监控

区块链是建设价值互联网的基础设施,安全性尤为重要。除了设计严密的基础架构,ArcBlock 平台也会利用数据分析提前识别出恶意用户的行为,以防患于未然。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

我们会将所有的系统日志备份在 s3 上,和处理好的用户数据一起通过专门的数据分析引擎,用机器学习等方法,通过比对历史和当前的数据,以最快速度识别出异常的用户行为,通过系统的自动处理,防止恶意的攻击行为给用户带来损失。

今天简单介绍了 ArcBlock 平台对数据在三个方面的使用。关于区块链的过去和未来,不论是已提出还是未提出的问题,其答案都在数据里,不来也不去,等着我们找到一个最合适的算法让它们浮出水面。

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

  ArcBlock 博客 | 开放链访问协议为何采用 GraphQL

ArcBlock 博客 | 如何解析 BITCOIN 的数据

ArcBlock 博客 | 30 天 21 个版本 OCAP Playground 都经历了哪些变化?

ArcBlock 博客 | 如何在几十个 Repo 中游刃有余?

ArcBlock 博客 | OCAP Playground 入门指南

ArcBlock 博客 | 思考,问题和方法

ArcBlock首个应用“开放链访问协议实验台”发布 第一次让区块链应用开发变得简单友好

ArcBlock视频 | “开放链访问协议实验台”全球亮相


ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

更多ArcBlock区块基石信息,可关注以下渠道了解: 

  • Twitter | https://twitter.com/ArcBlock_io

  • Instagram | https://www.instagram.com/arcblock/

  • Facebook | https://www.facebook.com/arcblock.io/

  • Telegram | https://t.me/ArcBlock

  • LinkedIn | https://www.linkedin.com/company/18355951/

  • Reddit | https://www.reddit.com/r/arcblock/

  • Medium | https://medium.com/arcblock

  • 微博 | https://weibo.com/realArcBlock

  • 微信群 | 加拉群小助手:Ddchain

  • 电报群 | ******** groups:

    ********(English): https://t.me/ArcBlock

    ********(繁体中文): https://t.me/ArcblockAsian

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

ArcBlock 博客 | 浅析数据对区块链行业发展的重要性

ArcBlock官网 点击登陆

相关文章:

  • 2021-11-12
  • 2021-10-02
  • 2021-11-07
  • 2021-08-23
  • 2021-09-23
  • 2021-08-31
  • 2021-07-30
  • 2021-06-16
猜你喜欢
  • 2021-08-31
  • 2022-01-01
  • 2021-08-08
  • 2021-11-30
  • 2021-12-02
  • 2021-09-01
  • 2021-04-05
相关资源
相似解决方案