生态活动-新闻详情

JD Chain 新版本V1.1特性解读

JD Chain V1.1版本新鲜出炉,汲取了JD Chain众应用企业及开发者的共同智慧,结合了多个行业领域实际业务的开发需求,当然还有我们可敬可耐滴攻城狮的敏锐技术嗅觉和开发热情。

在JD Chain 的开源路线图中,V1.1的推出既是个承上启下的开源技术迭代节点,又具有着开创性意义。自V1.1开始,JD Chain将陆续推出更多具有重要应用价值、能够有效提升技术效能的差异化功能特性,逐步打磨升级为具有全面成熟度、标准化和高效能的企业级区块链底层系统。

新版本JD Chain V1.1主要有以下3项激动人心的新特性,以下为您详细介绍:

1、分布式权限控制机制
2、系统管理工具
3、穿透式数据检索


1、分布式权限控制机制

区块链系统是一种分布式系统,共识节点以对等的方式,组成了点对点的网络,节点之间以无差别的方式共同对数据信息进行背书和校验。然而,区块链应用是构建在区块链底层网络之上的,在企业场景中,业务上的不同参与方、不同角色的用户在系统中具有的权限与功能通常是不对等的,需要按业务属性进行严格区分。

JD Chain 分布式权限控制机制,则旨在解决在分布式共识网络中为不同角色的用户分配不同操作权限的问题。


JD Chain定义了细粒度的操作权限,以“角色-用户”模型进行授权管理,实现了对终端和网关的接入认证,对用户管理、合约调用权限、账本数据操作、共识网络管理操作等权限以可组合配置的方式进行了授权和控制。

系统的功能权限控制由三个维度组合实现——用户、角色、权限。一个角色可以拥有1个或多个权限,一个用户可以拥有1个或多个角色。权限控制主要包括两个方面,一是对数据账本的读、写操作的控制;另一个是对交易的权限控制,如部署合约、智能合约等。这些元素之间无耦合,可以任意组合满足开发者对于功能权限的使用要求。


功能权限已在V1.1版本中开启,可通过ledger.init配置文件和SDK来进行权限的配置,具体操作后续将推出的详解专稿。

2、系统管理工具

系统管理工具面向系统管理人员而设计,目的是通过提供一个可视化的操作台,简化对JD Chain 的账本、数据索引、用户权限等功能的操作配置。JD Chain V1.1中推出“系统管理工具”,工具提供了初始化账本、维护穿透式检索的数据索引两项功能。

(1)初始化账本

在管理工具中初始化一个数据账本,就如同面对面建群一样简单,由其中一方作为协调方指定一个“邀请码”和账本初始化参数,发起一次账本初始化会话。

之后,其它的节点指定同一个“邀请码”和自身的参数(公钥、通讯端口等),便可以加入这一次账本初始化会话。

账本初始化参数会自动地在所有的节点同步,经过每一个节点的操作者手动做出确认签署之后,便自动开始创建账本并共识每个节点的创世区块哈希。当所有节点都完全一致以后,账本初始化便成功了。



(2)数据索引

在管理工具中,可以以数据账户为单位,创建该数据账户上链的数据规则,在业务应用中使用到该数据账户请遵循此规则。根据业务的开展,业务数据不断按照设定好的规则上链存储。当需要进行检索查询时,可以在管理工具中根据上链规则对数据账户创建索引,创建成功后启动索引。



3、穿透式数据检索

目前典型的区块链底层系统都是以 KV 模型进行数据读写的,这在面向企业场景的区块链系统中尤为常见,底层的区块链系统只能提供基于 Key 的精确检索操作,以及一些提前设计的固定检索条件,而上层的区块链应用系统为了实现丰富的条件检索,通常做法是在链外部署关系数据库中来同步底层链上的数据。

“穿透式数据检索”的设计目标是在JD Chain数据账本中建立丰富的自定义条件检索能力,可以根据链上 KV 数据中Value的结构化内容,提供类SQL的条件检索。这样可以极大地简化上层应用系统的开发和维护的复杂度。


JD Chain V1.1提供了一个“穿透式数据检索”基础版本,支持对 JSON 格式的 Value按JSON字段进行条件检索。未来将支持更丰富的数据类型和检索条件。

在此,我们对JD Chain V1.1中新增和优化功能梳理汇总如下: