Tüm Ürünler
Search
Belge Merkezi

DataWorks:AnalyticDB for PostgreSQL veri kaynağı

Son Güncelleme:Oct 05, 2026

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.


Kategori


AnalyticDB for PostgreSQL türü


Tamsayı


BIGINT, BIGSERIAL, INTEGER, SMALLINT, SERIAL ve GEOMETRY


Kayan nokta


DOUBLE, PRECISION, MONEY, NUMERIC ve REAL


Dize


VARCHAR, CHAR, TEXT, BIT ve INET


Tarih ve saat


DATE, TIME ve TIMESTAMP


Boole


BOOL


İkili


BYTEA

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.


DataWorks veri türü


AnalyticDB for PostgreSQL türü


LONG


BIGINT, BIGSERIAL, INTEGER, SMALLINT ve SERIAL


DOUBLE


DOUBLE, PRECISION, MONEY, NUMERIC ve REAL


STRING


VARCHAR, CHAR, TEXT, BIT, INET ve GEOMETRY


DATE


DATE, TIME ve TIMESTAMP


BOOLEAN


BOOL


BYTES


BYTEA

Not

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

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.

  • Dışa aktarmak için bir alt küme seçebilirsiniz.

  • Sütunların sırasını değiştirebilirsiniz.

  • Sab değerleri yapılandırabilirsiniz. SQL sözdizimini takip etmeniz gerekir. Örnek: ["id", "table","1","'mingya.wmy'","'null'", "to_char(a+1)","2,3","true"].

    • id normal bir sütun adıdır.

    • table hem bir sütun adı hem de ayrılmış bir anahtar kelimedir.

    • 1 bir tamsayı sabitidir.

    • 'mingya.wmy' bir dize sabitidir. Değer tek tırnak işaretleri (') içine alınmalıdır.

    • 'null' bir dize sabitidir.

    • to_char(a+1) bir işlev ifadesidir.

    • 2,3 bir kayan noktalı sayıdır.

    • true bir boole değeridir.

  • column parametresi için senkronize edilecek sütunları açıkça belirtmeniz gerekir. Değer boş olamaz.

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.

  • Genellikle eşit dağıtılan ve veri sıcak noktalarını önlemeye yardımcı olan tablonun birincil anahtarını kullanmanızı öneririz.

  • splitPk parametresi yalnızca tamsayı sütunları için veri parçalamayı destekler. Dize, kayan nokta veya tarih gibi farklı bir veri türüne sahip bir sütun belirtirseniz Data Integration splitPk yapılandırmasını yok sayar ve verileri tek bir iş parçacığıyla senkronize eder.

  • splitPk parametresini yapılandırmazsanız veya boş bırakırsanız görev verileri tek bir iş parçacığı kullanarak senkronize eder.

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: id>2 and sex=1.

  • Artımlı senkronizasyon gerçekleştirmek için WHERE yan tümcesini kullanabilirsiniz.

  • Bir WHERE yan tümcesi belirtmezseniz bağlayıcı tüm tabloyu senkronize eder.

Hayır

Yok

querySql (gelişmiş; Kodsuz UI'da kullanılamaz)

Veri filtreleme için özel bir SQL sorgusu. where parametresi filtre koşullarınızı ifade edemediğinde bunun yerine bu parametreyi kullanın. Bu parametre yapılandırıldığında Data Integration column, table ve where parametrelerini yok sayar. Örnek: select a,b from table_a join table_b on table_a.id = table_b.id.

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.

  • insert: Verileri PostgreSQL'e yazmak için PostgreSQL INSERT INTO ... VALUES ... ifadesini yürütür. Bu mod önerilir.

  • copy: PostgreSQL, bir tablo ile bir dosya (standart giriş veya standart çıkış) arasında veri kopyalamak için COPY komutunu sağlar. Data Integration, verileri bir tabloya yüklemek için COPY FROM kullanımını destekler. Performansı artırmak için bu modu kullanın.

  • upsert: Yazma işlemi sırasında bir veri çakışması oluşursa sistem yeni ve mevcut verileri conflictMode parametresine göre işler.

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:

  • replace: Bir çakışma oluşursa gelen yeni veriler mevcut verilerin üzerine yazar.

  • ignore: Bir çakışma oluşursa bağlayıcı yeni verileri yok sayar ve mevcut verileri korur.

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: "column":["id","name","age"]. Tüm sütunlara sırayla yazmak için yıldız işareti () kullanın. Örnek: "column":[""].

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