代码描述如下,需要自取。
在这短短40行中,我们创建了以太坊交易的整个底图,命名为ethereum_transaction_network。把来自Kafka的实时交易流table_new_trade不断添加到命名为ethereum_transaction_network的图中。
接下来,每当有新的交易到达的时刻,都将触发一次3跳循环交易模式的检查,把更新的结果存入位于Kafka的外部表tbl_circular_trade,可以很方便地分发给下游组件。
实时交易数据我们采用了XBlock-ETH: Extracting and exploring blockchain data from Ethereum这篇论文整理的真实的以太坊区块数据,在这个Demo中把以太坊地址隐去,以一个数字替代,即每个数字代表以太坊的一个钱包地址,相同的数字表示相同的地址。生成的循环路径结果我们拼接成一个字符串,方便观察。
set geaflow.dsl.window.size = 200;
-- 以太坊交易的底图
CREATE GRAPH IF NOT EXISTS ethereum_transaction_network (
以上便是开源图计算平台TuGraph Analytics结合Kafka,快速搭建的以太坊循环交易检出解决方案。虽然这只是一个小小的demo,但实机演示中强大的图计算语法和系统性能可见一斑,大大较低了我们普通人搭建图计算应用的难度和成本。
说多不如现在开始行动,TuGraph Analytics是你不容错过的利器。现在就赶快访问https://github.com/TuGraph-family/tugraph-analytics,亲自体验TuGraph Analytics的魅力吧!此外,我们欢迎各位参与到开源贡献中来,为社区贡献自己的智慧和代码,共同促进国产图计算系统的发展。
[参考文献]
P. Zheng, Z. Zheng, J. Wu, and H.-N. Dai, “XBlock-ETH: Extracting and exploring blockchain data from Ethereum,” IEEE Open J. Comput. Soc., vol. 1, pp. 95–106, May 2020, doi: 10.1109/OJCS.2020.2990458.