【问题标题】:Azure Data Factory Dataset Dynamic Folder PathAzure 数据工厂数据集动态文件夹路径
【发布时间】:2019-09-04 13:01:14
【问题描述】:

我有一个位于日期是动态的文件夹路径下的数据集(例如 rootfolder/subfolder/yyyy/mm/dd/subfolder/subfolder),我正试图通过复制活动来拉取它。到目前为止,我无法让数据工厂认识到我的日期是动态的......

这是我目前尝试过的代码:

["rootfolder/subfolder/subfolder/subfolder/subfoler/@{formatDateTime(utcnow(),'yyyy')}/@{formatDateTime(utcnow(),'MM')}/@{formatDateTime(utcnow(),'dd')}/subfolder/file"]

【问题讨论】:

  • 请注意,@ 符号仅用于表达式的开头,您无需在整个表达式中重复它。花括号{ 用于所谓的字符串插值,基本上是当您想将此表达式嵌入到字符串中时。最近有类似的答案,请参阅here
  • 如果您尝试.../subfoler/{Year}/{Month}{Day}/subfolder/file,这可以工作。

标签: azure azure-data-factory


【解决方案1】:

你需要使用数据工厂提供的concat函数。

@concat('rootfolder/subfolder/subfolder/subfolder/subfolder/',formatDateTime(utcnow(),'yyyy'),'/',formatDateTime(utcnow(),'MM'),'/',formatDateTime(utcnow(),'dd'),'/subfolder/file')

concat 函数类似于连接字符串的编程语言。

更多详情:Azure Data Factory Loop Through Files

【讨论】:

    【解决方案2】:

    只是为了构建 pm Anish K 答案,您也可以通过使用格式来缩短它

    formatDateTime(utcnow(),'yyyy/MM/dd')
    

    所以最终的答案是

    @concat('rootfolder/subfolder/subfolder/subfolder/subfolder/',formatDateTime(utcnow(),'yyyy//MM/dd'),'/subfolder/file')
    

    如果您想了解更多关于 ADF 参数化的信息,请随时观看此视频 https://youtu.be/pISBgwrdxPM

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-22
      • 1970-01-01
      • 2020-11-25
      • 2022-12-09
      • 2021-05-26
      • 2021-10-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多