A fonte de dados TOS permite ler arquivos do TOS. Use essa fonte para recuperar arquivos armazenados no TOS, analisá-los e sincronizar os dados com qualquer fonte de destino. Este tópico descreve as capacidades de sincronização de dados do DataWorks para o TOS.
Limitações
A fonte de dados TOS aceita os seguintes tipos de coluna no DataWorks.
|
Tipo de dados |
Descrição |
|
STRING |
Tipo texto. |
|
LONG |
Tipo inteiro. |
|
BYTES |
Array de bytes. Converte o conteúdo de texto lido em um array de bytes codificado em |
|
BOOL |
Tipo booleano. |
|
DOUBLE |
Tipo ponto flutuante. |
|
DATE |
Tipo data e hora. Formatos aceitos:
|
Crie uma fonte de dados TOS
Antes de desenvolver uma tarefa de sincronização no DataWorks, adicione a fonte de dados necessária seguindo as instruções em Data source configuration. Consulte as descrições dos parâmetros no console do DataWorks para compreender o significado de cada parâmetro ao adicionar uma fonte de dados.
Desenvolver uma tarefa de sincronização de dados
A fonte de dados TOS funciona exclusivamente como origem em tarefas de sincronização em lote de tabela única. A seguir, apresentamos o ponto de entrada e o processo geral de configuração dessas tarefas.
Para obter o procedimento completo, consulte Codeless UI configuration e Script mode configuration.
Para acessar o conjunto completo de parâmetros e um exemplo de script para o modo de script, visualize Appendix: Script demo and parameters abaixo.
Apêndice: Exemplo de script e parâmetros
Configure uma tarefa de sincronização em lote usando o editor de código
Para configurar uma tarefa de sincronização em lote por meio do editor de código, defina os parâmetros relevantes no script conforme os requisitos unificados de formato. Para mais informações, consulte Script mode configuration. As informações a seguir detalham os parâmetros obrigatórios para fontes de dados durante a configuração via editor de código.
Exemplo de script do Reader
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "tos",
"parameter": {
"datasource": "",
"object": ["f/z/1.csv"],
"fileFormat": "csv",
"encoding": "utf8/gbk/...",
"fieldDelimiter": ",",
"useMultiCharDelimiter": true,
"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
|
Parâmetro |
Descrição |
Obrigatório |
Valor padrão |
|
datasource |
Nome da fonte de dados. O modo de script permite adicionar fontes de dados. O valor deste parâmetro deve corresponder exatamente ao nome da fonte adicionada. |
Sim |
Nenhum |
|
fileFormat |
Tipo do arquivo de origem. Tipos aceitos: |
Sim |
Nenhum |
|
object |
Caminho do arquivo. Usado quando fileFormat é definido como csv, text, json ou jsonl. Aceita o caractere curinga * e pode ser configurado como um array. Por exemplo, para sincronizar os arquivos a/b/1.csv e a/b/2.csv, configure a/b/*.csv. |
Sim Obrigatório quando fileFormat é csv, text, json ou jsonl. |
Nenhum |
|
column |
Lista de colunas a serem lidas. O campo type especifica o tipo de dado de origem:
Nota
Nas informações de column especificadas, type é obrigatório. Para o formato CSV/TEXT, escolha entre index ou value. Para o formato JSON/JSONL, escolha entre jsonPath ou value. |
Sim |
Tudo lido como |
|
fieldDelimiter |
Delimitador de campo para leitura. Nota
|
Sim |
|
|
lineDelimiter |
Delimitador de linha para leitura. Nota
Este parâmetro tem efeito apenas quando fileFormat é definido como text. |
Não |
Nenhum |
|
compress |
Tipo de compressão de texto. Vazio por padrão (sem compressão). Tipos aceitos: |
Não |
|
|
encoding |
Codificação usada para ler o arquivo. |
Não |
|
|
nullFormat |
Arquivos de texto não permitem definir null (ponteiro nulo) com uma string padrão. O sistema de sincronização de dados oferece nullFormat para determinar quais strings devem ser tratadas como null. Exemplos:
|
Não |
Nenhum |
|
skipHeader |
Em arquivos CSV, use skipHeader para controlar a leitura do cabeçalho.
Nota
O parâmetro skipHeader não é aceito no modo de arquivo compactado. |
Não |
|
|
parquetSchema |
Configure este parâmetro ao ler TOS no formato Parquet. Tem efeito somente quando fileFormat é parquet e descreve o tipo de armazenamento dos dados Parquet. Certifique-se de que toda a configuração obedeça à sintaxe JSON após preencher parquetSchema.
|
Não |
Nenhum |
|
csvReaderConfig |
Parâmetros de configuração para leitura de arquivos CSV, no tipo Map. A leitura usa csvReader. Se não configurado, assume valores padrão. |
Não |
Nenhum |