【技术实现步骤摘要】
【国外来华专利技术】使用分布式账本技术的关系数据管理和组织
[0001]本申请涉及数据的管理和组织以使得能够根据关系数据库原理向/从分布式账本存储和检索该数据。
技术介绍
[0002]原始的关系数据库系统是响应于20世纪60年代末计算的重大新发展而出现的。随着系统变得越来越大并且越来越复杂,变得清楚的是,新的且更新的程序需要与较旧的程序创建的数据一起工作。现有系统使其变得困难,这是因为程序通常以其自身的方式来存储数据。关系模型对存储和检索的重要方面进行了标准化,并且采用关系模型的使用者享有一系列好处,包括更便宜的升级和减少的供应商锁定。
[0003]相反地,那些仍然被计算机供应商引导到特定程序存储方法的使用者后期要承受更高的维护成本和更大的努力,特别是当有时最终做出迁移至关系数据库管理系统(RDBMS)平台的决策延迟较长时。20世纪70年代,澳大利亚国防部持续数年的项目最终摆脱了非关系霍尼韦尔事实语言(Honeywell Fact language)是对这些成本的证明。
[0004]从那时起不时地,其他计算领域的进步使现有的关系数据库工具不兼容或不方便。例如,早期万维网的面向文件的性质导致许多项目回到关系数据库之前的低效时期,直到实现并实践了网页到RDBMS后端的连接。类似地,面向对象编程的出现暂时地使程序员使用关系数据模型表示数据变得不那么自然。封装在对象中的数据很难分解为RDBMS表。然而,关系表示的优势足够显著,以至于现在对象关系映射(ORM)是其中仍然使用面向对象编程的常用方法。
[0005]另一方面,分 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种利用关系数据库管理查询来查询实施包括交易数据的分布式账本的分布式账本平台的方法,所述方法包括:使用所述分布式账本平台的至少一个处理器来创建所述分布式账本上的数据库,并且记录关于所述分布式账本上的所述数据库的信息;使用所述至少一个处理器将所接收到的关系数据库管理查询转换成能够由所述分布式账本上的所述数据库处理的查询操作;使用所述至少一个处理器对所述分布式账本上的所述数据库执行所述查询操作以生成查询结果;以及使用所述至少一个处理器将所述查询结果以能够由所述分布式账本上的所述数据库处理以便包括在所述分布式账本上的形式记录至所述分布式账本上的所述数据库。2.根据权利要求1所述的方法,还包括:使用所述至少一个处理器将所述关系数据库管理查询生成为来自以下中的一个的结构化查询语言(SQL)查询:(1)来自用户、经由用户接口;(2)来自用户应用、经由应用程序接口;以及(3)来自智能合约。3.根据权利要求2所述的方法,其中,所述智能合约执行所述分布式账本上的所述数据库的关系数据库管理查询的SQL查询的至少子集。4.根据权利要求2所述的方法,还包括:使用所述至少一个处理器将所述SQL查询解析成包括SQL数据操纵语言(SQL DML)写操作、SQL DML读操作和SQL数据定义语言(SQL DDL)操作中的一个的SQL操作;以及创建所述SQL操作和所述SQL操作中包括的任何关系数据的JavaScript对象记号(JSON)表示。5.根据权利要求4所述的方法,还包括:使用所述至少一个处理器确定因所述SQL操作的执行而导致的交易是否在平台相关程度上已朝着接受至所述分布式账本中进展。6.根据权利要求5所述的方法,还包括:使用所述至少一个处理器在DML写操作结束时添加操作广播状态(OPSTAT)指令以获取对应交易的更明确的状态。7.根据权利要求4所述的方法,其中,对所述分布式账本执行所述查询操作包括:使用所述至少一个处理器确认调用所述SQL查询的实体具有执行所述SQL操作的权限。8.根据权利要求4所述的方法,其中,对所述分布式账本执行所述SQL查询操作包括:使用所述至少一个处理器创建能够被处理并存储在所述分布式账本上的所述查询操作和所述查询操作的结果的JSON表示。9.根据权利要求8所述的方法,其中,所述SQL操作是SQL DML写操作,所述方法还包括:使用所述至少一个处理器从所述分布式账本检索执行所述SQL DML写操作所需的数据;使用所述至少一个处理器执行包括检索到的数据的所述SQL DML写操作;使用所述至少一个处理器准备所述查询结果中的任何新的或更新的记录的JSON表示;以及使用所述至少一个处理器将所述SQL DML写操作和任何更新的记录以能够由所述分布式账本上的所述数据库处理以便包括在所述分布式账本上的形式提交至所述分布式账本。10.根据权利要求9所述的方法,还包括:使用所述至少一个处理器监视所述分布式账本以获得所述SQL DML写操作朝着接受至所述分布式账本中的进展;以及使用所述至少一个处理器通知调用所述SQL查询的实体所述SQL DML写操作是否在平台相关程度上作出了这样的进展。11.根据权利要求8所述的方法,其中,所述SQL操作是SQL DML读操作,所述方法还包
括:使用所述至少一个处理器从所述分布式账本检索执行所述SQL DML读操作所需的数据;使用所述至少一个处理器执行包括检索到的数据的所述SQL DML读操作;使用所述至少一个处理器准备所述查询结果的JSON表示;以及使用所述至少一个处理器将所述查询结果的JSON表示以能够由所述分布式账本上的所述数据库处理以便包括在所述分布式账本上的形式记录至所述分布式账本。12.根据权利要求11所述的方法,还包括:使用所述至少一个处理器将所述查询结果的JSON表示返回至调用所述SQL查询的实体。13.根据权利要求1所述的方法,还包括:使用所述至少一个处理器通过执行配置交易和常规交易创建所述分布式账本内的所述数据库,所述配置交易创建通道并且限定哪些对等计算机将维护所述数据库的拷贝,所述常规交易写入关于所述数据库的元数据;以及使用所述至少一个处理器创建限定所述分布式账本中的交易数据和用于修改所述交易数据的交易指令的代码。14.根据权利要求13所述的方法,还包括:使用所述至少一个处理器创建限定作为所述分布式账本中的所述交易数据的按JavaScript对象记号(JSON)的所述数据库的属性的代码;以及使用所述至少一个处理器使所述数据库用所述数据库属性更新。15.根据权利要求1所述的方法,还包括:使用所述至少一个处理器创建考虑了能够由所述分布式账本上的所述数据库处理以便包括在所述分布式账本上的形式的经解析和翻译的结构化查询语言(SQL)查询。16.根据权利要求1所述的方法,其中,所述关系数据库管理查询从智能合约接收,所接收到的关系数据库管理查询被转换成能够由所述分布式账本上的所述数据库处理的分布式账本交易,并且所述分布式账本上的所述分布式账本交易被执行以生成交易结果,所述方法还包括:使用所述至少一个处理器将所述交易结果返回至所述智能合约。17.根据权利要求16所述的方法,还包括:将所述智能合约与所述分布式账本上的所述数据库集成,由此,所述智能合约执行所述分布式账本的数据定义语言(DDL)操作,其不包括DDL数据库操作和模式改变。18.根据权利要求17所述的方法,还包括:在所述分布式账本上以链码实施所述数据库的数据库相关操作,所述链码限定所述智能合约的至少一个资产和用于修改所述至少一个资产的至少一个交易指令。19.根据权利要求18所述的方法,其中,将所述智能合约与所述分布式账本上的所述数据库集成包括所述智能合约调用所述链码。20.根据权利要求18所述的方法,还包括:所述智能合约根据所述链码启动数据操纵语言(DML)读操作。21.根据权利要求16所述的方法,还包括:所述智能合约执行至少一个操作,所述至少一个操作包括:执行数据操纵语言(DML)查询;创建所述分布式账本上的所述数据库;更新对所述分布式账本上的所述数据库的访问权;或者执行数据定义语言(DDL)查询。22.一种系统,包括:分布式账本平台,所述分布式账本平台实施包括交易数据的分布式账本;所述分布式账本上的数据库;以及
至少一个处理器,所述至少一个处理器执行用以实施执行多个操作的关系数据管理和组织系统的指令,所述...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。