部署架构
PaddleDTX 主要由计算需求方、任务执行节点、数据持有节点、存储节点和区块链节点组成,部署架构如下图所示:
说明
部署架构图展示了3类客户端,xdb-cli:用于操作数据持有节点、存储节点,executor-cli:操作任务执行节点,requester-cli:用于计算需求方进行任务发布、预测结果下载。
实际业务应用中,用户可按需部署节点,如拥有数据资源用户可部署DataOwner Node,拥有存储资源用户部署Storage Node,拥有算力资源用户可部署Executor Node,有计算需求的节点使用requester-cli发布任务等,最终实现不同组织之间的共同组网。
1.1 计算需求方
计算需求方(Requester)是机器学习模型或预测结果的需求方,需求方可能没有存储能力、没有数据资源和计算资源。需求方利用PaddleDTX网络中的资源,完成自己所需的计算并获得最终结果。
1.2 任务执行节点
任务执行节点(Executor Node)进行模型训练和预测任务的具体计算。在计算过程中,执行节点会自动向数据持有节点发起文件授权使用申请,只有数据持有节点确认授权,执行节点才拥有数据的使用权限,并利用授权的数据和计算资源参与多方计算。一个任务执行节点可向一个或多个数据持有节点发起数据使用申请。
1.3 数据持有节点
数据持有节点(DataOwner Node)是数据的归属方,可以为使用方做数据的可信性背书。数据持有节点通常将数据存储于远程节点,通过数据加密切分和分发、数据迁移、网络健康状态监控等机制,保障己方数据的私密性、安全性和高可用。
1.4 存储节点
存储节点(Storage Node)拥有丰富的存储资源,为数据持有方提供数据存储服务。存储节点通过健康状态更新、副本保持证明的挑战与应答等机制,证明自身的可靠性。
1.5 区块链节点
区块链节点(Blockchain Node)记录PaddleDTX网络中流转的关键信息,包括数据摘要、网络节点的去中心化治理、计算任务等信息,保证数据的安全可信。
从海量隐私数据存储到多方数据联合建模,PaddleDTX提供了全链路可信方案。在实际应用中,各方机构根据自身的需求和能力,部署某类服务节点,共建去中心化可信网络。