update README.md, sum the tech trait of scalebox.
This commit is contained in:
parent
116524d1f7
commit
73e5052e71
26
README.md
26
README.md
|
@ -1,6 +1,15 @@
|
|||
# Scalebox - 一种云原生的流式计算框架
|
||||
# Scalebox - 一种云原生的流式计算引擎
|
||||
|
||||
Scalebox是一种流式计算引擎,以容器化统一传输及算法模块,通过分布式消息触发,实现跨集群模块间的流水线并行。软件平台支持任务级容错;以位置感知的消息分发,支持大文件的纯本地加载,提升横向扩展能力。特别适用于数据分布、算力资源分布的应用场景。
|
||||
Scalebox是一种云原生的流式计算引擎,可在分布式、异构计算集群上运行容器化的单机用户算法,通过流水线组织模块层级上的大规模并行处理,支持任务级容错。与已有大数据处理、并行计算等框架相比,其技术特点特别适用于数据分布、算力资源分布、算法复杂等应用场景。
|
||||
|
||||
scalebox具有以下特性:
|
||||
- 云原生设计:所有算法模块、传输模块等都采用容器化封装,数据处理流水线面向云环境设计;软件基础平台也完全基于云原生设计实现;平台支持用户单机算法的大规模并行化,前后模块间通过消息总线关联,实现非侵入式并行编程,大大简化计算过程的并行化难度。
|
||||
- [跨集群计算](./tests/cross-cluster-primes/):算法模块、传输模块的的归一化处理,通过流水线统一处理集群内/跨集群的数据,屏蔽跨集群的数据和计算的差别;跨集群消息驱动,实现流式处理,支持单流水线应用在多个异构算力集群上的部署。
|
||||
- [任务级容错](./tests/retry_test/):对于硬件故障、软件bug、网络问题、数据异常等原因导致的偶发性出错,支持基于规则的自动容错处理;细粒度的任务级容错,可为在不可靠硬件上运行可靠的数据分析创造条件。
|
||||
- 位置感知调度:消息体内可包含发送端IP地址,使得前后模块间可实现本地级联处理;将处理层、存储层分离,降低耦合,水平方向(处理层)的消息驱动垂直方向(处理层到存储层)的数据读写,降低计算集群内东西向网络流量,消除集群存储I/O瓶颈;进而实现无共享存储的本地计算,大文件可实现纯本地加载,,有效支持横向扩展。
|
||||
- [任务透视](./tests/task-exec-files/):计算任务为消息驱动型,计算任务执行过程即为消息处理过程;任务透视详细纪录每个任务的用户程序返回码、标准输出、标准错误、程序定义返回文本、用户程序读写字节数等,此外还包括任务执行全生命周期(消息产生、消息分发、消息处理、结果纪录)的多个时间戳,含计算容器端、控制端共有近20个,还支持任意数量的用户定制时间戳。任务透视支持问题排查中的精准定位,并为流水线应用的优化提供基础数据支持。
|
||||
- 多并行化方式:主要包括:模块内算法并行,模块级数据并行,模块间流水线并行
|
||||
- 多计算后端:多种计算集群类型(自管理集群、HPC集群、k8s容器集群等);多种容器引擎(docker、[singularity](./tests/hello-scalebox-singularity/)、k8s)
|
||||
|
||||
本仓库包含以下内容:
|
||||
|
||||
|
@ -11,7 +20,7 @@ Scalebox是一种流式计算引擎,以容器化统一传输及算法模块,
|
|||
|
||||
## 内容列表
|
||||
|
||||
- [Scalebox - 一种云原生的流式计算框架](#scalebox---一种云原生的流式计算框架)
|
||||
- [Scalebox - 一种云原生的流式计算引擎](#scalebox---一种云原生的流式计算引擎)
|
||||
- [内容列表](#内容列表)
|
||||
- [研究背景](#研究背景)
|
||||
- [环境安装](#环境安装)
|
||||
|
@ -27,7 +36,11 @@ Scalebox是一种流式计算引擎,以容器化统一传输及算法模块,
|
|||
|
||||
## 研究背景
|
||||
|
||||
大规模数据处理的计算框架主要分为两类:
|
||||
与已有的大数据处理框架(Spark/Hadoop/Flink)、并行计算框架MPI等相比较,Scalebox从编程模型角度看,降低并行化难度。
|
||||
|
||||
|
||||
|
||||
已有大规模数据处理的计算框架主要分为两类:
|
||||
- 大数据处理框架
|
||||
- 离线数据处理:Hadoop/Spark
|
||||
- 流式数据处理:Storm/Spark Streaming/FLink
|
||||
|
@ -35,11 +48,6 @@ Scalebox是一种流式计算引擎,以容器化统一传输及算法模块,
|
|||
|
||||
scalebox提供了一种构建分布式数据处理的高效方法。用户仅需要研发单机版的算法模块,通过容器化打包后推到镜像库。基于系统标准模块、用户定义算法模块,定义流水线应用。
|
||||
|
||||
scalebox具有以下特性:
|
||||
- 算网融合:算法模块、传输模块的容器化封装,归一化处理,屏蔽跨集群数据/计算的差别
|
||||
- 并行化支持:模块内算法并行;模块级数据并行;模块间流水线并行
|
||||
- 跨集群计算:跨集群消息驱动,实现单应用跨多个算力集群
|
||||
- 位置感知消息:支持大文件的纯本地加载,消除集群存储I/O瓶颈,实现无共享存储的计算,有效支持横向扩展
|
||||
|
||||
|
||||
## 环境安装
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
## 基础设施(硬件+基础软件)
|
||||
- 网络存储的异常
|
||||
- 可变延时(数秒~几分钟)
|
||||
- 暂时性不可写入
|
||||
- 网络的不稳定
|
||||
- 集群存储的bug
|
||||
- 部分计算节点硬件故障
|
||||
- 高负载导致核心数据库响应延时长
|
||||
|
||||
## 数据问题
|
||||
- 前导处理软件错误
|
||||
- 网络异常致数据不完整
|
||||
- 存储故障致数据不完整
|
||||
- 存储软件bug致数据异常
|
||||
|
||||
## 容错处理
|
||||
- 不稳定的硬件和基础软件
|
||||
- 处理软件的bug
|
||||
- 异常的数据
|
||||
- 系统异常的判断与定位
|
||||
- 读取/执行/回写的时间
|
||||
- 任务返回码
|
||||
- 系统监控的异常信息
|
||||
- 异常任务的容错处理
|
||||
- 自动/人工
|
||||
|
||||
## Reproducible Analysis
|
||||
- 运行可靠的科学应用
|
||||
- 产生可信的科学产出
|
Loading…
Reference in New Issue