SQL 算子


智能任务流提供以下几种与数据库连接相关的算子:

  • Hive 算子
  • Mysql 算子
  • Mysql Writer 算子
  • Internal Influxdb Writer 算子
  • Internal Influxdb Reader 算子
  • TSDB 算子

Hive 算子

Hive 算子用于处理 HIVE SQL,支持 Hive SQL 语法,可用于创建新表、执行 SQL 查询等 Hive 计算任务。


在当前 EnOS 的运行环境中,由于不同环境间的网络隔离,所以不能跨环境执行 Hive SQL。

输入参数说明

名称 必需/可选 类型 描述
data_source_name 必需 String 数据源名称,来自数据源连接配置。
sqls 必需 List 指定需要运行的 SQL 语句,list类型。每行输入一个list元素,参考以下list元素示例:
queue 可选 String 指定运行 HIVE SQL 时需要的大数据队列名称,通过 资源管理 申请的 批数据处理-大数据队列 名称。

list元素示例

如需要输入 ["a","b","c"],则输入如下:

"a"
"b"
"c"


如需输入 [1,2,3],则输入如下:

1
2
3

输出参数说明

名称 类型 描述
resultset File 运行 HIVE SQL 后输出的结果集。

Mysql 算子

Mysql 算子用于处理 MySQL 的 SQL,支持 MySQL 语法,可用于创建新表、执行 SQL 的查询等任务。

输入参数说明

名称 必需/可选 类型 描述
data_source_name 必需 String 数据源名称,来自数据源连接配置。
sqls 必需 List 指定需要运行的 MySQL 语句。

输出参数说明

名称 类型 描述
resultset File 运行 MySQL 后输出的结果集。

Mysql Writer算子

Mysql Writer 算子用于往指定 MySQL 库中写入数据。

输入参数说明

名称 必需/可选 类型 描述
data_source_name 必需 String 数据源名称,来自数据源连接配置。
statement 必需 String 输入 MySQL 语句。
data 必需 File 写入数据。
skip_header 可选 Boolean 指定是否跳过表头。true 表示跳过,false 表示不跳过。

输出参数说明

Mysql Writer 算子没有固定的输出参数。

Internal Influxdb Writer 算子

Internal Influxdb Writer 算子用于向内部的 Influxdb 存储中写入数据。

输入参数说明

名称 必需/可选 类型 描述
data 必需 File 需要写入的数据。
table_name 必需 String 表格名称。

输出参数说明

名称 类型 描述
result String 写入数据的结果。

Internal Influxdb Reader 算子

Internal Influxdb Reader 算子用于从内部的 Influxdb 存储中读取数据。

输入参数说明

名称 必需/可选 类型 描述
sqls 必需 List 输入 MySQL 语句。
database 必需 String 输入数据库名称。默认值为 app_portal。

输出参数说明

名称 类型 描述
result Directory 读取路径。

TSDB 算子

TSDB 算子用于从时序数据库中获取指定时间区间的数据。

输入参数说明

名称 必需/可选 类型 描述
raw_url 必需 String 指定 TSDB 数据库地址。
access_key 必需 String 访问 TSDB 数据库的 AccessKey。
secret_key 必需 password 访问 TSDB 数据库的 SecretKey。填写或修改后保存,再次进入任务流设计页面查看此算子时此处会显示为空。
org_id 必需 String 资产所属的组织 ID。
asset_ids 必需 List 资产列表。如何获取Asset ID信息>>
point_ids 必需 List 资产测点。如何获取pointId信息>>
start_time 必需 timestamp 采样数据开始时间。支持 local 时间和 UT C时间。local 时间的格式为``YYYY-MM-DD HH:MM:SS``。当格式为local时间时,使用设备所在地的当地时间进行查询。UTC 时间格式需要加入时区信息,例如:2019-06-01T00:00:00+08:00。当格式为 UTC 时间时,对所有资产按照统一的开始时间和结束时间进行查询。
end_time 必需 timestamp 采样数据结束时间,格式必须与开始时间保持一致。
model_id 可选 String 资产所属模型 ID。如何获取modelId信息>>
page_size 可选 number 单次查询返回记录条数的上限。
with_quality 可选 Boolean 指定返回结果中是否包含数据质量位。true 表示包含,false 表示不需包含。
local_time_accuracy 可选 Boolean 指定查询结果是否包含毫秒级结果。true 表示需要毫秒格式,false 表示不需要毫秒格式。
order_by 可选 String 指定返回结果按照某字段排序。
local_time_format 可选 number 指定返回数据的local时间是否包含设备时区信息。0:不包含设备时区信息;1:包含设备时区信息。
item_format 可选 number 指定返回结果中测点数据的显示格式。可选值为0,1,2。对每种显示格式的详细介绍,参见 Item Format 示例。
boundary_type 可选 String 若测点已配置数据压缩存储,指定查询的测点数据类型。可选值为:inside (查询原始压缩数据)、outside (查询原始压缩数据+返回起止时间边界前后的数据)、interpolated (查询原始压缩数据+返回起止时间边界插值数据,即插补起止时间点的数据)、sample (返回起止时间内,按指定时间间隔和算法插补的数据)。插补的数据可按业务需要用于补全 TSDB 中的数据。
interval 可选 number boundaryType=sample 时指定插补数据的时间间隔。单位为秒。
interpolation 可选 String boundaryType=sample 时指定插补数据的算法。可选值为:linear (线性填充值)、previous (之前的一个值)、near (临近的一个值)、after (之后的一个值)。
type 可选 String 指定查询测点数据的存储类型。可选值为:ai (仅查询AI原始数据)、ai_normalized (仅查询AI分钟级归一化数据)、di (仅查询DI数据)、pi (仅查询PI数据)、generic (仅查询通用数据)。若不指定查询的数据存储类型,则默认从 AI 原始数据、DI 数据、PI 数据和通用数据类型中查询测点数据。

输出参数说明

名称 类型 描述
result File 数据库读取结果。