Azure Data Factory Hanya Insert Ketika Ada Row Terbaru

Oki Kuswanda
2 min readMar 30, 2022

Masalah:

ketika didatawarehouse terkadang kita buat suatu logic yang mana, hanya insert baris baru ketika ada data baru saja. logic ini digukan untuk data yang lama memang tidak ada perubahan.

Solusi:

didalam ADF / Azure Data Factory kita membuat beberapa data flow seperti dibawah ini:

disini ada beberapa task seperti: source staging, source dwh dimensi, select, lookup activity, derived column, conditional, dan sink (table destination).

pada Dimensi kita gunakan select untuk membuat alias pada table dimensi, seperti PLANT menjadi PLANT2. ini digunakan ketika diaktivitas Lookup.

Select1:

pada select dibuatkan seperti gambar dibawah ini:

Lookup1:

fungsi lookup digunakan untuk mencari dari sumber a ke sumber yg lain, fungsinya seperti VLOOKUP pada excel. untuk Lookup seperti gambar dibawah ini:

Derived Column:

Pada derivedcolumn ini digunakan untuk membuat kolom tambahan yang tidak ada disource. dengan membuat kolom Flag dengan isi ekspresi seperti dibawah ini:

iif(isNull(PLANT2),0,1)

Conditional NoMatch:

Pada conditional dengan penamaan NoMatch digunakan untuk apabila kolom Flag == 0 maka akan masuk ke Sink dengan gambar dibawah ini:

Sink Dimension Table:

Terakhir yaitu dengan table tujuan (sink) dengan gambar seperti dibawah ini. pada Sink yg perlu disampaikan adalah Mapping.

Penutup:

Dengan dibuatkan logic seperti diatas bahwa kita bisa melakukan insert row ketika ada data terbaru.

--

--