DataWorks'ün Veri Entegrasyonu özelliğini ve ApsaraDB for SelectDB kullanarak tablo verilerini Alibaba Cloud SelectDB'ye aktarın. Bu örnekte, verileri ApsaraDB for SelectDB ile eşitlemek için MySQL veri kaynağı kullanılır.
Sınırlamalar
DataWorks'ün Veri Entegrasyonu özelliği yalnızca ApsaraDB for SelectDB üzerinden Alibaba Cloud SelectDB'ye aktarımı destekler.
BITMAP, HLL (HyperLogLog) ve QUANTILE_STATE alanlarına veri yazılması desteklenmez.
Veri eşitleme görevi geliştirme
Veri kaynakları ekleme
Bir veri eşitleme görevi geliştirmeden önce, DataWorks'te bir MySQL veri kaynağı ve bir SelectDB veri kaynağı oluşturun.
MySQL veri kaynağı oluşturun. Daha fazla bilgi için bkz. MySQL Veri Kaynağı.
-
SelectDB veri kaynağı oluşturun. Daha fazla bilgi için bkz. Veri Kaynağı Yönetimi. Aşağıdaki tabloda anahtar parametreler listelenmiştir.
Parametre
Açıklama
Data source name
Veri kaynağının adı.
MySQL connection string
JDBC bağlantı dizesi:
jdbc:mysql://<ip>:<port>/<dbname>.ApsaraDB for SelectDB konsolunda Instance Details > Network Information sayfasına giderek VPC Endpointnı (veya Public Endpointyı) ve MySQL Portnı edinin.
Örnek:
jdbc:mysql://selectdb-cn-4xl3jv1****.selectdbfe.rds.aliyuncs.com:9030/test_dbNotMySQL örneği ve ApsaraDB for SelectDB örneği aynı VPC'de bulunuyorsa VPC Endpointnı kullanın. Aksi takdirde Public Endpointyı kullanın.
HTTP connection address
HTTP bağlantı adresi:
<ip>:<port>.ApsaraDB for SelectDB konsolunda Instance Details > Network Information sayfasına giderek VPC Endpointnı (veya Public Endpointyı) ve HTTP Portnı edinin.
Örnek:
selectdb-cn-4xl3jv1****.selectdbfe.rds.aliyuncs.com:8080NotMySQL örneği ve ApsaraDB for SelectDB örneği aynı VPC'de bulunuyorsa VPC Endpointnı kullanın. Aksi takdirde Public Endpointyı kullanın.
Username
ApsaraDB for SelectDB örneğinizin kullanıcı adını girin.
Password
ApsaraDB for SelectDB örneğinizin kullanıcısı için parolayı girin.
ÖnemliVeri kaynağını eklemek için DataWorks kaynak grubunun IP adreslerini SelectDB gibi veri kaynaklarının izin listesine ekleyin. Daha fazla bilgi için bkz. İzin listesine IP adresleri ekleme. İzin listesini yapılandırırken özel ve paylaşılan Veri Entegrasyonu kaynak grupları arasında ayrım yapın.
Tek tablo çevrimdışı eşitlemeyi yapılandırma
Sihirbaz modunda veya betik modunda bir çevrimdışı eşitleme görevi yapılandırabilirsiniz. Daha fazla bilgi için aşağıdaki konulara bakın:
-
Betik modu için tam parametre listesi ve örnek bir betik için bkz. Betik modu: örnekler ve parametreler.
Betik modu: örnekler ve parametreler
Çevrimdışı görev betiği yapılandırması
Betik modunda çevrimdışı bir görev yapılandırırken Betik modu yapılandırması bölümünde belirtilen biçimi kullanın.
MySQL Reader ve SelectDB Writer betik örneği
{
"type":"job",
"version":"2.0",
"steps":[
{
"stepType":"mysql",
"parameter":{
"column":[
"<id>",
"<table_id>",
"<table_no>",
"<table_name>",
"<table_status>"
],
"connection":[
{
"datasource":"<mysql_datasource>",
"table":[
"<mysql_table_name>"
]
}
],
"where":"",
"splitPk":"",
"encoding":"UTF-8"
},
"name":"Reader",
"category":"reader"
},
{
"stepType":"selectdb",
"parameter":{
"postSql":[
],
"preSql":[
],
"username": "<selectdb_username>",
"password": "<selectdb_password>",
"loadUrl":[
"<ip:port>"
],
"column":[
"<id>",
"<table_id>",
"<table_no>",
"<table_name>",
"<table_status>"
],
"connection":[
{
"datasource":"<selectdb_datasource>",
"table":[
"<selectdb_table_name>"
]
}
],
"maxBatchRows":1000000,
"loadProps":{
"format":"csv",
"column_separator": "\\x01",
"line_delimiter": "\\x02"
}
},
"name":"Writer",
"category":"writer"
}
],
"setting":{
"errorLimit":{
"record":"0"
},
"speed":{
"throttle":false,
"concurrent":1
}
},
"order":{
"hops":[
{
"from":"Reader",
"to":"Writer"
}
]
}
}
Betik parametreleri
|
Parametre |
Açıklama |
|
datasource |
Gerekli. DataWorks veri kaynağının adı. Bu değer, oluşturduğunuz kaynağın adıyla eşleşmelidir. |
|
table |
Gerekli. Hedef tablonun adı. |
|
column |
Gerekli. Virgülle (,) ayrılmış, verilerin yazılacağı hedef sütunlar. Örneğin: |
|
loadUrl |
Gerekli. SelectDB FE kümesinin HTTP uç noktası. Biçim |
|
username |
Gerekli. SelectDB veritabanı kullanıcı adı. |
|
password |
Gerekli. SelectDB veritabanı kullanıcısının parolası. |
|
preSql |
Eşitleme görevi başlamadan önce yürütülecek SQL deyimleri. Sihirbaz modu tek bir deyimi desteklerken betik modu birden çok deyimi destekler (örneğin, bir tabloyu temizlemek için). |
|
postSql |
Eşitleme görevi tamamlandıktan sonra yürütülecek SQL deyimleri. Sihirbaz modu tek bir deyimi desteklerken betik modu birden çok deyimi destekler (örneğin, zaman damgası eklemek için). |
|
maxBatchRows |
Her partide içe aktarılacak maksimum satır sayısı. Varsayılan değer 500.000'dir. |
|
loadProps |
İçe aktarılan veri formatını belirten COPY INTO istek parametreleri. Varsayılan: JSON. Eğer loadProps yapılandırılmamışsa veya
CSV formatını kullanmak için formatı belirtin ve aşağıda gösterildiği gibi satır ve sütun sınırlayıcılarını yapılandırın. Belirtilmezse sütunlar varsayılan olarak sekmeyle (
|
Desteklenen veri türleri
ApsaraDB for SelectDB aşağıdaki veri türlerini destekler.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|