
# 数据计算
**算子简介**
- 名称：数据计算
- 功能说明：按照表达式进行数值计算，计算的结果赋值给某个属性。举例：原消息中有温度属性，其数值是以摄氏度数值表示，可以通过本算子设置计算公式，将摄氏温度计算转换成华氏度读数再赋予给原来的温度属性，或者可以选择将计算转换后的数值赋予一个新属性。
- 约束：下游不允许对接数据源及产品过滤算子。
**算子配置**
**基础配置项**
**算子名称：**
- 配置项英文名：name

- 说明：算子名称，对算子进行个性化的命名，以辅助增加可读性。支持中文、英文、数字、中划线、下划线，长度小于等于64个字符。
- 类型：STRING
- 必选：否
- 约束：需要符合正则表达式： \^\[\\u4E00-\\u9FA5A-Za-z0-9_-\]{1,64}$
**变量：**
- 配置项英文名：variables
- 说明：变量，把输入消息中的属性作为变量在表达式中使用。对变量进行定义，设置变量名称和变量的取值。
- 必选：否
- 子配置项：变量配置包括如下子配置项：变量名称、变量取值。
**变量名称：**
- 配置项英文名：variable
- 说明：变量名称，用户可自定义一个变量名称，计算时使用，以免配置计算表达式时使用jsonPath。
- 类型：STRING
- 必选：是
- 约束：需要符合正则表达式： \^\[a-zA-Z\]\\w{0,20}$
**变量取值：**
- 配置项英文名：value
- 说明：变量取值，以JSON Path格式来指定变量从消息中指定的JSON Path属性获取的取值。
- 类型：STRING
- 必选：是
- 约束：需要符合正则表达式： \^.{0,1000}$
**计算配置：**
- 配置项英文名：calculates
- 说明：计算配置，配置属性的计算表达式。
- 必选：是
- 子配置项：计算配置包括如下子配置项：属性、表达式。
**属性：**
- 配置项英文名：property
- 说明：属性名，表示计算表达式所计算的结果赋予的对象。 用户可以选择消息中已有的某个属性，或者自行输入新的内容，该内容需要满足Json path语法的要求 。
- 类型：STRING
- 必选：是
- 约束：需要符合正则表达式： \^.{1,1000}$
**表达式：**
- 配置项英文名：expression
- 说明：计算表达式，支持的表达式详细说明请参考：[表达式说明](https://support.huaweicloud.com/usermanual-iotanalytics/iota_01_09712.html)。
- 类型：STRING
- 必选：是
- 约束：需要符合正则表达式： \^.{0,1000}$
**高级配置项**
**并行数**：
- 配置项英文名：parallelism

- 说明：并行数，指定算子执行时的并行任务个数。对于性能要求越高的算子，可以设置较高的并行数，但是占用资源越多。如果此参数不设置，那么作业运行时本算子使用作业的并行数设置。
- 类型：INTEGER
- 必选：否
- 约束： 最小值1， 最大值 1024。
 
