Todos os produtos
Search
Central de documentação

DataWorks:COS

Última atualização: Jun 27, 2026

O COS (Tencent Cloud Object Storage) é uma fonte de dados somente leitura no DataWorks. Conecte-o para ler arquivos de um bucket do COS e sincronizar os dados com qualquer destino compatível.

Capacidades suportadas

Capacidade

Suportado

Sincronização offline — leitura (source)

Sim

Sincronização offline — gravação (destino)

Não

Sincronização em tempo real

Não

Pré-requisitos

Antes de começar, verifique se você possui:

  • Uma conta na Tencent Cloud com um bucket do COS

  • Um SecretId e uma SecretKey com acesso de leitura ao bucket — obtenha-os no API Key Management do console da Tencent Cloud

  • O ID da região e o endpoint do bucket — consulte Regions and Endpoints

  • Um workspace do DataWorks

Tipos de dados suportados

Tipo de dado

Descrição

STRING

Texto

LONG

Inteiro

DOUBLE

Número de ponto flutuante

BOOL

Booleano

DATE

Data e hora. Formatos suportados: YYYY-MM-dd HH:mm:ss e yyyy-MM-ddHH:mm:ss

BYTES

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

Crie uma fonte de dados

Crie uma fonte de dados do COS antes de configurar qualquer tarefa de sincronização. Para o procedimento completo, consulte Gerenciamento de fontes de dados.

Os principais parâmetros estão descritos abaixo.

Parâmetro

Descrição

Data Source Name

Um nome exclusivo dentro do workspace. Utilize letras, dígitos e underscores (_). O nome não pode começar com um dígito ou underscore.

Region

A região onde o bucket está localizado. Insira o ID da região. Consulte Regions and Endpoints.

Bucket

O nome do bucket do COS.

Endpoint

O endpoint do COS. Consulte Regions and Endpoints.

AccessKey ID

Corresponde ao SecretId na Tencent Cloud. Obtenha-o em API Key Management.

AccessKey Secret

Corresponde à SecretKey na Tencent Cloud. Obtenha-a em API Key Management.

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

Para configurar uma tarefa de sincronização offline do COS, utilize a interface visual sem código ou o editor de código.

Apêndice: Demonstração de script e parâmetros

Exemplo de script do Reader

{
  "type": "job",
  "version": "2.0",
  "steps": [
    {
      "stepType": "cos",
      "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 do script do Reader

Conexão

Parâmetro

Descrição

Obrigatório

Padrão

datasource

O nome da fonte de dados. Deve corresponder exatamente ao nome da fonte de dados que você adicionou.

Sim

Nenhum

Localizar arquivos

Parâmetro

Descrição

Obrigatório

Padrão

object

O caminho do arquivo. Suporta o caractere curinga asterisco (*) e pode ser configurado como um array. Por exemplo, para sincronizar a/b/1.csv e a/b/2.csv, defina este valor como a/b/*.csv.

Sim

Nenhum

Analisar arquivos

Parâmetro Descrição Obrigatório Padrão
fileFormat O formato do arquivo de origem. Valores válidos: csv, text, parquet, orc. Sim Nenhum
column Os campos a serem lidos. Cada entrada especifica:<br>- type: o tipo de dado na origem<br>- index: a posição da coluna (baseada em zero)<br>- value: um valor constante — nenhum dado é lido da origem; em vez disso, uma coluna é gerada com este valor<br><br>Para ler todas as colunas como STRING, use "column": ["*"].<br><br>Para especificar colunas individuais:<br>``json<br>"column": [<br> { "type": "long", "index": 0 },<br> { "type": "string", "value": "alibaba" }<br>]``<br><br>
Importante

Cada entrada deve incluir type e também index ou value.

Sim Todas as colunas como STRING
fieldDelimiter O separador de campos. Para caracteres invisíveis, utilize a codificação Unicode (por exemplo, \u001b ou \u007c). Sim ,
lineDelimiter O separador de linhas. Válido apenas quando fileFormat é text. Não Nenhum
encoding A codificação do arquivo. Não utf-8
compress O formato de compactação. Valores suportados: gzip, bzip2, zip. Deixe em branco se o arquivo não estiver compactado. Não Sem compactação
skipHeader Para um arquivo CSV, especifique se o cabeçalho da tabela deve ser lido.<br>- true: O cabeçalho da tabela é lido durante a sincronização de dados.<br>- false: O cabeçalho da tabela não é lido durante a sincronização de dados.<br><br>
Nota

Não suportado para arquivos compactados.

Não false
nullFormat A string a ser tratada como valor nulo. Por exemplo, se definido como "null", qualquer campo contendo o texto null será gravado no destino como nulo. Se não for definido, os dados de origem serão gravados conforme estão, sem conversão. Não Nenhum

Opções avançadas

Parâmetro

Descrição

Obrigatório

Padrão

parquetSchema

Obrigatório quando fileFormat é parquet. Defina a estrutura de dados usando o seguinte formato:

```

message MessageTypeName {

required

optional DataType ColumnName;

...

}

<!--/@code-->`

Tipos de dados suportados: `BOOLEAN , Int32 , Int64 , Int96 , FLOAT , DOUBLE , BINARY (use para tipos string), fixed_len_byte_array . Defina todos os campos como optional a menos que valores nulos não sejam permitidos. Cada definição de campo deve terminar com ponto e vírgula (;`), incluindo o último.

Exemplo:

<!--/@code-->`json

{"parquetSchema": "message UserProfile { 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; }"}

<!--/@code-->`

Não (obrigatório para Parquet)

Nenhum

csvReaderConfig

Parâmetros adicionais para leitura de arquivos CSV, passados como um mapa. Usa os padrões se não for especificado.

Não

Nenhum