Sumber data COS memungkinkan Anda membaca file. Anda dapat menggunakan sumber data ini untuk mengambil file yang disimpan di COS, menguraikannya, dan menyinkronkannya ke sumber data tujuan apa pun. Topik ini menjelaskan kemampuan sinkronisasi data DataWorks untuk COS.
Tipe data
Sumber data COS mendukung tipe data berikut.
Tipe data | Deskripsi |
STRING | Tipe teks. |
LONG | Tipe bilangan bulat. |
BYTES | Array byte. Konten teks yang dibaca dikonversi menjadi array byte dengan encoding UTF-8. |
BOOL | Tipe boolean. |
DOUBLE | Tipe bilangan pecahan (floating-point). |
DATE | Tipe tanggal dan waktu. Format yang didukung: YYYY-MM-dd HH:mm:ss dan yyyy-MM-ddHH:mm:ss |
Buat sumber data
Untuk mengembangkan tugas sinkronisasi data, buat sumber data yang sesuai di DataWorks. Untuk informasi lebih lanjut mengenai prosedurnya, lihat Manajemen Sumber Data. Untuk deskripsi detail parameter konfigurasi, lihat prompt pada halaman konfigurasi.
Parameter utama dijelaskan di bawah ini.
Parameter | Deskripsi |
Data Source Name | Nama sumber data. Nama harus unik dalam ruang kerja. Nama harus terdiri dari huruf, angka, dan garis bawah (_). Nama tidak boleh dimulai dengan angka atau garis bawah. |
Region | Wilayah tempat bucket berada. Masukkan ID wilayah. Untuk informasi selengkapnya, lihat Regions and Endpoints. |
Bucket | Nama bucket COS. |
Endpoint | Titik akhir COS. Untuk informasi selengkapnya, lihat Regions and Endpoints. |
AccessKey ID | Parameter ini sesuai dengan SecretId pada platform Tencent Cloud. Untuk mendapatkan SecretId, buka halaman API Key Management di konsol. |
AccessKey Secret | Parameter ini sesuai dengan SecretKey pada platform Tencent Cloud. Untuk mendapatkan SecretKey, buka halaman API Key Management di konsol. |
Kembangkan tugas sinkronisasi data
Untuk informasi mengenai titik masuk dan proses umum konfigurasi tugas sinkronisasi data, lihat petunjuk pada bagian-bagian berikut.
Konfigurasikan tugas sinkronisasi offline untuk satu tabel
Untuk informasi lebih lanjut mengenai prosedurnya, lihat Konfigurasikan tugas di antarmuka tanpa kode dan Konfigurasikan tugas di editor kode. Untuk semua parameter dan contoh skrip editor kode, lihat Lampiran: Contoh skrip dan parameter.
Lampiran: Contoh skrip dan parameter
Konfigurasikan skrip tugas offline
Jika Anda menggunakan editor kode untuk mengonfigurasi tugas offline, Anda harus menulis parameter dalam skrip tugas sesuai dengan format skrip yang ditentukan. Untuk informasi selengkapnya, lihat Konfigurasikan tugas di editor kode. Bagian berikut menjelaskan parameter sumber data untuk editor kode.
Contoh skrip 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"
}
]
}
}Parameter skrip Reader
Parameter | Deskripsi | Wajib | Nilai default |
datasource | Nama sumber data. Editor kode mendukung penambahan sumber data. Nilai parameter ini harus sama dengan nama sumber data yang ditambahkan. | Ya | Tidak ada |
fileFormat | Format file sumber. Nilai yang valid: csv, text, parquet, dan orc. | Ya | Tidak ada |
object | Jalur file. Parameter ini mendukung karakter wildcard asterisk (*) dan dapat dikonfigurasi sebagai larik. Misalnya, untuk menyinkronkan file a/b/1.csv dan a/b/2.csv, Anda dapat mengatur parameter ini menjadi a/b/*.csv. | Ya | Tidak ada |
column | Daftar bidang yang akan dibaca. `type` menentukan tipe data di sumber. `index` menentukan nomor kolom dalam file teks tempat data dibaca. Nilai `index` dimulai dari 0. `value` menentukan bahwa tipe saat ini adalah konstanta. Data tidak dibaca dari file sumber. Sebaliknya, kolom yang sesuai secara otomatis dihasilkan berdasarkan nilai `value`. Secara default, Anda dapat membaca semua data sebagai tipe STRING. Konfigurasinya sebagai berikut. Anda juga dapat menentukan informasi bidang kolom. Konfigurasinya sebagai berikut. Catatan Dalam informasi column yang ditentukan, Anda harus menentukan `type`. Anda harus menentukan salah satu dari `index` atau `value`. | Ya | Semua data dibaca sebagai tipe STRING. |
fieldDelimiter | Pemisah bidang. Saat COS Reader membaca data, Anda harus menentukan pemisah bidang. Jika Anda tidak menentukan parameter ini, nilai default-nya adalah koma (,). Koma juga digunakan secara otomatis di antarmuka pengguna. Jika pemisahnya adalah karakter tak terlihat, masukkan encoding Unicode-nya. Contoh: | Ya | , |
lineDelimiter | Pemisah baris. Parameter ini hanya berlaku ketika `fileFormat` diatur ke `text`. | Tidak | Tidak ada |
compress | Format kompresi file teks. Secara default, parameter ini dibiarkan kosong, yang menunjukkan bahwa file tidak dikompresi. Format kompresi yang didukung: gzip, bzip2, dan zip. | Tidak | Tidak dikompresi |
encoding | Format encoding file yang akan dibaca. | Tidak | utf-8 |
nullFormat | Dalam file teks, Anda tidak dapat menggunakan string standar untuk mendefinisikan pointer null. Sistem sinkronisasi data menyediakan parameter `nullFormat` untuk mendefinisikan string mana yang dapat merepresentasikan null. Misalnya:
| Tidak | Tidak ada |
skipHeader | Untuk file CSV, gunakan parameter skipHeader untuk menentukan apakah header tabel akan dibaca.
Catatan Parameter skipHeader tidak didukung untuk file terkompresi. | Tidak | false |
parquetSchema | Parameter ini diperlukan saat Anda membaca file COS dalam format Parquet. Parameter ini hanya berlaku ketika fileFormat diatur ke parquet. Parameter ini mendefinisikan struktur data. Format umumnya sebagai berikut: Format `parquetSchema` adalah sebagai berikut:
Kode berikut memberikan contoh konfigurasi. | Tidak | Tidak ada |
csvReaderConfig | Parameter untuk membaca file CSV. Nilainya berupa peta (map). CsvReader digunakan untuk membaca file CSV. Jika Anda tidak mengonfigurasi parameter ini, nilai default akan digunakan. | Tidak | Tidak ada |