【技术实现步骤摘要】
一种区块链账本数据抓取解析方法
本专利技术涉及区块链
,更为具体的,涉及一种区块链账本数据抓取解析方法。
技术介绍
区块链核心概念是分布式账本,同一份全量的交易账本数据存储在任意一台节点中,账本是由多个区块构成的有时序的链表,而每个区块又是含有多条交易构成的链表。区块链系统中提供了对账本数据的查询服务,但是对于区块和交易数据的查询呈现及相关的统计信息,没有方便的解析和查询服务,同时区块链本身也是一个数据不断增长的,不断累积的系统,尤其在交易数据量大的应用场景,数据快速增长,数据存储的可扩展能力和数据查询服务的性能都难以满足。当前区块链数据查询账本信息不够方便,不能很好提供对区块链数据的区块和哈希查询服务,且账本数据随着时间的不断增长不断累积,后续数据越来越大,存储的扩容和读写性能都会遭遇瓶颈。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种区块链账本数据抓取解析方法,为区块链系统提供区块、交易数据的解析、存储、查询服务,数据按不同的区块链通道进行分区存储,可动态对存储进行扩容和迁移,同时也达到均摊数据访问的压力,提升读写性能。本专利技术的目的是通过以下方案实现的:一种区块链账本数据抓取解析方法,包括步骤:S1,指定需要抓取解析的区块链节点,与区块链节点建立连接,获取该节点中的所有通道;为每个通道启动抓取数据线程,注册事件监听程序,监听通道的出块事件,对账本数据进行抓取;S2,抓取到账本数据后,进行解析,解析出区块和交易数据;S3 ...
【技术保护点】
1.一种区块链账本数据抓取解析方法,其特征在于,包括步骤:/nS1,指定需要抓取解析的区块链节点,与区块链节点建立连接,获取该节点中的所有通道;为每个通道启动抓取数据线程,注册事件监听程序,监听通道的出块事件,对账本数据进行抓取;/nS2,抓取到账本数据后,进行解析,解析出区块和交易数据;/nS3,将解析出的数据,按通道、区块哈希、交易哈希进行分库分表存储;/nS4,对数据库进行扩容,当账本的数据越来越多时,对数据库进行扩容,所述扩容包括水平扩容;/nS5,对数据迁移,在数据扩容后,对数据进行迁移,将数据分摊到扩容后的数据库中,使数据分布更均衡。/n
【技术特征摘要】
1.一种区块链账本数据抓取解析方法,其特征在于,包括步骤:
S1,指定需要抓取解析的区块链节点,与区块链节点建立连接,获取该节点中的所有通道;为每个通道启动抓取数据线程,注册事件监听程序,监听通道的出块事件,对账本数据进行抓取;
S2,抓取到账本数据后,进行解析,解析出区块和交易数据;
S3,将解析出的数据,按通道、区块哈希、交易哈希进行分库分表存储;
S4,对数据库进行扩容,当账本的数据越来越多时,对数据库进行扩容,所述扩容包括水平扩容;
S5,对数据迁移,在数据扩容后,对数据进行迁移,将数据分摊到扩容后的数据库中,使数据分布更均衡。
2.根据权利要求1所述的一种区块链账本数据抓取解析方法,其特征在于,在步骤S1中,包括如下步骤:
S11,抓取连接区块链系统的peer节点;
S12,对区块链peer节点进行查询,获取所有的通道信息,并设置定时任务,定期检查新增的通道;
S13,查询到通道或者有新增的通道,对通道进行注册监听程序,设置账本同步的起止高度,初始化通道;
S14,启动抓取线程,接收监听到的区块链账本数据,并存入缓存中。
3.根据权利要求2所述的一种区块链账本数据抓取解析方法,其特征在于,在步骤S11中,包括如下步骤:
S111,加载peer节点的配置信息,所述配置信息包括连接peer的用户、用户身份、用户证书信息、peer的连接地址;
S112,创建连接的客户端实例。
4.根据权利要求3所述的一种区块链账本数据抓取解析方法,其特征在于,在步骤S13中,包括如下步骤:
S131,通过客户端实例获取每个peer节点加入的通道信息;
S132,对每个peer节点的通道进行去重,避免重复抓取数据;
S133,创建客户端通道;
S134,配置通道监听程序,监听区块数据;
S135,设置区块账本同步的起止高度,初始化通道。
5.根据权利要求1所述的一种区块链账本数据抓取解析方法,其特征在于,在步骤S2中,包括如下步骤:
S21,启动数据解析线程;
S22,从缓存中获取账本数据,并进行解析,将账本数据的关键信息区块和交易数据解...
【专利技术属性】
技术研发人员:曾青海,赵小峰,白健,安红章,
申请(专利权)人:中国电子科技网络信息安全有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。