毕业论文
您现在的位置: 框架 >> 框架前景 >> 正文 >> 正文

联邦学习开源框架FATE架构

来源:框架 时间:2024/12/28
作者:京东科技葛星宇1.前言

本文除特殊说明外,所指的都是fate1.9版本。

fate资料存在着多处版本功能与发布的文档不匹配的情况,各个模块都有独立的文档,功能又有关联,坑比较多,首先要理清楚各概念、模块之间的关系。

2.网络互联架构点击添加图片描述(最多60个字)编辑

1.概念解释:

RollSite是一个grpc通信组件,是eggroll引擎中的一个模块,相当于我们的grpc通信网关。

Exchange是RollSite中的一个功能,用于维护各方网关地址,并转发消息。参考《FATEexchange部署指南》?

2.对比解读:

l网状架构相当于我们的一体化版本模式,但没有dop平台来维护网关,每方需要在配置文件里维护其他参与方的网关地址。

l星型架构的好处是只在Exchange方维护所有参与方的网关地址,前提是需要信任Exchange,并且流量全部都需要从Exchange方中转,相当于我们的中心化版本。但不支持证书。

3.Exchange配置

在Exchange上配置路由表:

点击添加图片描述(最多60个字)编辑

在各party方配置默认路由指向exchange,不需要再配置每个party的地址。

点击添加图片描述(最多60个字)编辑3.总体架构

FATE支持eggroll和spark两种计算引擎,搭配不同的通信组件,共五种组合,不同的通信模块不能兼容。

方案名

计算引擎

存储

通信

是否支持exchange

task调度

特点

EggRoll

nodemanager

nodemanager

rollsite

clustermanager

原生、最成熟

Spark_RabbitMQ

spark

hdfs

nginx+rabbit

yarn?

简单易上手的MQ

Spark_Pulsar

spark

hdfs

nginx+pulsar

yarn?

比RabbitMQ,可以支持更大规模的集群化部署

SlimFATE

spark_local

localFS

nginx+pulsar

spark?

最小资源。可用rabbit替代pulsar

参考:《不同类型FATE的架构介绍》?

区别:

lRabbitMQ是一个简单易上手的MQ

lPulsar相比RabbitMQ,可以支持更大规模的集群化部署,也支持exchange模式的网络结构。

lSlimFATE相比其他模式,最大化减少集群所需的组件,可以使用在小规模联邦学习计算,IOT设备等情况。

3.1.基于EggRoll引擎的架构

点击添加图片描述(最多60个字)编辑

Eggroll是FATE原生支持的计算存储引擎,包括以下三个组件:

lrollsite负责数据传输,以前的版本里叫Proxy+Federation

lnodemanager负责存储和计算

lclustermanager负责管理nodemanager

3.2.基于spark+hdfs+rabbitMQ的架构

点击添加图片描述(最多60个字)编辑

3.3.基于spark+hdfs+Pulsar的架构

点击添加图片描述(最多60个字)编辑

3.4.spark_local(SlimFATE)

点击添加图片描述(最多60个字)编辑

支持rabbitMQ替换pulsar

4.组件源码

所有的fate项目都在这个叫FederateAI社区的URL下:

转载请注明:http://www.0431gb208.com/sjsbszl/8418.html