Transformasi Joiner di Informatica dengan CONTOH

⚡ Ringkasan Cerdas

Transformasi penggabung (joiner) di Informatica adalah objek aktif dan terhubung yang menggabungkan dua sumber heterogen berdasarkan kondisi yang cocok, menyimpan pipeline utama dalam memori sementara pipeline detail mengalir melaluinya.

  • 🧩 Utama dan detail: Dua saluran input memberi makan transformasi, dan tab Port menentukan mana yang bertindak sebagai master.
  • 💾 Master telah di-cache: Pipeline utama selalu dibangun ke dalam indeks dan cache data, jadi sumber yang lebih kecil termasuk di sana.
  • 🔗 Empat jenis sambungan: Normal, Master Outer, Detail Outer, dan Full Outer menentukan baris mana yang tidak cocok yang akan tetap ada setelah penggabungan.
  • 🧪 Contoh yang dikerjakan: EMP dan DEPT digabungkan berdasarkan deptno dengan penggabungan normal dan dimuat ke dalam EMP_DEPTNAME.
  • ️ Kesetaraan semata: Kondisi penggabungan membandingkan port dengan operator sama dengan, dan kedua port harus memiliki satu tipe data yang sama.
  • ⚡ Input yang diurutkan: Pengurutan awal kedua pipeline pada port kondisi akan mengurangi input dan output disk selama sesi berlangsung.

Transformasi Joiner di Informatica

Apa itu Transformasi Joiner?

Transformasi Joiner adalah transformasi aktif dan terhubung yang memberi Anda opsi untuk membuat join di Informatica. Join yang dibuat menggunakan transformasi Joiner mirip dengan join dalam basis data. Keuntungan dari transformasi Joiner adalah join dapat dibuat untuk sistem heterogen (basis data yang berbeda).

Dalam transformasi Joiner, terdapat dua sumber yang akan kita gunakan untuk penggabungan. Kedua sumber ini disebut

  • Sumber Utama
  • Sumber Detil

Pada properti transformasi Joiner, Anda dapat memilih sumber data mana yang dapat menjadi sumber data utama dan sumber data mana yang dapat menjadi sumber data detail.

Selama eksekusi, sumber utama disimpan dalam memori untuk keperluan penggabungan. Oleh karena itu, disarankan untuk memilih sumber dengan jumlah record yang lebih sedikit sebagai sumber utama. Pipeline utama disimpan dalam dua cache: cache indeks untuk nilai-nilai yang digunakan dalam kondisi penggabungan dan cache data untuk sisa data baris.

Jenis-jenis Penggabungan dalam Transformasi Penggabung

Properti Tipe Gabungan pada tab Properti menentukan apa yang terjadi pada baris yang tidak ditemukan kecocokannya. Gabungan berikut dapat dibuat menggunakan transformasi Penggabung.

  1. Gabung luar master – Dalam operasi master outer join, semua data dari sumber detail dikembalikan oleh operasi join dan hanya baris yang cocok dari sumber master yang dikembalikan.
  2. Detail gabungan luar – Dalam detail outer join, hanya baris yang cocok yang dikembalikan dari sumber detail, dan semua baris dari sumber master dikembalikan.
  3. Gabung luar penuh – Dalam full outer join, semua data dari kedua sumber akan dikembalikan.
  4. Gabungan biasa – Pada operasi join normal, hanya baris yang cocok dari kedua sumber yang akan dikembalikan.

Penggabungan luar master dan penggabungan luar detail setara dengan penggabungan luar kiri dalam SQLMasing-masing menyimpan setiap baris dari satu sumber dan hanya kecocokan dari sumber lainnya. Tabel di bawah ini membandingkan keempat jenis tersebut dengan padanan SQL-nya.

Jenis gabungan Baris yang disimpan dari master Baris-baris yang dihilangkan dari detail Setara dengan SQL
Gabungan biasa Hanya mencocokkan Hanya mencocokkan Bergabung batin
Gabung luar master Hanya mencocokkan Semua baris Penggabungan luar kiri pada sumber detail
Detail gabungan luar Semua baris Hanya mencocokkan Penggabungan luar kiri pada sumber utama
Gabung luar penuh Semua baris Semua baris Gabung luar penuh

Tipe sambungan adalah sebuah properti, bukan pilihan struktural, sehingga dapat diubah nanti tanpa perlu membangun ulang peta.ping atau menghubungkan kembali port apa pun.

Cara Menggunakan Transformasi Joiner di Informatica

Dalam contoh ini, kita akan menggabungkan tabel emp dan dept menggunakan transformasi Joiner. Ikuti delapan langkah di bawah ini pada Map.ping Perancang.

Langkah 1) Buat tabel target baru EMP_DEPTNAME di dalam database menggunakan skrip di bawah ini dan impor tabel tersebut ke target Informatica.

Download File emp_deptname.sql di atas

Langkah 2) Buat yang baru petaping lalu impor tabel sumber “EMP” dan “DEPT” serta tabel target yang telah kita buat pada langkah sebelumnya. Ketiga definisi tersebut kini berada di kanvas, seperti yang ditunjukkan di bawah ini.

Lokasiping Kanvas perancang dengan sumber EMP dan DEPT serta definisi target EMP_DEPTNAME.

Langkah 3) Dari menu Transformasi, pilih opsi Buat. Kemudian di jendela Buat Transformasi yang ditunjukkan di bawah ini,

  1. Pilih transformasi joiner
  2. Masukkan nama transformasi “jnr_emp_dept”
  3. Pilih opsi buat

Buat jendela Transformasi dengan Joiner terpilih dan nama jnr_emp_dept dimasukkan.

Langkah 4) Seret dan lepas semua kolom dari keduanya Kualifikasi Sumber ke transformasi Joiner. Kedua pipeline sekarang terhubung ke jnr_emp_dept, seperti yang ditunjukkan pada tangkapan layar.

Kolom dari kedua Source Qualifier diseret ke dalam transformasi Joiner jnr_emp_dept.

Langkah 5) Double Klik pada transformasi Joiner, lalu di jendela Edit Transformations

  1. Pilih tab kondisi
  2. Klik ikon tambahkan kondisi baru
  3. Pilih deptno di daftar kolom master dan detail

Tab Kondisi sekarang hanya memuat satu kondisi penggabungan pada nomor departemen.

Tab Kondisi pada transformasi Tukang Gabung dengan nomor departemen yang dipilih pada kolom master dan detail.

Langkah 6) Kemudian di jendela yang sama

  1. Pilih tab properti
  2. Pilih Normal Join sebagai tipe penggabungan.
  3. Pilih tombol OK

Tab Properti dengan tipe sambungan yang telah diatur akan ditampilkan selanjutnya.

Tab Properti dari transformasi Joiner dengan tipe sambungan diatur ke Sambungan Normal.

Untuk optimasi kinerja, kami menetapkan sumber utama ke pipeline tabel sumber yang memiliki lebih sedikit data. Untuk melakukan tugas ini:

Langkah 7) Double Klik pada transformasi Joiner untuk membuka jendela Edit Transformations, lalu

  1. Pilih tab port
  2. Pilih kolom mana pun dari sumber tertentu yang ingin Anda jadikan master
  3. Pilih OK

Tab Port menandai pipeline yang dipilih sebagai master, seperti yang ditunjukkan di bawah ini.

Tab Port pada transformasi Joiner dengan flag master diatur terhadap satu pipeline sumber.

Langkah 8) Hubungkan kolom-kolom yang relevan dari transformasi Joiner ke tabel target. Peta tersebutping sekarang berjalan dari kedua sumber melalui penggabungan ke EMP_DEPTNAME.

Kolom yang digabungkan dihubungkan dari jnr_emp_dept ke tabel target EMP_DEPTNAME.

Sekarang simpan petanyaping dan jalankan setelah membuat Sidang ke alur kerja untuk itu. Penggabungan akan dibuat menggunakan Informatica Joiner, dan detail yang relevan akan diambil dari kedua tabel.

Sifat Transformasi Joiner

Tab Properti berisi lebih dari sekadar jenis penggabungan. Pengaturan di bawah ini mengontrol berapa banyak memori yang digunakan oleh penggabungan dan di mana file cache ditulis.

Pengaturan Apa yang dikendalikannya
Tipe Gabung Normal, Master Outer, Detail Outer, atau Full Outer. Menentukan baris mana yang tidak cocok yang akan dipertahankan.
Kondisi Bergabung Daftar pasangan port master-ke-detail dibandingkan dengan operator sama dengan. Beberapa kondisi digabungkan dengan operator AND.
Input yang Diurutkan Menyatakan bahwa kedua pipeline sudah tiba dalam keadaan terurut berdasarkan port kondisi, yang memungkinkan Layanan Integrasi meminimalkan input dan output disk.
Urutan Penyortiran Utama Urutan sortir data sumber utama, digunakan bersama dengan input yang sudah disortir.
Direktori Cache Direktori tempat file indeks dan cache data dibuat. Secara default, variabel proses yang digunakan adalah $PMCacheDir.
Ukuran Cache Data Penggabung Ukuran cache data yang menyimpan data baris utama. Nilai default adalah Otomatis, yang memungkinkan Layanan Integrasi untuk menentukan ukurannya.
Ukuran Cache Indeks Penggabung Ukuran cache indeks yang menyimpan nilai kondisi utama. Nilai default adalah Otomatis.
Lingkup Transformasi Menerapkan operasi join ke setiap transaksi, ke semua data yang masuk, atau ke cakupan tingkat baris.

Input yang sudah diurutkan adalah pengaturan yang sebaiknya diprioritaskan terlebih dahulu. Ketika kedua pipeline tiba dalam keadaan terurut berdasarkan port kondisi, Integration Service tidak perlu menyimpan seluruh sumber master sebelum pencocokan dimulai, yang merupakan prinsip yang sama yang diterapkan selama proses tersebut. penyempurnaan kinerja dari transformasi cache lainnya.

Aturan dan Batasan Transformasi Penggabung

Beberapa batasan hanya muncul saat petaping sudah divalidasi, jadi lebih murah untuk mengetahuinya sebelum port dihubungkan.

  • Kesetaraan semata. Kondisi gabungan membandingkan port dengan operator sama dengan. Operator perbandingan seperti lebih besar dari, kurang dari, atau tidak sama dengan tidak diterima dalam kondisi tersebut.
  • Pencocokan tipe data. Kedua port dalam suatu kondisi harus memiliki tipe data yang sama. Designer memvalidasi hal ini, sehingga kolom yang tidak cocok harus dikonversi terlebih dahulu, biasanya dalam transformasi Ekspresi.
  • Tidak ada strategi pembaruan di hulu. Transformasi Joiner tidak dapat digunakan ketika salah satu pipeline input berisi transformasi Update Strategy.
  • Tidak Ada Urutan Generator tepat di depannya. Menghubungkan Sebuah Urutan Generator Transformasi yang dilakukan tepat di hulu Joiner tidak didukung.
  • Caching tidak dapat dimatikan. Pipeline utama selalu di-cache, itulah sebabnya sumber yang lebih kecil berada di sisi utama dan mengapa ukuran cache penting pada operasi join yang besar.

Menggabungkan tiga sumber membutuhkan dua transformasi Joiner yang dirantai bersama, karena masing-masing menerima tepat satu pipeline master dan satu pipeline detail. Jika sumber kedua adalah tabel referensi kecil yang dibaca baris demi baris, maka... Transformasi pencarian Desainnya seringkali lebih sederhana.

Pertanyaan Umum Demo Slot

Dua. Setiap Joiner menerima satu pipeline master dan satu pipeline detail, jadi menggabungkan tiga sumber berarti menghubungkan dua di antaranya: output dari yang pertama menjadi input pipeline dari yang kedua. Secara umum, n sumber membutuhkan n minus satu.

Ketika kedua tabel berada dalam basis data relasional yang sama, Source Qualifier akan mendorong penggabungan tersebut ke basis data, sehingga menghindari caching sepenuhnya. Gunakan Joiner hanya ketika kedua sumber tersebut heterogen atau sudah berada dalam pipeline terpisah.

Cache indeks menyimpan nilai port master yang disebutkan dalam kondisi join, dan cache data menyimpan data baris master yang tersisa yang dikembalikan oleh join. Keduanya dibangun hanya dari pipeline master, tidak pernah dari pipeline detail.

Tidak. Nilai null di salah satu port akan menyebabkan kondisi gagal, persis seperti di SQL, sehingga baris-baris tersebut diperlakukan sebagai tidak cocok. Ganti nilai null dengan nilai default di hulu saat seharusnya digabungkan.

Ya. Tambahkan definisi sumber ke peta.ping dua kali sehingga terdapat dua saluran terpisah, kemudian masukkan satu ke sisi master dan satu ke sisi detail. Ini adalah cara umum untuk mengembalikan kolom manajer ke nama karyawan.

Ya, dan kasus heterogen itulah alasan utama mengapa transformasi ini ada. Pipeline file datar dan pipeline relasional bergabung pada port yang cocok seperti halnya dua tabel basis data, karena penggabungan terjadi di dalam Integration Service.

Asisten AI memprofilkan kedua sumber untuk menyarankan kunci gabungan kandidat, memperkirakan jumlah baris sehingga sisi yang lebih kecil dipilih sebagai master, dan menandai kolom yang miring atau memiliki banyak nilai null yang akan menyebabkan hasil set data menjadi terlalu besar. Penasihat berbasis pembelajaran mesin juga memberi peringkat opsi ukuran cache.

Copilot dengan cepat membuat draf SQL yang setara dan konversi tipe data, yang mempersingkat pekerjaan persiapan port. Copilot tidak dapat melihat ukuran cache atau jumlah baris Anda, jadi verifikasi setiap saran terhadap peta tersebut.ping sebelum menyimpannya.

Ringkaslah postingan ini dengan: