AnalyticDB for PostgreSQL veri kaynağı, Data Integration aracılığıyla çift yönlü okuma ve yazma yetenekleri sunar.
Sınırlamalar
Toplu iş senkronizasyonu, bir görünümün (view) verilerini okumayı destekler.
Desteklenen sürümler
Bağlayıcı, 7,0 dahil olmak üzere bu sürüme kadar olan sürümleri destekler.
Desteklenen veri türleri
Toplu iş okuma
AnalyticDB for PostgreSQL Reader, çoğu AnalyticDB for PostgreSQL veri türünü destekler. Kullanmadan önce veri türlerinizin desteklendiğini doğrulayın.
Aşağıdaki tabloda toplu iş okuma için desteklenen veri türleri listelenmiştir.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Toplu iş yazma
AnalyticDB for PostgreSQL Writer, çoğu AnalyticDB for PostgreSQL veri türünü destekler. Kullanmadan önce veri türlerinizin desteklendiğini doğrulayın.
Aşağıdaki tabloda, toplu iş yazma işlemleri için DataWorks veri türlerinin AnalyticDB for PostgreSQL veri türlerine eşlemesi gösterilmektedir.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MONEY, INET ve BIT veri türleri için a_inet::varchar gibi bir tür dönüştürme işlemi kullanmanız gerekir.
Veri kaynağı ekleme
DataWorks'te bir senkronizasyon görevi geliştirmeden önce, gerekli veri kaynağını Veri kaynağı yapılandırması bölümündeki talimatları izleyerek DataWorks'e eklemeniz gerekir. Bir veri kaynağı eklerken parametrelerin anlamlarını anlamak için DataWorks konsolunda parametre açıklamalarını görüntüleyebilirsiniz.
Veri senkronizasyon görevi geliştirme
Senkronizasyon görevini yapılandırmaya yönelik giriş noktası ve yordam hakkında bilgi için aşağıdaki yapılandırma kılavuzlarına bakın.
Tek tablo toplu iş senkronizasyonu
Yordam için bkz. Kodsuz UI kullanarak bir senkronizasyon görevi yapılandırma ve Kod Düzenleyici kullanarak bir senkronizasyon görevi yapılandırma.
Kod Düzenleyici için tam bir parametre listesi ve betik örnekleri için bkz. Ek: Betik örnekleri ve parametreler.
Tam veritabanı toplu iş senkronizasyonu
Yordam için bkz. Tüm veritabanı için toplu iş senkronizasyon görevi yapılandırma.
Ek: Betik örnekleri ve parametreler
Kod düzenleyici kullanarak toplu iş senkronizasyon görevi yapılandırma
Toplu iş senkronizasyon görevini kod düzenleyici kullanarak yapılandırmak istiyorsanız, betikteki ilgili parametreleri birleşik betik biçimi gereksinimlerine göre yapılandırmanız gerekir. Daha fazla bilgi için bkz. Betik modu yapılandırması. Aşağıdaki bilgiler, kod düzenleyici kullanarak toplu iş senkronizasyon görevi yapılandırırken veri kaynakları için yapılandırmanız gereken parametreleri açıklar.
Reader betik örneği
{
"type": "job",
"steps": [
{
"parameter": {
"datasource": "test_004",// The name of the data source.
"column": [// The columns in the source table.
"id",
"name",
"sex",
"salary",
"age"
],
"where": "id=1001",// The WHERE clause.
"splitPk": "id",// The shard key.
"table": "public.person"// The name of the source table.
},
"name": "Reader",
"category": "reader"
},
{
"parameter": {},
"name": "Writer",
"category": "writer"
}
],
"version": "2.0",// The version number.
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
},
"setting": {
"errorLimit": {// The error record count.
"record": ""
},
"speed": {
"concurrent": 6,// The number of concurrent threads.
"throttle": true,// Specifies whether to enable throttling. If you set this parameter to false, throttling is disabled and the mbps parameter does not take effect. If you set this parameter to true, throttling is enabled.
"mbps":"12"// The throttling rate in MB/s.
}
}
}
Reader parametreleri
|
Parametre |
Açıklama |
Gerekli |
Varsayılan |
|
datasource |
DataWorks'te kayıtlı olan veri kaynağının adı. |
Evet |
Yok |
|
table |
Kaynak tablonun adı. |
Evet |
Yok |
|
column |
JSON dizisi olarak belirtilen senkronize edilecek sütunlar. Varsayılan olarak, tüm sütunlar senkronize edilir; bu durum [*] ile gösterilir.
|
Evet |
Yok |
|
splitPk |
Parçalama anahtarı. Parçalama yoluyla paralel veri çıkarma işlemini etkinleştirmek için splitPk parametresini bir sütuna ayarlayın.
|
Hayır |
Yok |
|
where |
Çıkarılan verileri filtrelemek için kullanılan WHERE yan tümcesi. Reader, column, table ve where parametrelerinden bir SQL sorgusu oluşturur. Örnek:
|
Hayır |
Yok |
|
querySql (gelişmiş; Kodsuz UI'da kullanılamaz) |
Veri filtreleme için özel bir SQL sorgusu. querySql parametresini yapılandırdığınızda AnalyticDB for PostgreSQL Reader column, table ve where parametrelerini yok sayar. |
Hayır |
Yok |
|
fetchSize |
Veritabanından her bir toplu işte getirilecek kayıt sayısı. Daha büyük bir değer ağ gidiş-dönüşlerini azaltır ve çıkarma performansını artırabilir. Not
fetchSize değeri 2048'den büyükse veri senkronizasyon sürecinde bellek yetersizliği (OOM) hatasına neden olabilir. |
Hayır |
512 |
Writer betik örneği
{
"type": "job",
"steps": [
{
"parameter": {},
"name": "Reader",
"category": "reader"
},
{
"parameter": {
"postSql": [],// The post-execution SQL statement.
"datasource": "test_004",// The name of the data source.
"column": [// The columns in the destination table.
"id",
"name",
"sex",
"salary",
"age"
],
"table": "public.person",// The name of the destination table.
"preSql": []// The pre-execution SQL statement.
},
"name": "Writer",
"category": "writer"
}
],
"version": "2.0",// The version number.
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
},
"setting": {
"errorLimit": {// The error record count.
"record": ""
},
"speed": {
"throttle":true,// Specifies whether to enable throttling. If you set this parameter to false, throttling is disabled and the mbps parameter does not take effect. If you set this parameter to true, throttling is enabled.
"concurrent":6, // The number of concurrent threads.
"mbps":"12"// The throttling rate.
}
}
}
Writer parametreleri
|
Parametre |
Açıklama |
Gerekli |
Varsayılan |
|
datasource |
DataWorks'te kayıtlı olan veri kaynağının adı. |
Evet |
Yok |
|
table |
Hedef tablonun adı. |
Evet |
Yok |
|
writeMode |
Yazma modu. Geçerli değerler: insert, copy ve upsert.
|
Hayır |
insert |
|
conflictMode |
writeMode değeri upsert olarak ayarlandığında ve PostgreSQL'e veri yazılırken birincil anahtar veya benzersiz dizin çakışması meydana geldiğinde aşağıdaki çakışma işleme ilkelerinden birini seçebilirsiniz:
Not
Çakışma işleme ilkesini yalnızca Kod Düzenleyici'de yapılandırabilirsiniz. |
Hayır |
replace |
|
column |
Veri yazılacak hedef sütunlar, virgülle (,) ayrılır. Örnek: |
Evet |
Yok |
|
preSql |
Senkronizasyon görevi başlamadan önce çalışan bir SQL ifadesi. Kodsuz UI tek bir ifadeyi destekler; Kod Düzenleyici ise eski verileri temizlemek gibi amaçlarla birden çok ifadeyi destekler. |
Hayır |
Yok |
|
postSql |
Senkronizasyon görevi tamamlandıktan sonra çalışan bir SQL ifadesi. Kodsuz UI tek bir ifadeyi destekler; Kod Düzenleyici ise zaman damgası eklemek gibi amaçlarla birden çok ifadeyi destekler. |
Hayır |
Yok |
|
batchSize |
Her bir toplu işte yazılacak kayıt sayısı. Daha büyük bir değer ağ gidiş-dönüşlerini azaltır ve aktarım hızını artırır ancak aşırı büyük bir değer OOM hatasına neden olabilir. |
Hayır |
1024 |