Değişiklik Tabloları
Değişiklik tablolarındaki meta verileri kullanarak bilgi almak için hedef uç noktanızın araçlarını kullanabilirsiniz. Bu veriler, değişiklik tablosu şemasına eklenen başlık sütunları tarafından tanımlanır. Bu başlıklar aşağıdaki tabloda açıklanmıştır.
Çoğaltma görevindeki her hedef tablo için hedef tabloların bulunduğu veritabanında ilgili ada sahip bir değişiklik tablosu tutulur. Daha fazla bilgi için bk. Değişim Tabloları ile Çalışma. Bir değişiklik tablosu orijinal tablo sütunlarını ve başlık sütunlarını içerir. Başlık sütunları, adın kaynak tablo sütun adlarıyla çakışmaması için bir önek içerir. Varsayılan ön ek: header__
. Bu ön ekin nasıl değiştirileceği hakkında bilgi için Görev Ayarları'nda Meta Veriler altındaki Tabloları değiştir listesine bakın. Aşağıdaki tabloda varsayılan değişiklik tablosu başlık sütunları listelenmektedir.
Sütun Adı | Tür | Açıklama |
---|---|---|
varchar (35) |
Bir görevin tüm değişiklik tabloları için ortak olan ve monoton olarak artan bir değişiklik sıralayıcısı. Değişiklik sırası aşağıdaki formata sahiptir: YYYYMMDDHHmmSShhxxxxxxxxxxxxxxxxxxx Burada:
Zaman kısmı genellikle değişiklik kaydını içeren işlemin taahhüt zamanını ifade eder. Qlik Talend Data Integration sıra numarasının monotonluğunu koruyan mantık içerir, bu nedenle bitiş noktası zamanının değiştirilmesi veya ayarlanması, aynı zaman damgası içindeymiş gibi görünen ancak artan değişiklik sayısına sahip birden fazla değişiklikle sonuçlanabilir. xxx...xxx genellikle veri kaydındaki dahili değişiklik numarasıdır ancak ÖNCEKİ GÖRÜNTÜ kayıtları için eşleşen UPDATE kaydının değişiklik numarasıyla aynıdır (örneğin, ÖNCEKİ GÖRÜNTÜ'nün değişiklik numarası 1000 ve UPDATE'inki 1001 ise her ikisinde de 1001 vardır). Bu, tablo ile kendisi arasında basit bir sol-dış-birleştirmeye olanak tanır; solda zaman noktasına kadar tararız ancak |
|
|
varchar (1) |
İşlem türü. Bu aşağıdakilerden biri olabilir:
|
|
varbinary (128) |
Değişiklik maskesi, değişiklik tablosundaki hangi veri sütunlarının kaynak tabloda değişen sütunlarla ilişkili olduğunu gösterir. Değişim maskesindeki bit konumu, değişim tablosundaki sütun sıralamasına dayanır. Bu, 5 başlık sütunu varsa bunların 0 ila 4 bitlerini işgal ettiği ve ilk veri sütununun değişim maskesinde bit 5 olduğu anlamına gelir. Değişiklik maskesi, değişiklik maskesini little-endian düzeninde temsil eden ikili bir sütundur (bir bayt dizisi): Bayt 0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 Bayt 1 bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 Bu örnekte Aşağıda bit semantiği açıklanmaktadır:
Alan ve işlem verimliliği için, değişim maskesinde depolanan gerçek bayt sayısı sıfır kırpılabilir. Bu, sondaki sıfırların saklanmasına gerek olmadığı anlamına gelir. İşleme mantığı bunu dikkate almalıdır. |
|
varchar (128) |
Kaynak CDC akış konumu. |
|
varchar (12) |
Değişiklik kaydıyla ilişkili işlem. Aşağıdakilerden biri olabilir:
|
|
varchar (32) |
Değişiklik kaydının ait olduğu işlemin kimliği. Değer, 128 bitlik işlem kimliğinin onaltılık dizesidir. |
|
zaman damgası |
Orijinal değişiklik UTC zaman damgası (değer yaklaşık olabilir). Bilgi notu PostgreSQL kaynağı ile zaman damgası yalnızca işleme gerçekleştikten sonra öğrenilir. Bu nedenle, değişiklikler kaynak tablolara işlenene kadar varsayılan tarih görüntülenecektir (ör. 1970-01-01).
|
[header__] |
dize |
Veri Bölmesini Değiştir etkinleştirildiğinde hedefte oluşturulan bölmenin adı. Bölüm adı, bölüm başlangıç ve bitiş zamanından oluşur. Örnek: 20170313T123000_20170313T170000 |