dbt - stage_external_sources - 分区

dbt - stage_external_sources - partitioning

我正在尝试对在 Azure Blob 存储上交付的增量文件进行很好的分区。

但是,我无法让分区列和 table 列很好地发挥作用。 如果删除分区列,则会指定所有 table 列。 如果我有分区列,我只会得到变体列和分区列。

  - name: arsm
    external:
      location: '@my_azure_stage'
      file_format: 'myformat'
      pattern: '.*path.*tablename_.*'
      auto_refresh: false # depends on your Azure setup
      partitions:       # optional
        - name: LOAD_DATE
          data_type: date
          expression: TO_DATE(substring(metadata$filename,16,10))
      columns:
      - name: "AoNr" 
        data_type: bigint
      - name: "AoNrAlfa" 
        data_type: varchar(65)
      - name: "AoPos" 
        data_type: int
      - name: "ArtikelVariant" 
        data_type: varchar(30)
      - name: "ArtKalkBer" 
        data_type: NUMERIC

我认为您只需要将 columns 数组缩进两个空格即可。 columns 数组应该是源 table 的顶级键,与 nameexternal 处于同一级别;现在你把它嵌套在 external 字典中。