本文除特殊说明外,所指的都是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