任务配置

数据接入配置好后,接下来可以开始建立数据分析任务。在创建数据分析任务前,我们先来了解下数据分析服务的任务模型。目前数据分析服务有四类任务节点:输入节点、处理节点、结果集节点、输出节点,其中输入节点包含三个,分别为API数据节点、设备流节点、外部数据库节点。下图展示了一个完整的数据分析服务的任务模型:

pic

一个完整的任务必须包含输入节点、处理节点(SQL节点)、结果集节点这三类节点,其中输入节点和结果集节点可以有一个或多个,SQL节点有且只能有一个;OneNET-View节点为可选节点,若用户想要将分析结果输出到可视化的view组件,则可在结果集节点后面增加一个OneNET-View节点。

创建数据分析任务可分为以下几步:

step1:新建任务

填写任务名称和任务描述信息

pic

step2:编排任务节点

通过点击“编辑任务”,进入任务编排页面,并根据任务需求,通过拖拽方式新建任务节点。 通过点击两个节点,可以将两个节点的承接关系用箭头表示出来。根据前面的例子,我们编排一个含有两个输入节点、一个SQL节点、一个结果集节点、一个OneNET-View节点的任务,如下图:

pic

step3:配置输入节点

点击画布中的输入节点,在页面右侧将显示该节点的详情,包括节点信息、节点参数配置、节点描述信息,用户需要对节点参数进行配置。参数如下图:

pic

  • 数据接入名称:点击后,选择前面创建好的API数据接入名称;
  • 元数据名称:数据接入名称选中后,第二个参数元数据名称便随之确定,该元数据名称将会被用于SQL节点的SQL语句中的table表名;
  • 字段选择:点击后,选择所选的元数据的哪些字段作为任务的输入字段;

    输入节点的一些高级功能-关于“时间标尺”的配置: 有时,需要使用时间相关的函数,如window函数,进行窗口统计,如:统计近30分钟内的访问数量 此时,可以使用“时间标尺”的两项配置来告诉系统按照哪个时间进行统计。 如:数据源的数据为日志数据,在元数据字段中含有 log_ts 的时间字段,代表日志数据产生的时间(毫秒值),则可以配置“时间标尺”来源于 log_ts 字段,并给时间标尺取一个名称,便于在后面的sql中使用时间标尺。 在sql示例文档中,会有相应的示例。

step4:配置结果集节点

点击画布中的结果集节点,在页面右侧,配置结果集节点的参数。结果集参数如下:

pic

  • 元数据名称:点击后,选择前面创建好的结果集类型的元数据名称,该元数据名称将会被用于SQL节点的SQL语句中的table表名。
  • 字段选择:点击后,选择所选的元数据的哪些字段作为任务的输出结果集字段;
  • 输出模式:包含两种输出模式,分别为插入及更新、插入更新及删除;下面将对这两种模式进行说明:

    • 插入及更新:根据key-value数据库的特性,相同key的数据,新值会覆盖旧值。Key-value数据库中的key,是由在结果集节点所选择的元数据中配置的主键字段来构成,可以有多个主键字段,这时key将由多个主键字段拼接而成。

    • 插入更新及删除:某些情况下,可能有删除操作,如:当统计值超过100时,该数据无统计意义,要删除该key所对应的值,此时可使用这种模式。不涉及删除操作时,两种模式无区别。具体的sql示例可以在sql示例文档中找到。

step5:配置sql节点

点击画布中的SQL节点,在页面右侧配置SQL节点的参数,SQL节点参数如下:

pic

  • SQL:点击后,编写任务分析的SQL语句。 由于我们已经配置好输入节点与结果集节点,我们在sql节点要做的事情,是处理输入节点流入的数据,转化为结果集节点所需要的数据格式,然后将转化后的数据对接到结果集节点即可。

常用的sql操作有:创建中间表,表结果写入结果集节点 下图展示了在多表关联任务中,对orders表和product表进行关联,并将分析结果输出到结果集。 从图中我们可以看出, SQL分为处理SQL 和 输出SQL两个部分:

pic

  • 创建中间表sql语法示例:

    CREATE VIEW yourTableName AS SELECT field1, field2,otherF1 as f1 FROM otherTable;

    或者

    CREATE VIEW yourTableName AS SELECT * FROM otherTable;

    其中 yourTableName 代表创建的中间表的名字。otherTable 代表被处理的表,可以是输入节点的元数据名称,也可以是创建的其他中间表。 在输入节点配置的元数据的名称,即是输入节点代表的表名。输入节点所关联的数据接入的数据源,会先流入该表,所有的sql操作都是从该表开始。 在 SELECT 语句中,类似于 mysql ,可以使用 as 关键字进行重命名。

  • 分析结果写入结果集节点的sql语法示例:

    INSERT INTO sinkTable SELECT field1, field2 FROM otherTabe;

    使用 INSERT INTO 将分析结果写入 结果集表中,以便让sink完成计算结果的存储。 其中 sinkTable 为结果集节点的表名称,即在配置结果集节点时,配置的元数据的名称。

    目前仅开放key-value数据库作为计算结果的存储,根据key-value数据库的特点,适合统计/聚合类的任务的结果存储,因此需要在sql中书写 group by 语法进行聚合操作。 详细的sql示例可以在sql示例文档中找到。

step6:配置可视化输出

数据分析服务提供了可视化OneNET-View节点,该节点是可选节点,前面5步已经完成了数据分析的配置,并将分析结果存到了结果集,用户可建立相应的API来对结果集数据进行访问。另外,在此基础上,用户还可以将结果集的数据输出到可视化组件OneNET-View。点击画布中的OneNET-View节点,在页面右侧配置OneNET-View节点参数,参数如下:

pic

  • 结果集名称:此处填写的结果集名称,将会被用于View组件,结果集名称需唯一
  • 最大输出条数:输出到view组件的最大条数

step7:上线任务

前面6步已经完成了任务的配置,接下来便可点击任务的上线按钮来执行数据分析任务,如图:

pic

个搜索结果,搜索内容 “

    0 个搜索结果,搜索内容 “