当Google大数据遇上以太坊数据集,这会是一个区块链+大数据的成功案例吗?

作者 | Allen Day、Evgeny Medvedev

编译 | 王柯凝、kou

就像熟知“互联网+”一样,你肯定或多或少也了解“区块链+”这个名词,甚至有些人,每每谈到它,都会津津乐道,乐此不疲!目前,区块链与人工智能、物联网以及大数据的结合,争议颇多。 一方面区块链可以保障数据的安全性与可信度,人工智能、大数据可以提高链上效率,拓展区块链的落地场景;但另一方面,愿景终归好的,一个很大的痛点,就是区块链技术规模化落地难落地,应用场景并不多。 可喜的是,在区块链+大数据方向,继比特币数据集之后,Google再一次做了很好的尝试——在BigQuery上发布了以太坊数据集!以加密猫为例,Google在BigQuery平台上利用大数据方法对以太坊数据集做了很好的可视化! 那么,基于以太坊的大数据思维,以太坊上执行最多的智能合约是哪一个?最受欢迎的Token又是哪一个?如何去判断?接下来,跟随作者,一探究竟!

区块链技术和加密货币在吸引越来越多的技术、金融专家和经济学家们眼球的同时,也给与了他们无限的想象空间。从根本上来说,加密货币只是底层区块链技术的应用之一,而伴随着区块链技术的不断突破与发展,“区块链+”这一概念正在不断地深入人心

Google 在区块链+大数据这一破受争议的方向就做了很好的尝试!

就在今年早些时候,Google 的大数据分析平台 BigQuery 提供了比特币数据集分析服务。近日,Google 在 BigQuery 平台上再次发布了以太坊数据集

大多数人可能会认为以太坊区块链是一个不可变的分布式分类帐。但实际上,V神使用EVM(以太坊虚拟机)对函数进行了扩展,在这个虚拟机上,可以执行存储在区块链上的任意代码,而这些代码就是智能合约。

在系统架构方面,与比特币颇为相似,以太坊主要用于记录不可变交易。从本质上来看,二者都是联机事务处理(OLTP)数据库,都不提供联机分析处理(OLAP)功能。以太坊数据集与比特币数据集相比,主要存在以下三点不同:

  • 以太坊的价值单位是以太币,比特币的价值单位是比特币。以太坊上大多数价值转移都是由 Token 组成,而 Token 则由智能合约创建和管理
  • 以太币的价值转移精确而直接,这就类似于会计学中的借方和贷方。与比特币价值转移机制不同的是:比特币可以很容易地确定给定钱包地址的余额,而以太币则很难做到这一点。
  • 以太坊的地址不仅可以是包含余额的钱包,还可以是包含智能合约的字节码,该字节码能够编程创建协议,并自动触发协议执行。此外,还可以借助智能合约构建去中心化自治组织。

Google 在 BigQuery 平台上发布以太坊数据集,目的就在于深入探索以太坊数据背后“暗藏”的那些事儿

Google 利用 GitHub 上 Ethereum ETL 项目中的源代码提取以太坊区块链中的数据,并将其加载到 BigQuery 平台上,将所有以太坊历史数据都存储在一个名为 ethereum_blockchain 的数据集中,而且每天都在持续不断地更新。

Google Cloud 接入以太坊

虽然以太坊上的应用包含可以随机访问函数的 API,如:检查交易状态、查找钱包-交易关系、检查钱包余额等。但是,在这些应用中,并不存在能够轻松访问区块链数据的 API 端点,除此之外,这些应用中也不存在查看聚合区块链数据的 API 端点。

下图是18年上半年以太币的日常记录交易量和平均交易成本:

在公司的业务决策中,如上图这样的可视化服务(或基础数据库查询)就显得尤为重要,比如:为平衡资产负债表,应优先改进以太坊架构(比如是否准备更新),这就需要去分析:资产需要多久才能重新平衡?

BigQuery 平台具有强大的联机分析处理功能,一般来说,不需要借助额外的API实现,就可以很好支持以上这种业务决策。

Google Cloud 构建了这样一个软件系统:

  • 将以太坊区块链同步到 Google Cloud 上可运行 Parity 语言的计算机中。
  • 每天从以太坊区块链分类帐中提取数据,这其中包括 Token 转移等智能合约交易结果。
  • 取消按日期分区的数据规范,并将其存储在 BigQuery 平台上,进行简单且具有成本效益的探索。

也可在 Kaggle 上获取以太坊区块链数据集,使用 BigQuery Python 客户端库查询 Kernel 中的实时数据(注:Kernel 是 Kaggle 上的一个免费浏览器编码环境)。

区块链的大数据思维

基于以太坊数据集,我们分别对以下三个热门话题做了查询和可视化处理:

  • 智能合约函数调用
  • 链上交易时间序列和交易网络
  • 智能合约函数分析

分析1:最受欢迎的智能合约事件日志?

到目前为止,以太坊区块链的主要应用实例是Token交易。

那么,如何借助大数据思维,通过查询以太坊数据集的交易与智能合约表,来确认哪种智能合约最受欢迎?

从交易量上来看,最受欢迎的10种以太坊ERC-721合约如图:

我们可以看到,最受欢迎的 ERC-721 智能合约地址是:

0x06012c8cf97bead5deae237070f9587f8e7a266d,

为什么会是它?

因为它就是众人周知的去中心化应用“迷恋猫(CryptoKitties)”游戏的主要智能合约。

另外,我们借助 BigQuery 平台,也将迷恋猫的出生事件记录在了区块链中。

最后,我们对至少拥有10只迷恋猫的账户进行了数据收集,其中,颜色表示所有者,将迷恋猫家族进行了可视化。其中,圆点大小就代表加密猫的级别

分析2:交易量和交易网络

以太坊上存很多种 Token,其分布模式因类别和时间的不同而呈现出多样性。通过查看每个 Token 的交易活动,我们可以筛选出某段时期内受欢迎的Token?比如:从交易量上来看,最受欢迎的10种以太坊 Token(ERC20合约)有哪些?

在BigQuery平台查询结果中,排在第5位的Token是 OmiseGO($ OMG),其地址为:

0xd26114cd6ee289accf82350c8d8487fedb8a0c07。

BigQuery 平台按时间窗口统计 Token 交易量,特别是 $ OMG Token 转移的日常数量。

下图是截止到2018年8月2日,Data Studio 上的数据可视化结果:

从上表中我们可以看出:2017年9月13日,$ OMG接收者数量大幅增加,而发送者数量则无异常变化,为什么出现这样的情况?其实这个时间点,对应了OMG Token的第一次空投

由于数据由以太坊钱包地址之间的转移组成,因此,我们可以使用有向图数据结构进行分析。

下图是相同数据子集的可视化结果:数据来源于至少包含两个贸易伙伴的前50,000个交易

节点表示以太坊上的钱包地址,彩色线条表示一对地址之间的Token转移。线条的长度与Token的转移量成正比,Token转移量越大,图表中的钱包就越紧密。

Token地址之间的转移将会聚合在一个组中,从而与其他组区分开来。

我们使用Modularity算法对不同组的节点进行颜色标记,并使用Gephi进行可视化(小编:下图像不像一条可爱的小金鱼)。

像不像一条小金鱼??

分析3:智能合约函数分析

在本文开篇已经提到:很多以太坊区块链上的智能合约类型都是 ERC-20。ERC-20 合约简单地定义了智能合约可以实现的软件接口,其合约由一组与 Token 转移有关的函数组成

智能合约还可以实现许多其他功能。目前,大部分智能合约的源代码是开源的,可供免费使用。

即使我们没有源代码,也可以从函数的名称中了解到其他合约都能做什么,这是因为相同的函数名将共享同一个签名。

回到分析3中讨论的“迷恋猫”游戏,这个游戏的主要元素是活泼可爱的猫咪,并且育种事件中基因的混合在迷恋猫 GeneScience 智能合约

0xf97e0a5b616dffc913e72455fde9ea8bbe946a2b

中实现。假设我们想找一个与“迷恋猫”游戏的 GeneScience 智能合约机制相类似的游戏,就可以在 BigQuery 平台上通过使用 Jaccard 相似性系数中的 JavaScript UDF 进行实现

这些分析表明:GeneScience智能合约的几个早期版本,与当前地址为

0xf97e0a5b616dffc913e72455fde9ea8bbe946a2b

的智能合约版本最为相似。但如果使用数字签名来衡量,其他的区块链游戏也有高度相似的合约,比如“云撸狗”(CryptoPuppies)的智能合约地址为:

0xb64e6bef349a0d3e8571ac80b5ec522b417faeb6。

原文链接: https://cloud.google.com/blog/products/data-analytics/ethereum-bigquery-public-dataset-smart-contract-analytics

原文发布于微信公众号 - 区块链大本营(blockchain_camp)

原文发表时间:2018-09-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏区块链大本营

BTA | 杨德升:掌握这些技术点,现在就能做一个Dapp!

66480

对以太坊的优雅介绍

重要提示:如果您拥有价值超过1,000美元的加密货币,那么您肯定应该使用硬件钱包,而不是在交易所保留硬币。我推荐Trezor,您可以直接从他们的网站购买€89 ...

45150
来自专栏企鹅号快讯

糖果吃了那么多,你真的知道比特币分叉是咋回事吗?

简洁的语言 科学的归纳 艺术的区块链 最近有比特币的小伙伴除了感受有力而魔性的市场震荡外,想必还吃了不少糖果(分叉币)吧? ? 那么比特币为啥要分叉捏? ? 这...

21970
来自专栏区块链

区块链到底是什么?(A Blockchain/The Blockchain/Blockchain Technology概念辨析)

区块链是一个效率非常低的数据库,它作为比特币中拼图难题(jigsaw puzzle)正常运转必须的技术之一而被人们熟知。

2.6K400
来自专栏耕耘实录

区块链核心概念注解

版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢

18230
来自专栏区块链讲解

从功能上讲解区块链是什么

  区块链是什么,区块链系统开发 左彬 1 8 8- 2 7 4 1-4 7 1 4 微/电 ?区块链是一种去中心化的分布式账本数据库。通俗一点说,区块链技术就...

6130
来自专栏奇点大数据

【比特币】加密货币的本质

去年,比特币暴涨,其他币也像雨后春笋一样冒出来,已经有1000多种了。 很多人都在问,加密货币(cryptocurrency)的时代,真的来临了吗?将来会不会人...

39950
来自专栏极客编程

Blockchain和Tangle哪一个是未来?

2017年是加密货币热潮令人难忘的一年。从那时起到现在世界没有任何改变,但今天我们对加密货币仍然很兴奋。乐观主义者认为,比特币将从根本上改变世界各地的支付,经济...

8810
来自专栏存储

区块链技术的DOS阶段——智能合约上

导 读 前面和大家讲目前区块链技术大概在什么水平的时候,用计算机的发展阶段给大家类比过,还记得吗?目前的区块链技术还没有十分发达,大概处在计...

21550
来自专栏点滴科技资讯

区块链技术背后的运行逻辑

? 区块链技术可能是自互联网技术以来最伟大的发明。区块链可以在不需要有中央权威机构的情况下或不需要双方信任的情况下交换价值或财富。想像一下你和我要赌明天旧金...

43380

扫码关注云+社区

领取腾讯云代金券