Skip to content

add arch #51

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Dec 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions zh_CN/docs/design/architecture.md
Original file line number Diff line number Diff line change
@@ -1 +1,94 @@
# 1. 系统架构

标签: ``WeDPR`` ``系统架构``

----

WeDPR的系统架构如下:

![](../../images/design/wedpr_arch.png)

整个系统包括如下功能:
- 租户管理:用户组维度的用户管理
- 数据集管理: 支持多种异构数据源接入
- 项目管理: 项目维度运行任务
- 任务管理: 管理各类隐私计算任务
- 模型管理
- 工作流(任务编排)
- 模型开发(可选): 专家模式,支持数据和模型开发人员自定义隐私任务使用流程
- 服务发布: 可将server端数据集转换为在线服务;提供在线匿踪查询功能;基于token鉴权


## 1.1 接入层

核心功能:抽象API接口,提供快速对接其他机构已有的IT体系的能力

### 1.1.1 存储接入

- 文件存储:HDFS
- 关系型数据库存储:MySQL, Oracle, Hive,其他关系型数据库

### 1.1.2 计算引擎接入

- jupyter接入
- spark(规划中): 通过jupyter lab安装pyspark,可使用单节点spark,也可接入spark集群
- tensorflow/pytorch(规划中): 多方联合建模实现考虑能否接入到各AI计算引擎


### 1.1.3 网络层接入

- 网络层互联互通:跨机构计算节点网络层互联互通

## 1.2 管理层

### 1.2.1 用户权限体系

基于用户组管理数据和服务资源的的可见、可用、可读权限。

- 可见: 可看到数据或服务资源的元信息; 经过数据或服务属主授权后,指定的机构或个人可看到他人的数据、服务元信息
- 可读: 可以读取数据或服务的具体内容; 可更新数据或服务,仅数据或服务属主可操作
- 可用: 可以使用数据或服务发起隐私计算任务

### 1.2.2 数据资源管理

当前支持的数据资源类型包括:
- 上传数据集: 托管到隐私计算平台HDFS
- 关系类型数据库: MySQL、国产数据库
- 自定义的接入HIVE数据源
- 自定义的接入HDFS数据源

### 1.2.3 跨机构资源同步

基于区块链实现跨机构的资源同步,包括: 数据集、审批信息(每行增加status字段,记录状态ID,用于支持资源增量同步)。

资源信息定义如下:
- 资源ID(resourceID)
- 资源类型: 如数据集,服务、审批信息等
- 资源所属机构
- 资源状态(status)
- 资源描述信息: 上层模块自定义,一般推荐使用json序列化之后的字符串

### 1.2.4 审批

WeDPR中需要审批的流程包括:
- 数据集使用权限申请
- 服务使用权限申请

系统支持自定义审批模板以灵活地引入更多审批流程。审批信息通过区块链实现跨机构的流转。

### 1.2.5 专家模式

基于Jupyter + 隐私计算toolkit `wedpr-ml-toolkit`构建的一个更加灵活的开发环境;数据和模型开发者可自定义隐私计算任务流程,在不更新WeDPR隐私计算平台的前提下,实现定制化的业务需求,提升了系统的可扩展性。

## 1.3 网关

### 1.3.1 API网关

API网关的功能包括:
- 负责站点端用户登录,并基于签名和jwt token验证的方式,对访问系统的API请求进行鉴权
- 限流
- API请求路由

### 1.3.2 跨机构统一网关

负责跨机构通信,核心功能包括服务消息路由、机构内部的服务发现,并实现多语言SDK,支持不同类型语言开发的服务接入。
5 changes: 4 additions & 1 deletion zh_CN/docs/op/config/gateway.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.2 网关配置
标签:``网关`` ``配置``

标签:``网关`` ``配置``

----
8 changes: 4 additions & 4 deletions zh_CN/docs/op/config/index.rst
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
##############################################################
2. 配置说明
4. 配置说明
##############################################################

标签``配置`` ``管理台`` ``网关`` ``PSI`` ``PIR`` ``MPC`` ``建模服务``
标签:``配置`` ``管理台`` ``网关`` ``PSI`` ``PIR`` ``MPC`` ``建模服务``

----

.. toctree::
:hidden:
:maxdepth: 0
:maxdepth: 1

wedpr.md
gateway.md
Expand Down
7 changes: 5 additions & 2 deletions zh_CN/docs/op/config/model.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.5 联合建模服务配置
标签:`建模`` ``配置`` ``SecureBoost`` ``SecureLR``
# 4.5 联合建模服务配置

标签: ``建模`` ``配置`` ``SecureBoost`` ``SecureLR``

----
7 changes: 5 additions & 2 deletions zh_CN/docs/op/config/mpc.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.6 MPC服务配置
标签:`MPC`` ``配置``
# 4.6 MPC服务配置

标签: ``MPC`` ``配置``

----
7 changes: 5 additions & 2 deletions zh_CN/docs/op/config/pir.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.4 匿踪查询服务配置
标签:`PIR`` ``配置``
# 4.4 匿踪查询服务配置

标签: ``PIR`` ``配置``

----
7 changes: 5 additions & 2 deletions zh_CN/docs/op/config/psi.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.3 隐私求交集服务配置
标签:`PSI`` ``配置``
# 4.3 隐私求交集服务配置

标签: ``PSI`` ``配置``

--------
7 changes: 5 additions & 2 deletions zh_CN/docs/op/config/wedpr.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# 2.1 管理台配置
标签:``管理台`` ``配置``
# 4.1 管理台配置

标签:``管理台`` ``配置``

----
1 change: 0 additions & 1 deletion zh_CN/docs/op/wedpr.md

This file was deleted.

5 changes: 0 additions & 5 deletions zh_CN/docs/op/wedpr_component.md

This file was deleted.

3 changes: 1 addition & 2 deletions zh_CN/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,7 @@ WeDPR(星隐)是基于区块链、安全多方计算、联合建模等技术构
docs/op/pre_installation.md
docs/op/wedpr_builder.md
docs/op/compile.md
docs/op/wedpr.md
docs/op/wedpr_component.md
docs/op/config/index.rst

========

Expand Down