开发者社区 > 大数据与机器学习 > 大数据计算 MaxCompute > 正文

请问下大数据计算MaxCompute dataworks是否有全局变量?

请问下大数据计算MaxCompute dataworks是否有全局变量,比如我设置today是今天的日期,在每个sql节点里直接调用这个变量就可以,而不需要每个节点都要在调度配置里一个个配呢?

展开
收起
真的很搞笑 2023-11-19 07:48:45 65 0
3 条回答
写回答
取消 提交回答
  • 看下流程参数,开发环境需要匹配一下参数值,才能运行。生产环境会根据你的配置默认执行 ,此回答整理自钉群“MaxCompute开发者社区2群”

    2023-11-19 22:35:19
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    您可以在DataWorks中编写SQL模板来实现类似的效果。您可以在模板中定义常量,并在SQL节点中引用模板中的常量。
    以下是具体步骤:

    1. 在DataWorks的SQL编辑器中创建一个模板文件,如template.sql
    2. 在模板文件中定义常量,如:
    define today as DATE_FORMAT(CURRENT_DATE(), 'yyyy-MM-dd');
    
    1. 在每个SQL节点中引用模板文件中的常量:
    SELECT * FROM table WHERE date = @{today};
    
    2023-11-19 14:37:33
    赞同 展开评论 打赏
  • 在DataWorks中,可以使用全局变量来实现类似的功能。你可以在调度配置中定义全局变量,并在SQL节点中使用它。

    要定义全局变量,可以按照以下步骤进行操作:

    在调度配置中,选择“全局变量”选项卡。
    点击“添加”按钮,输入变量的名称和值。
    在SQL节点中使用全局变量时,可以使用${}语法来引用变量的值。

    例如,如果你在调度配置中定义了一个名为"today"的全局变量,并在SQL节点中使用${today}来引用它,那么每个SQL节点都会使用该全局变量的值作为今天的日期。

    需要注意的是,全局变量的值在调度配置中定义后,会在整个调度过程中保持不变。因此,如果你在调度过程中修改了全局变量的值,新的值将适用于后续的所有SQL节点。

    2023-11-19 08:16:31
    赞同 展开评论 打赏

MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。

相关产品

  • 云原生大数据计算服务 MaxCompute
  • 相关电子书

    更多
    Data+AI时代大数据平台应该如何建设 立即下载
    大数据AI一体化的解读 立即下载
    极氪大数据 Serverless 应用实践 立即下载