上云无忧 > 文档中心 > 天翼云数据治理中心 DataArts Studio 数据开发 - EL表达式参考
数据治理中心 DataArts Studio
天翼云数据治理中心 DataArts Studio 数据开发 - EL表达式参考

文档简介:
本章节主要介绍DataArts Studio的EL表达式操作。 数据开发模块作业中的节点参数可以使用表达式语言(Expression Language,简称EL),根据运行https://gdoss.xstore.ctyun.cn/ctyun-it-0727/help/717626725114535936.png环境动态生成参数值。可以根据Pipeline输入参数、上游节点输出等决定是否执行此节点。
*产品来源:中国电信天翼云。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

数据开发模块作业中的节点参数可以使用表达式语言(Expression Language,简称EL),根据运行环境动态生成参数值。可以根据Pipeline输入参数、上游节点输出等决定是否执行此节点。数据开发模块 EL表达式使用简单的算术和逻辑计算,引用内嵌对象,包括作业对象和一些工具类对象。

作业对象:提供了获取作业中上一个节点的输出消息、作业调度计划时间、作业执行时间等属性和方法。

工具类对象:提供了一系列字符串、时间、JSON操作方法,例如从一个字符串中截取一个子字符串、时间格式化等。

语法

表达式的语法:

#{expr}复制

其中,“expr”指的是表达式。“#”和“{}”是数据开发模块 EL中通用的操作符,这两个操作符允许您通过数据开发模块内嵌对象访问作业属性。

举例

在Rest Client节点的参数“URL参数”中使用EL表达式

“tableName=#{JSONUtil.path(Job.getNodeOutput("get_cluster"),"tables[0].table_name")}”。复制

表达式说明如下:

  1. 获取作业中“get_cluster”节点的执行结果(“Job.getNodeOutput("get_cluster")”),执行结果是一个JSON字符串。
  2. 通过JSON路径(“tables[0].table_name”),获取JSON字符串中字段的值。

调试方法介绍

下面为您介绍几种EL表达式的调试方法,能够在调试过程中方便地看到替换结果。

后文以#{DateUtil.now()}表达式为例进行介绍。

  1. 使用DIS Client节点。
  • 前提:您需要具备DIS通道。
  • 方法:选择DIS Client节点,将EL表达式直接写在要发送的数据中,点击“测试运行”,然后在节点上右键查看日志,日志中会把EL表达式的值打印出来。

  1. 使用Kafka Client节点。
  • 前提:您需要具备MRS集群,且集群有Kafka组件。
  • 方法:选择Kafka Client节点,将EL表达式直接写在要发送的数据中,点击“测试运行”,然后在节点上右键查看日志,日志中会把EL表达式的值打印出来。

  1. 使用Shell节点。
  • 前提:您需要具备ECS弹性云主机。
  • 方法:创建一个主机连接,将EL表达式直接通过echo打印出来,点击“测试运行”之后查看日志,日志中会打印出EL表达式的值。

  1. 使用Create OBS节点。

如果上述方法均不可用,则可以通过Create OBS去创建一个OBS目录,目录名称就是EL表达式的值,点击“测试运行”后,再去OBS界面查看创建出来的目录名称。

相似文档
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部