【技术实现步骤摘要】
一种面向对象的区块链查询方法和装置
本专利技术属于区块链技术及数据处理
,特别涉及区块链数据的查询方法、装置的设计。
技术介绍
区块链的数据采用增量存储的模式,以区块数据和交易数据为主。目前的区块链块数据或交易数据的查询,主要使用遍历查询、基于哈希的查询和基于块高度的查询等方式。这种设计方式下,应用程序会存储上链数据对应的链上哈希,基于应用数据提供的哈希值进行查询,但无法提供基于复合条件的链上查询或范围数据的链上查询,灵活度极低。随着区块链技术的发展,区块链的应用场景不断丰富,查询需求更加多变,现有的基于哈希等条件的链上查询方式无法满足应用需要。例如,当我们在某一存有用户信息的区块链上查询年龄大于18的所有用户列表时,传统的区块链查询处理方法只能将所有交易数据进行遍历,每个交易提取应用数据段(data数据)进行解析,获取其中年龄字段对应的数值,大于18的通过筛选。当区块链的整体账本较大时,这种查询方式需要的时间成本较高,难以满足应用的效率要求。因此本专利技术提出一种面向对象的区块链查询语言BQL及其处理 ...
【技术保护点】
1.一种面向对象的区块链查询方法和装置,其查询装置特征为:/n(1)交易业务缓存池pool,缓存区块链数据进行格式转换后的交易业务数据,以支持查询;/n(2)BQL(Blockchain Query Language)解析器,解析BQL查询语言对象,并转换成编程语言可识别的逻辑查询条件;其中,BQL对象基本结构包括:/n(2.1)page:用于处理分页查询场景;/n(2.2)condition:查询条件,包括:/n(2.2a)key:条件名称;/n(2.2b)value:条件值;/n(2.2c)relationship:key和value的关系;/n(2.3)conjunc ...
【技术特征摘要】
1.一种面向对象的区块链查询方法和装置,其查询装置特征为:
(1)交易业务缓存池pool,缓存区块链数据进行格式转换后的交易业务数据,以支持查询;
(2)BQL(BlockchainQueryLanguage)解析器,解析BQL查询语言对象,并转换成编程语言可识别的逻辑查询条件;其中,BQL对象基本结构包括:
(2.1)page:用于处理分页查询场景;
(2.2)condition:查询条件,包括:
(2.2a)key:条件名称;
(2.2b)value:条件值;
(2.2c)relationship:key和value的关系;
(2.3)conjunction:连接词,与下一个condition之间的连接关系。
2.根据权利要求书1所述一种面向对象的区块链查询方法和装置,其查询方法特征为,其处理流程如下:
(1)系统启动时初始化交易缓存池pool,区块链数据中的应用数据字段转换为对象格式,一同存入pool;
...
【专利技术属性】
技术研发人员:蔡维德,
申请(专利权)人:北京天德科技有限公司,天民青岛国际沙盒研究院有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。