全部产品
Search
文档中心

DataWorks:Sumber data AnalyticDB for MySQL 2.0

更新时间:Jul 02, 2025

DataWorks menyediakan AnalyticDB for MySQL 2.0 Reader dan AnalyticDB for MySQL 2.0 Writer untuk membaca data dari dan menulis data ke sumber data AnalyticDB for MySQL 2.0. Topik ini menjelaskan kemampuan sinkronisasi data dari atau ke sumber data AnalyticDB for MySQL 2.0.

Batasan

  • Data dari tampilan dapat dibaca selama sinkronisasi batch.

  • AnalyticDB for MySQL 2.0 Reader tidak mendukung pembacaan data bertipe multivalue. Jika Anda mencoba membaca data jenis ini, AnalyticDB for MySQL 2.0 Reader akan berhenti secara tak terduga.

Pemetaan tipe data

Membaca data batch

Tabel berikut mencantumkan pemetaan tipe data yang digunakan oleh AnalyticDB for MySQL 2.0 Reader untuk mengonversi tipe data.

Tipe data AnalyticDB for MySQL 2.0

Tipe data Data Integration

Tipe data MaxCompute

BIGINT

LONG

BIGINT

TINYINT

LONG

INT

TIMESTAMP

DATE

DATETIME

VARCHAR

STRING

STRING

SMALLINT

LONG

INT

INT

LONG

INT

FLOAT

STRING

DOUBLE

DOUBLE

STRING

DOUBLE

DATE

DATE

DATETIME

TIME

DATE

DATETIME

Menulis data batch

Tabel berikut mencantumkan pemetaan tipe data yang digunakan oleh AnalyticDB for MySQL 2.0 Writer untuk mengonversi tipe data.

Kategori

Tipe data AnalyticDB for MySQL 2.0

Integer

INT, TINYINT, SMALLINT, dan BIGINT

Floating point

FLOAT dan DOUBLE

String

VARCHAR

Tanggal dan waktu

DATE dan TIMESTAMP

Boolean

BOOLEAN

Mengembangkan tugas sinkronisasi data

Untuk informasi tentang titik masuk dan prosedur konfigurasi tugas sinkronisasi data, lihat bagian berikut. Untuk detail pengaturan parameter, lihat infotip setiap parameter di tab konfigurasi tugas.

Menambahkan sumber data

Mengonfigurasi tugas sinkronisasi batch untuk menyinkronkan data tabel tunggal

Mengonfigurasi pengaturan sinkronisasi untuk menerapkan sinkronisasi batch semua data dalam database

Untuk detail prosedur konfigurasi, lihat Mengonfigurasi Tugas Sinkronisasi di Data Integration.

Lampiran: Kode dan parameter

Lampiran: Mengonfigurasi tugas sinkronisasi batch menggunakan editor kode

Kode untuk AnalyticDB for MySQL 2.0 Reader

{
    "type": "job",
  "steps": [
    {
            "stepType": "ads",
      "parameter": {
        "datasource": "ads_demo",
        "table": "th_test",
        "column": [
          "id",
          "testtinyint",
          "testbigint",
          "testdate",
          "testtime",
          "testtimestamp",
          "testvarchar",
          "testdouble",
          "testfloat"
        ],
        "odps": {
          "accessId": "<yourAccessKeyId>",
          "accessKey": "<yourAccessKeySecret>",
          "account": "*********@aliyun.com",
          "odpsServer": " http://service.cn-shanghai-vpc.maxcompute.aliyun-inc.com/api",
          "tunnelServer": "http://dt.cn-shanghai-vpc.maxcompute.aliyun-inc.com",
          "accountType": "aliyun",
          "project": "odps_test"
        },
        "mode": "ODPS"
      },
      "name": "Reader",
      "category": "reader"
    },
    {
      "stepType": "stream",
      "parameter": {},
      "name": "Writer",
      "category": "writer"
    }
  ],
  "version": "2.0",
  "order": {
    "hops": [
      {
        "from": "Reader",
        "to": "Writer"
      }
    ]
  },
  "setting": {
    "errorLimit": {
      "record": ""
    },
    "speed": {
      "concurrent": 2,
      "throttle": true,// Menentukan apakah akan mengaktifkan pembatasan laju. Nilai false menunjukkan bahwa pembatasan laju dinonaktifkan, dan nilai true menunjukkan bahwa pembatasan laju diaktifkan. Parameter mbps hanya berlaku ketika parameter throttle disetel ke true.
                  "mbps":"12"// Laju transmisi maksimum. Unit: MB/s.
    }
  }
}

Parameter dalam kode untuk AnalyticDB for MySQL 2.0 Reader

Parameter

Deskripsi

Diperlukan

Nilai default

table

Nama tabel dari mana Anda ingin membaca data.

Ya

Tidak ada nilai default

column

Nama kolom. Jika parameter ini tidak ditentukan, semua kolom dibaca.

Tidak

*

limit

Jumlah maksimum catatan yang dapat dibaca pada satu halaman.

Tidak

Tidak ada nilai default

where

Klausa WHERE berdasarkan mana catatan data difilter. String yang ditentukan oleh parameter ini, seperti where id < 100, ditambahkan ke pernyataan SQL sebagai kondisi kueri.

Tidak

Tidak ada nilai default

mode

Mode baca. Nilai valid:

  • Select: membaca data pada beberapa halaman berdasarkan nilai yang ditentukan untuk parameter limit.

  • ODPS: membaca data dengan menggunakan MaxCompute dump. Untuk membaca data dalam mode ini, Anda harus memiliki izin akses pada MaxCompute.

Tidak

Select

odps.accessKey

Rahasia AccessKey akun Alibaba Cloud yang digunakan oleh AnalyticDB for MySQL 2.0 Reader untuk mengakses MaxCompute. Akun tersebut harus memiliki izin Describe, Create, Select, Alter, Update, dan Drop. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

Tidak ada nilai default

odps.accessId

ID AccessKey akun Alibaba Cloud yang digunakan oleh AnalyticDB for MySQL 2.0 Reader untuk mengakses MaxCompute. Akun tersebut harus memiliki izin Describe, Create, Select, Alter, Update, dan Drop. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

Tidak ada nilai default

odps.odpsServer

Titik akhir API MaxCompute. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

Tidak ada nilai default

odps.tunnelServer

Titik akhir MaxCompute Tunnel. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

Tidak ada nilai default

odps.project

Nama proyek MaxCompute. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

Tidak ada nilai default

odps.accountType

Tipe akun yang digunakan untuk mengakses MaxCompute. Parameter ini diperlukan jika parameter mode disetel ke ODPS.

Tidak

aliyun

Kode untuk AnalyticDB for MySQL 2.0 Writer

{
    "type":"job",
    "version":"2.0",
    "steps":[ 
        {
            "stepType":"stream",
            "parameter":{
            "name":"Reader",
            "category":"reader"
        },
        {
            "stepType":"ads",// Nama plugin.
            "parameter":{
                "partition":"",// Nama partisi ke mana Anda ingin menulis data.
                "datasource":"",// Nama sumber data.
                "column":[// Nama kolom.
                     "id"
                ],
                "writeMode":"insert",// Mode penulisan.
                "batchSize":"256",// Jumlah catatan data yang ditulis sekaligus.
                "table":"",// Nama tabel.
                "overWrite":"true"// Menentukan apakah akan menimpa data di tabel tujuan. Nilai true menunjukkan bahwa data di tabel tujuan ditimpa. Nilai false menunjukkan bahwa data di tabel tujuan tidak ditimpa dan data baru ditambahkan ke data yang sudah ada. Parameter ini hanya berlaku ketika parameter writeMode disetel ke load.
                "options.ignoreEmptySource":true// Menentukan apakah sistem melaporkan kesalahan jika sumber tidak berisi data. Nilai true menunjukkan bahwa sistem tidak melaporkan kesalahan, dan nilai false menunjukkan bahwa sistem melaporkan kesalahan. Nilai default parameter ini adalah true.
            },
            "name":"Writer",
            "category":"writer"
        }
    ],
    "setting":{
        "errorLimit":{
            "record":"0"// Jumlah maksimum catatan data kotor yang diizinkan.
        },
        "speed":{
            "throttle":true,// Menentukan apakah akan mengaktifkan pembatasan laju. Nilai false menunjukkan bahwa pembatasan laju dinonaktifkan, dan nilai true menunjukkan bahwa pembatasan laju diaktifkan. Parameter mbps hanya berlaku ketika parameter throttle disetel ke true.
            "concurrent":1, // Jumlah maksimum thread paralel.
            "mbps":"12"// Laju transmisi maksimum. Unit: MB/s.
        }
    },
    "order":{
        "hops":[
            {
                "from":"Reader",
                "to":"Writer"
            }
        ]
    }
}

Parameter dalam kode untuk AnalyticDB for MySQL 2.0 Writer

Parameter

Deskripsi

Diperlukan

Nilai default

url

URL yang digunakan untuk terhubung ke database AnalyticDB for MySQL 2.0. Tentukan parameter ini dalam format Alamat IP:Port.

Ya

Tidak ada nilai default

database

Nama database AnalyticDB for MySQL 2.0.

Ya

Tidak ada nilai default

Access Id

ID AccessKey yang digunakan untuk terhubung ke database AnalyticDB for MySQL 2.0.

Ya

Tidak ada nilai default

Access Key

Rahasia AccessKey yang digunakan untuk terhubung ke database AnalyticDB for MySQL 2.0.

Ya

Tidak ada nilai default

datasource

Nama sumber data. Harus sama dengan nama sumber data yang telah ditambahkan. Anda dapat menambahkan sumber data menggunakan editor kode.

Ya

Tidak ada nilai default

table

Nama tabel ke mana Anda ingin menulis data.

Ya

Tidak ada nilai default

partition

Nama partisi ke mana Anda ingin menulis data. Parameter ini hanya diperlukan ketika tabel tujuan adalah tabel terpartisi.

Tidak

Tidak ada nilai default

writeMode

AnalyticDB for MySQL 2.0 Writer dapat digunakan untuk menulis data ke database AnalyticDB for MySQL 2.0 dalam dua mode.

  • Dalam mode insert, jika terjadi konflik kunci utama, data di baris yang bertentangan akan ditimpa.

  • Dalam mode load, data dipindahkan dan diimpor menggunakan sistem pihak ketiga.

Ya

Tidak ada nilai default

column

Nama kolom ke mana Anda ingin menulis data. Pisahkan nama dengan koma (,), seperti ["a", "b", "c"].

Ya

Tidak ada nilai default

suffix

Opsional. Akhiran untuk URL AnalyticDB for MySQL 2.0 yang dalam format Alamat IP:Port. Akhiran ini adalah string koneksi kustom. Setelah parameter ini ditentukan, URL berubah menjadi string koneksi Java Database Connectivity (JDBC) yang digunakan untuk terhubung ke database AnalyticDB for MySQL 2.0. Sebagai contoh, atur parameter akhiran ke autoReconnect=true&failOverReadOnly=false&maxReconnects=10.

Tidak

Tidak ada nilai default

batchSize

Jumlah catatan data yang ditulis sekaligus.

Parameter ini hanya diperlukan ketika parameter writeMode disetel ke insert.

Tidak ada nilai default

bufferSize

Ukuran buffer data Data Integration, yang dirancang untuk meningkatkan kinerja AnalyticDB for MySQL 2.0. Data sumber diurutkan dalam buffer sebelum data dikomit ke AnalyticDB for MySQL 2.0. Data dalam buffer diurutkan berdasarkan kolom kunci partisi dalam tabel AnalyticDB for MySQL 2.0. Dengan cara ini, data diatur dalam urutan yang dapat meningkatkan kinerja server AnalyticDB for MySQL 2.0.

Data dalam buffer dikomit ke AnalyticDB for MySQL 2.0 secara batch berdasarkan nilai parameter batchSize. Kami menyarankan Anda untuk menyetel parameter bufferSize ke nilai yang merupakan kelipatan dari nilai parameter batchSize. Parameter ini hanya berlaku ketika parameter writeMode disetel ke insert.

Parameter ini hanya diperlukan ketika parameter writeMode disetel ke insert.

Tidak ada nilai default