Todos os produtos
Search
Central de documentação

DataWorks:Azure Blob Storage

Última atualização: Jun 27, 2026

A fonte de dados do Azure Blob Storage permite ler arquivos e sincronizar dados com um destino. Este tópico aborda os tipos de dados compatíveis, a adição da fonte de dados e os parâmetros de script para configure uma tarefa de sincronização em lote.

Tipos de dados compatíveis

Tipo de dado

Descrição

STRING

Texto

LONG

Inteiro

BYTES

Array de bytes. O conteúdo textual é lido e convertido em um array de bytes codificado em UTF-8.

BOOL

Booleano

DOUBLE

Número de ponto flutuante

DATE

Data e hora. Formatos compatíveis: YYYY-MM-dd HH:mm:ss, yyyy-MM-dd, HH:mm:ss

Pré-requisitos

Antes de desenvolver uma tarefa de sincronização, adicione o Azure Blob Storage como source de dados no DataWorks. Para obter instruções, consulte Gerenciamento de fontes de dados.

As descrições dos parâmetros estão disponíveis no console do DataWorks durante a adição da fonte de dados.

Desenvolver uma tarefa de sincronização

Configurar uma tarefa de sincronização offline para uma única tabela

Use a interface sem código ou o editor de código para configure a tarefa de sincronização:

Para consultar todos os parâmetros de script e um exemplo, veja a seção Apêndice: Exemplo de script e descrições de parâmetros.

Apêndice: Exemplo de script e descrições de parâmetros

Exemplo de script do Reader

O script abaixo configura uma tarefa de sincronização em lote que lê dados do Azure Blob Storage pelo editor de código. Todos os parâmetros do Reader são definidos em steps[0].parameter.

{
  "type": "job",
  "version": "2.0",
  "steps": [
    {
      "stepType": "azureblob",
      "parameter": {
        "datasource": "",
        "object": ["f/z/1.csv"],
        "fileFormat": "csv",
        "encoding": "utf8/gbk/...",
        "fieldDelimiter": ",",
        "useMultiCharDelimiter": true,
        "lineDelimiter": "\n",
        "skipHeader": true,
        "compress": "zip/gzip",
        "column": [
          {
            "index": 0,
            "type": "long"
          },
          {
            "index": 1,
            "type": "boolean"
          },
          {
            "index": 2,
            "type": "double"
          },
          {
            "index": 3,
            "type": "string"
          },
          {
            "index": 4,
            "type": "date"
          }
        ]
      },
      "name": "Reader",
      "category": "reader"
    },
    {
      "stepType": "stream",
      "parameter": {},
      "name": "Writer",
      "category": "writer"
    }
  ],
  "setting": {
    "errorLimit": {
      "record": "0"
    },
    "speed": {
      "concurrent": 1
    }
  },
  "order": {
    "hops": [
      {
        "from": "Reader",
        "to": "Writer"
      }
    ]
  }
}

Parâmetros de script do Reader

Parâmetros obrigatórios

Parâmetro

Descrição

Padrão

datasource

Nome da fonte de dados. Deve corresponder ao nome configurado no DataWorks.

Nenhum

fileFormat

Formato do arquivo. Valores válidos: csv, text, parquet, orc.

Nenhum

object

Caminho para arquivos CSV e de texto. Aceita o caractere curinga * e valores de array. Obrigatório se fileFormat for csv ou text.

Nenhum

path

Caminho para arquivos Parquet e ORC. Aceita o caractere curinga * e valores de array. Obrigatório se fileFormat for parquet ou orc.

Nenhum

column

Lista de colunas para leitura. Cada entrada exige type (tipo de dado) e index (posição da coluna iniciando em zero) ou value (constante a gerar).

Todas as colunas como STRING

**Exemplos de curingas para object e path:**

Padrão

Correspondências

a/b/*.csv

Todos os arquivos CSV diretamente em a/b/

a/b/1.csv

Um único arquivo

["a/b/1.csv", "a/b/2.csv"]

Vários arquivos específicos

Exemplos de configuração de colunas:

Leitura de todas as colunas como STRING:

"column": ["*"]

Leitura de colunas específicas com tipos explícitos:

"column": [
  { "type": "long", "index": 0 },
  { "type": "string", "value": "alibaba" }
]

O campo value gera uma coluna constante em vez de ler o arquivo de origem.

Parâmetros opcionais

Parâmetro

Descrição

Padrão

encoding

Codificação do arquivo, como utf8 ou gbk.

utf-8

fieldDelimiter

Delimitador de campo para leitura. Use codificação Unicode para caracteres não imprimíveis, como \u001b.

, (vírgula)

useMultiCharDelimiter

Indica se fieldDelimiter deve ser tratado como delimitador de múltiplos caracteres. Defina como true para ative esse suporte.

false

lineDelimiter

Delimitador de linha. Válido apenas se fileFormat for text.

Nenhum

compress

Tipo de compactação. Valores válidos: gzip, bzip2, zip. Deixe em branco para não compactar.

Sem compactação

nullFormat

Define qual string representa nulo. Por exemplo, "nullFormat": "null" interpreta a string de origem null como campo nulo. Se omitido, os dados de origem são gravados no destino sem conversão.

Nenhum

skipHeader

Aplicável apenas a arquivos CSV. Defina como true para ignorar o cabeçalho durante a sincronização. Incompatível com arquivos compactados.

false

parquetSchema

Especifica o schema de arquivos Parquet. Válido apenas se fileFormat for parquet.

Nenhum

csvReaderConfig

Configuração adicional para leitura de CSV. Tipo mapa. Assume valores padrão se não definido.

Nenhum

maxRetryTimes

Número máximo de tentativas se o baixe do arquivo falhar. Defina como 0 para desativar retentativas. Disponível somente no editor de código.

0

retryIntervalSeconds

Intervalo entre tentativas, em segundos, se o baixe do arquivo falhar. Disponível somente no editor de código.

5

**Formato de parquetSchema:**

message <MessageTypeName> {
  required/optional <DataType> <ColumnName>;
  ...;
}
  • Defina todos os campos como optional para permitir valores nulos.

  • Tipos de dados compatíveis: BOOLEAN, Int32, Int64, Int96, FLOAT, DOUBLE, BINARY (para strings), fixed_len_byte_array.

  • Finalize cada definição de coluna com ponto e vírgula, inclusive a última.

Exemplo:

"parquetSchema": "message m { optional int32 minute_id; optional int32 dsp_id; optional int32 adx_pid; optional int64 req; optional int64 res; optional int64 suc; optional int64 imp; optional double revenue; }"