Page tree
Skip to end of metadata
Go to start of metadata

通用

项目

所有作业都在项目的上下文中运行。
每个项目都包含在一个存储资源中。
项目是名称的层次结构。
项目是按起始路径组织的(例如:scale://azure-resource/productline-a/product-b/dept-c/study-d)。

作业

作业是由Scale用户提交的。
作业是由运行组成的。

具体作业

输入是一个或多个具体仿真输入。
输出可能包括所有仿真输出文件和后处理。

开环作业

类似于具体作业,除了输入是一个或多个开环仿真输入,以及一个样本。
开环作业就像在一个循环中运行具体作业,其中的N是样本大小。

闭环作业

类似于开环作业,除了输入之外,还包括多次迭代,以及从上一次迭代产生更多样本的方法。
闭环作业就像在一个循环中运行开环作业,其中的N是迭代次数。

运行

在同一台执行主机上运行的工作节点功能的执行序列。

典型的序列:

  1. 下载文件到执行主机
  2. 填充器将设计空间转换成具体输入(具体作业会跳过这一步)
  3. 进行仿真
  4. 后处理

仿真输入

通常是指提供给特定仿真软件的文件目录

具体仿真输入

可以用来仿真的一组文件,不会发生任何改变

开环仿真输入

可以用来仿真的一组文件,不会发生任何改变

注意:同一个目录既可以是具体仿真输入,又可以是开环仿真输入

数据管理

数据管理可以分为两部分:

输入数据管理

除了提供对文件的访问之外,Scale并不参与管理仿真输入。

结果数据管理

Scale支持文件和数据帧的填充。
只提供有限的工具来访问这些数据。
使用标准技术(例如:Azure Blob和PostgreSQL)。
诸如Tableau和PowerBI等分析工具能够很好地挖掘PostgreSQL数据。

存储资源

所有数据都被保存到一个资源中。每个资源都有两个数据存储的备份。

  1. 数据帧存储 — 用来存储基于表格数据的地方(例如:仿真输入和关键性能指标(KPI))
  2. 文件存储 — 用来存储文件的地方(例如:文件系统)

每个Scale集群都会提供默认的存储资源,用于保存Scale集群中的所有数据。
当集群被删除时,这里的所有数据都会被删除。

可以创建和注册额外的存储资源。
使用PostgreSQL和Azure Blob存储的资源是可用的。
这种存储是Scale集群的外部存储,在Scale集群被删除之后仍然会保留。

数据帧

指的是表格式的数据(https://spark.apache.org/docs/latest/sql-programming-guide.html

Scale URI

在资源中存储的所有数据都可以通过一个Scale URI进行引用。例如:

scale://{resource}/{project_path}/{job_id}/{input_name}/{index}/

项目URI

特定的项目(resource + project_path)

例如:scale://{resource}/{project_path}/{job_id}/{input_name}/{index}/

作业URI

特定的作业(resource + project_path + job_id

例如:scale://{resource}/{project_path}/{job_id}

作业ID

唯一标识给定项目URI的作业。
作业ID是在提交作业时构建的。
它们是通过组合集群名称和一个递增的整数来产生的,这个整数是由项目URI来决定的。

例如:scale://{resource}/{project_path}/{job_id}

泛化/设计空间

向Scale提供公共接口的一组技术,用于驱动参数化的作业。

空间

一个用来定义参数、约束和填充器的文件。

空间文件可以:

  • 支持XML、JSON和YAML格式
  • 支持Include命令,将大的空间文件分成多个文件

参数

仿真输入的单一变化维度。

参数与以下信息有关联:

  • 名称(name):用于唯一标识参数
  • 标签(label):通常比名称更容易让人读懂
  • 取值类型(value type):例如,字符串、整数或实数
  • 随机类型(random type):例如,连续的或离散的
  • 分布(distribution):例如,均匀分布、正太分布、二项分布等

约束

提供定义一个或多个参数之间的界限的能力。

约束条件可以使用有效值列表(例如:离散参数)或表达式(连续参数)来定义。

填充器

能够应用特定参数值,并且创建具体仿真输入的逻辑

样本

样本是一个二维数组,其中的列与参数相关,每一行是一个仿真/运行。

采样器

能够创建给定空间的样本的逻辑(例如:蒙特卡洛、全因子/网格搜索)。
有些采样器可以接受现有的样本作为输入(又称为重采样器)。
当试图优化一个特定的标准时,可以在闭环作业中使用重采样。

后端

术语通常对用户是隐藏的。
管理员和专家用户需要理解这些术语。

工作节点功能

Scale内的原子工作单位。
支持Python工作节点功能。
仿真和后处理是在Python中完成的。
根据需要,Python可以执行外部可执行文件。
将一个普通的Python函数转换为一个工作节点功能,需要使用一个带有注解的特定参数签名。

工作节点镜像

工作节点功能被打包成Docker镜像。
在运行Docker镜像时,会创建一个REST服务,可用于访问正在运行的工作节点功能。
镜像具有版本信息。

工作节点容器

在启动镜像时,会创建一个容器。

工作节点分组

可以部署(发送给N台主机)和启动的工作节点镜像集合。
可以向特定类型(例如:CPU或GPU)的节点发送一个工作节点分组,这取决于各个工作节点功能的需求。

节点

节点是在Scale集群中运行的虚拟机。
工作节点在节点主机中运行。
大型节点能够运行多个工作节点分组。

Write a comment...