[发明专利]一种基于Java智能合约的数据组织和存储方法有效

专利信息
申请号: 201911134271.5 申请日: 2019-11-19
公开(公告)号: CN110955658B 公开(公告)日: 2022-11-18
发明(设计)人: 李伟;邱炜伟;李启雷;尹可挺;董剑辉 申请(专利权)人: 杭州趣链科技有限公司
主分类号: G06F16/22 分类号: G06F16/22;G06F16/2455;G06F16/26;G06Q50/18
代理公司: 杭州求是专利事务所有限公司 33200 代理人: 贾玉霞
地址: 310051 浙江省杭州市*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 java 智能 合约 数据 组织 存储 方法
【权利要求书】:

1.一种基于Java智能合约的数据组织和存储方法,其特征在于,该方法包括如下步骤:

S1:将嵌套的集合或映射数据解耦为列簇表形式,所述的列簇表中,每一列均为对象的每个元字段,具有关联或相似关系的列集成为一个列簇,每一行的数据对应一整个对象,每行的每个单元格为所述的一整个对象的每个元字段的属性值。

S2:擦除对象的类型信息,将对象的每个元字段的属性值用字符串替代,并对每个元字段的属性值、行、列簇、列分别做安全检查,判断行名、列簇名、列名是否为为空指针、空字符串,若是,抛出异常,拒绝存储;若不是,则进入下一步。

S3:判断行名、列簇名、列名含有@符号,若是,抛出异常,拒绝存储;若不是,则进入下一步。

S4:判断该操作,如果为插入新数据或修改数据,则继续检查元数据是否为空,若为空,则抛出异常,拒绝存储;若不为空,则进入下一步;如果是删除数据,则直接进入下一步。

S5:将S4得到的数据的行名、列簇名、列名拼接成字符串,拼接规则为:行名@列簇名@列名,将拼接好的字符串作为Key,元数据作为Value得到键值对<Key,Value>。

S6:调用平台接口存储该键值对<Key,Value>到区块链底层的缓存中,如果是删除数据,Value为空;在Java智能合约最终执行完成之后,将所有缓存的数据都写入区块链账本中,保证数据的原子性。

2.根据权利要求1所述的基于Java智能合约的数据组织和存储方法,其特征在于,当查询数据时,也需要先拼接行名、列簇名、列名,得到想要查询的键值对的Key,拼接规则为:行名@列簇名@列名。

3.根据权利要求1所述的基于Java智能合约的数据组织和存储方法,其特征在于,所述的S6中,读取数据时也先尝试从缓存中获取,如果查不到则直接从账本进行查询,若账本仍没有,则返回空;所述的缓存与账本接口使用同样的语言实现,重用缓存,使得对多种智能合约执行引擎可以执行同一套缓存机制。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州趣链科技有限公司,未经杭州趣链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911134271.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top