update README.md, sum the tech trait of scalebox.

This commit is contained in:
kaichao 2023-05-05 08:52:16 +08:00
parent 116524d1f7
commit 73e5052e71
2 changed files with 46 additions and 9 deletions

View File

@ -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瓶颈实现无共享存储的计算有效支持横向扩展
## 环境安装

View File

@ -0,0 +1,29 @@
## 基础设施(硬件+基础软件)
- 网络存储的异常
- 可变延时(数秒~几分钟)
- 暂时性不可写入
- 网络的不稳定
- 集群存储的bug
- 部分计算节点硬件故障
- 高负载导致核心数据库响应延时长
## 数据问题
- 前导处理软件错误
- 网络异常致数据不完整
- 存储故障致数据不完整
- 存储软件bug致数据异常
## 容错处理
- 不稳定的硬件和基础软件
- 处理软件的bug
- 异常的数据
- 系统异常的判断与定位
- 读取/执行/回写的时间
- 任务返回码
- 系统监控的异常信息
- 异常任务的容错处理
- 自动/人工
## Reproducible Analysis
- 运行可靠的科学应用
- 产生可信的科学产出