Tutorial Pengujian ETL

โšก Ringkasan Cerdas

Pengujian ETL memvalidasi bagaimana data mengalir dari sistem sumber melalui logika transformasi ke gudang data target, memastikan keakuratan, kelengkapan, dan keandalannya. Sumber daya ini menjelaskan tahapan proses, jenis pengujian, kategori bug umum, pendekatan otomatisasi, dan praktik terbaik praktis yang dibutuhkan oleh penguji pemula dan menengah.

  • ๐ŸŽฏ Definisi Pengujian ETL: Verifikasi integritas data di seluruh ExtracTahapan Transformasi dan Pemuatan antara sistem sumber dan sistem target.
  • ๐Ÿ” Tahapan Proses: Identifikasi sumber, peroleh data, terapkan logika bisnis dan pemodelan dimensional, kemudian bangun dan laporkan.
  • ๐Ÿงช Jenis Pengujian: Validasi produksi, sumber ke target, metadata, kelengkapan, akurasi, transformasi, dan pengujian bertahap.
  • ๐Ÿž Kategori Bug: Cacat pada UI, Analisis Nilai Batas, Pemartisian Kesetaraan, perhitungan, pemuatan, kondisi persaingan, dan kontrol versi.
  • ๐Ÿค– Fokus Otomatisasi: Alat-alat seperti Informatica dan skrip yang dibantu AI mengurangi upaya manual dan memperluas cakupan pengujian.
  • โœ… Praktik terbaik: Validasi transformasi, targetkan pengecualian, terapkan cakupan, dan konfirmasikan kerangka waktu pemuatan yang terukur.

Tutorial Pengujian ETL

Apa itu ETL?

ETL singkatan Extract-Transformasi-Beban, dan ini menjelaskan bagaimana data berpindah dari sistem sumber ke gudang data. Data tersebut adalah...tracData diambil dari basis data OLTP, diubah agar sesuai dengan skema gudang data, dan dimuat ke dalam basis data gudang. Banyak gudang data juga menggabungkan data dari sistem non-OLTP seperti file teks, aplikasi lama, dan spreadsheet.

Sebagai contoh, sebuah toko ritel mungkin memiliki departemen-departemen terpisah seperti penjualan, pemasaran, dan logistik. Setiap departemen menangani informasi pelanggan secara independen, dan cara masing-masing departemen menyimpan data tersebut berbeda. Departemen penjualan mungkin menyimpan catatan berdasarkan nama pelanggan, sementara departemen pemasaran menggunakan ID pelanggan.

Jika tim bisnis ingin meninjau riwayat pembelian lengkap pelanggan di berbagai kampanye pemasaran, data yang terpisah-pisah membuat hal itu sangat melelahkan. Solusinya adalah menggunakan... datawarehouse Untuk menyimpan informasi dari berbagai sumber dalam struktur yang seragam menggunakan ETL. ETL dapat mengubah kumpulan data yang berbeda menjadi struktur yang terpadu, sehingga alat BI nantinya dapat menghasilkan wawasan dan laporan yang bermakna.

Diagram berikut menunjukkan alur proses Pengujian ETL dan konsep inti yang akan Anda gunakan sepanjang panduan ini:

Extract-Transformasi-Beban

1) Contohtract

  • Extracdata relevan dari satu atau lebih sistem sumber.

2) Transformasi

  • Ubah data ke format DW (Data Warehouse).
  • Membangun kunci: kunci adalah satu atau lebih atribut data yang secara unik mengidentifikasi suatu entitas. Berbagai macam jenis kunci Kunci-kunci tersebut meliputi primary key, alternate key, foreign key, composite key, dan surrogate key. Data warehouse memiliki kunci-kunci ini dan tidak pernah mengizinkan entitas lain untuk menugaskannya.
  • Pembersihan data: setelah data diekstraksitracSetelah itu, proses berlanjut ke fase pembersihan dan penyesuaian. Pembersihan memperbaiki kekurangan dan mengidentifikasi kesalahan. Penyesuaian menyelesaikan konflik antara kumpulan data yang tidak kompatibel sehingga dapat digunakan dalam gudang data perusahaan. Sistem ini juga membuat metadata yang membantu mendiagnosis masalah sistem sumber dan meningkatkan kualitas data.

3) Beban

  • Muat data ke dalam DW (Gudang Data).
  • Membangun agregat: agregat meringkas dan menyimpan data dari suatu sumber. tabel fakta untuk meningkatkan kinerja kueri pengguna akhir.

Apa itu Pengujian ETL?

Pengujian ETL dilakukan untuk memastikan bahwa data yang dimuat dari sumber ke tujuan, setelah transformasi bisnis, akurat. Pengujian ini juga melibatkan verifikasi data di berbagai tahap perantara antara sumber dan tujuan. Karena ETL merupakan singkatan dari Execution, maka ETL adalah proses yang melibatkan verifikasi data di berbagai tahap perantara antara sumber dan tujuan.tracPengujian ETL (Transform-Load) mencakup ketiga tahapan ini dan titik-titik di mana data berpindah di antara tahapan tersebut.

Pengujian ETL

Mengapa Pengujian ETL Penting?

Setelah Anda memahami apa itu Pengujian ETL, pertanyaan selanjutnya adalah mengapa organisasi menginvestasikan begitu banyak upaya ke dalamnya. Keputusan bisnis bergantung pada data yang benar, lengkap, dan dapat dipercaya, sehingga satu kesalahan transformasi saja dapat berdampak pada laporan keuangan, analisis pelanggan, dan pengungkapan peraturan.

Poin-poin berikut menjelaskan nilai praktis dari pengujian ETL yang kuat:

  • Akurasi data: Hal ini menegaskan bahwa nilai-nilai yang diubah oleh aturan bisnis sesuai dengan peta yang didokumentasikan.ping spesifikasi, mencegah korupsi diam-diam.
  • Pelaporan yang dapat diandalkan: Dasbor dan alat BI bergantung pada gudang data, sehingga pipeline ETL yang terverifikasi melindungi setiap laporan dan KPI hilir.
  • Kepatuhan terhadap peraturan: Industri seperti perbankan, perawatan kesehatan, dan asuransi harus membuktikan bahwa asal usul dan integritas data terjaga dari ujung ke ujung.
  • Pengurangan pengerjaan ulang: Mendeteksi kerusakan di lingkungan produksi tingkat rendah menghindari biaya tambahan untuk pengisian ulang produksi, rekonsiliasi manual, dan kesalahan yang dihadapi pelanggan.
  • Jaminan kinerja: Pengujian ETL mengukur jendela pemuatan, throughput, dan hambatan sehingga gudang data terus berkembang seiring bertambahnya volume data.

Dengan motivasi yang jelas ini, bagian selanjutnya akan membahas proses terstruktur yang diikuti oleh penguji ETL dalam proyek nyata.

Proses Pengujian ETL

Sama seperti proses pengujian lainnya, ETL juga melalui berbagai fase. Fase-fase berbeda dari proses Pengujian ETL adalah sebagai berikut:

Proses Pengujian ETL

Pengujian ETL dilakukan dalam lima tahap:

  1. Mengidentifikasi sumber data dan persyaratan
  2. Data akuisisi
  3. Menerapkan logika bisnis dan pemodelan dimensional.
  4. Membangun dan mengisi data
  5. Membangun laporan

Proses Pengujian ETL

Dengan memahami proses tingkat tinggi tersebut, mari kita lihat jenis-jenis pengujian spesifik yang sesuai dalam siklus hidup ini.

Jenis Pengujian ETL

  1. Pengujian Validasi Produksi
    Proses Pengujian: Disebut juga โ€œpenyeimbangan tabelโ€ atau โ€œrekonsiliasi produksi,โ€ jenis pengujian ETL ini dilakukan pada data saat data tersebut masuk ke sistem produksi. Untuk mendukung keputusan bisnis, data produksi harus dalam urutan yang benar. Informatika Opsi Validasi Data menyediakan otomatisasi pengujian ETL dan kemampuan manajemen sehingga sistem produksi tidak terganggu oleh data yang buruk.
  2. Sumber ke Target Pengujian (Pengujian Validasi)
    Proses Pengujian: Jenis pengujian ini memvalidasi apakah nilai data yang ditransformasikan sesuai dengan nilai target yang diharapkan.
  3. Aplikasi Upgrades
    Proses Pengujian: Jenis pengujian ETL ini dapat dihasilkan secara otomatis, sehingga menghemat waktu pengembangan pengujian secara signifikan. Pengujian ini memeriksa apakah data yang dieksportracData yang diambil dari aplikasi atau repositori lama cocok dengan data di aplikasi atau repositori baru.
  4. Pengujian Metadata
    Proses Pengujian: Pengujian metadata mencakup pemeriksaan tipe data, pemeriksaan panjang data, dan pemeriksaan indeks atau batasan.
  5. Pengujian Kelengkapan Data
    Proses Pengujian: Pengujian kelengkapan data memverifikasi bahwa semua data yang diharapkan dimuat dari sumber ke target. Tes umum meliputi membandingkan dan memvalidasi jumlah catatan, agregat, dan data aktual antara kolom sumber dan target ketika transformasi sederhana atau tidak ada.
  6. Pengujian Akurasi Data
    Proses Pengujian: Pengujian ini memastikan bahwa data dimuat dan ditransformasikan secara akurat sesuai harapan.
  7. Pengujian Transformasi Data
    Proses Pengujian: Pengujian transformasi data seringkali tidak dapat dicapai hanya dengan satu sumber. SQL kueri dan perbandingan output. Beberapa kueri SQL mungkin diperlukan untuk setiap baris guna memverifikasi aturan transformasi.
  8. Pengujian Kualitas Data
    Proses Pengujian:

    Pengujian kualitas data meliputi pengujian sintaksis dan pengujian referensi. Pengujian ini mencegah kesalahan proses bisnis yang disebabkan oleh tanggal atau nomor pesanan yang salah.

    Pengujian sintaks melaporkan data yang tidak akurat berdasarkan karakter yang tidak valid, pola karakter, dan urutan huruf besar atau kecil yang salah.

    Tes referensi memeriksa data terhadap model data. Misalnya: ID Pelanggan.

    Pengujian kualitas data juga mencakup pengecekan angka, pengecekan tanggal, pengecekan presisi, pengecekan data, dan pengecekan nilai kosong.

  9. Pengujian ETL Inkremental
    Proses Pengujian: Pengujian ini memeriksa integritas data lama dan data baru dengan penambahan data baru. Pengujian inkremental memverifikasi bahwa penyisipan dan pembaruan diproses sesuai harapan selama proses ETL inkremental.
  10. Pengujian GUI/Navigasi
    Proses Pengujian: Pengujian ini memeriksa navigasi dan aspek GUI dari laporan front-end.

Cara Membuat Kasus Uji ETL

Pengujian ETL adalah konsep yang dapat diterapkan pada berbagai alat dan basis data dalam industri manajemen informasi. Tujuan dari Pengujian ETL adalah untuk memastikan bahwa data yang dimuat dari sumber ke tujuan setelah transformasi bisnis adalah akurat. Hal ini juga mencakup verifikasi data di berbagai tahapan perantara antara sumber dan tujuan.

Saat melakukan pengujian ETL, dua dokumen selalu digunakan oleh penguji ETL:

  1. Peta ETLping lembaran: Peta ETLping Lembar kerja berisi semua informasi tabel sumber dan tujuan, termasuk setiap kolom dan pencariannya di tabel referensi. Penguji ETL harus terbiasa dengan kueri SQL karena Pengujian ETL mungkin melibatkan penulisan kueri besar dengan banyak join untuk memvalidasi data di setiap tahap. Peta ETLping Lembar kerja memberikan bantuan yang signifikan saat menulis kueri untuk verifikasi data.
  2. Skema basis data sumber dan target: Sebaiknya peta ini selalu disimpan agar mudah digunakan untuk memverifikasi detail apa pun yang ada di peta.ping seprai.

Skenario Uji ETL dan Kasus Uji

  1. Lokasiping validasi dokumen
    Kasus Uji: Verifikasi apakah informasi ETL yang sesuai tersedia di dalam peta.ping Dokumen. Catatan perubahan harus dipelihara di setiap peta.ping doc
  2. Pengesahan
    Kasus Uji:

    1) Validasi struktur tabel sumber dan target terhadap peta yang sesuai.ping doc
    2) Tipe data sumber dan tipe data target harus sama.
    3) Panjang tipe data di sumber dan target harus sama.
    4) Pastikan tipe dan format kolom data telah ditentukan.
    5) Panjang tipe data sumber tidak boleh kurang dari panjang tipe data target.
    6) Verifikasi nama kolom dalam tabel dengan petaping doc

  3. Validasi Kendala
    Kasus Uji: Pastikan batasan (constraints) telah didefinisikan untuk tabel tertentu sesuai yang diharapkan.
  4. Masalah konsistensi data
    Kasus Uji:

    1) Tipe data dan panjang untuk atribut tertentu dapat bervariasi di berbagai file atau tabel, bahkan ketika definisi semantiknya sama.
    2) Penyalahgunaan batasan integritas.

  5. Masalah Kelengkapan
    Kasus Uji:

    1) Pastikan semua data yang diharapkan telah dimuat ke dalam tabel target.
    2) Bandingkan jumlah rekaman antara sumber dan target.
    3) Periksa apakah ada catatan yang ditolak.
    4) Periksa apakah data tidak terpotong di kolom tabel target.
    5) Periksa analisis nilai batas.
    6) Bandingkan nilai unik dari kolom-kolom kunci antara data yang dimuat ke dalam gudang data dan data sumber.

  6. Masalah Kebenaran
    Kasus Uji:

    1) Data yang salah eja atau dicatat secara tidak akurat.
    2) Data null, tidak unik, atau di luar rentang.

  7. Transformasi
    Kasus Uji: Validasi bahwa setiap aturan bisnis dan logika transformasi ada di dalam peta.ping Dokumen diterapkan dengan benar ke data sumber sebelum sampai ke target.
  8. Kualitas Data
    Kasus Uji:

    1) Pemeriksaan angka: memvalidasi format dan nilai numerik.
    2) Pemeriksaan tanggal: tanggal harus mengikuti format yang sama dan konsisten di seluruh catatan.
    3) Pemeriksaan presisi.
    4) Pemeriksaan data.
    5) Pemeriksaan null.

  9. Validasi Nol
    Kasus Uji: Verifikasi nilai null di mana โ€œTidak Nullโ€ ditentukan untuk kolom tertentu.
  10. Pemeriksaan Duplikat
    Kasus Uji:

    1) Validasi kunci unik, kunci utama, dan kolom lain yang harus unik sesuai persyaratan bisnis untuk memastikan tidak ada baris duplikat.
    2) Periksa apakah ada nilai duplikat di kolom mana pun, misalnyatracDiambil dari beberapa kolom sumber dan digabungkan menjadi satu kolom.
    3) Sesuai persyaratan klien, pastikan tidak ada duplikat dalam kombinasi beberapa kolom di dalam target.

  11. Validasi Tanggal
    Kasus Uji: Nilai tanggal digunakan di banyak area pengembangan ETL:

    1) Untuk mengetahui tanggal pembuatan baris.
    2) Mengidentifikasi active records dari perspektif pengembangan ETL.
    3) Mengidentifikasi catatan aktif dari perspektif persyaratan bisnis.
    4) Terkadang, berdasarkan nilai tanggal, pembaruan dan penyisipan akan dihasilkan.

  12. Validasi Data Lengkap
    Kasus Uji:

    1) Validasi seluruh kumpulan data pada tabel sumber dan target menggunakan kueri minus sebagai solusi terbaik.
    2) Anda perlu melakukan perhitungan sumber dikurangi target dan target dikurangi sumber.
    3) Jika kueri pengurangan mengembalikan nilai apa pun, baris-baris tersebut harus dianggap tidak cocok.
    4) Cocokkan baris antara sumber dan target menggunakan pernyataan intersect.
    5) Jumlah yang dikembalikan oleh intersect harus sesuai dengan jumlah masing-masing tabel sumber dan tabel target.
    6) Jika kueri pengurangan mengembalikan baris dan jumlah irisan kurang dari jumlah sumber atau target, berarti ada baris duplikat.

  13. Kebersihan Data
    Kasus Uji: Kolom yang tidak diperlukan harus dihapus sebelum dimuat ke staging area.

Jenis Bug ETL

Meskipun dengan kasus uji yang kuat, pipeline ETL dapat gagal dengan berbagai cara. Gambar di bawah ini merangkum kategori bug yang harus Anda perhatikan, dan tabel berikut menjelaskan masing-masing kategori tersebut.

Jenis Bug ETL

Jenis Bug Uraian Teknis
Bug antarmuka pengguna/bug kosmetik โ€ข Terkait dengan GUI aplikasi
โ€ข Gaya huruf, ukuran huruf, warna, perataan, kesalahan ejaan, navigasi, dan sebagainya.
Bug terkait Analisis Nilai Batas (BVA). โ€ข Nilai minimum dan maksimum
Bug terkait Partisi Kelas Ekivalensi (ECP). โ€ข Tipe yang valid dan tidak valid
Bug Masukan/Keluaran โ€ข Nilai yang valid tidak diterima
โ€ข Nilai tidak valid diterima
Bug perhitungan โ€ข Kesalahan matematika
โ€ข Hasil akhir salah
Bug Kondisi Beban โ€ข Tidak mengizinkan banyak pengguna
โ€ข Tidak mengizinkan beban yang diharapkan pelanggan
Bug Kondisi Balapan โ€ข Sistem mengalami kerusakan dan macet
โ€ข Sistem tidak dapat menjalankan platform klien
Bug kontrol versi โ€ข Tidak ada logo yang cocok
โ€ข Tidak ada informasi versi yang tersedia
โ€ข Biasanya terjadi pada Pengujian Regresi
bug H/W โ€ข Perangkat tidak merespons aplikasi
Bug Sumber Bantuan โ€ข Kesalahan dalam dokumen bantuan

Pengujian Gudang Data

Pengujian Gudang Data Pengujian gudang data adalah metode pengujian di mana data di dalam gudang data diuji integritas, keandalan, akurasi, dan konsistensinya agar sesuai dengan kerangka kerja data perusahaan. Tujuan utama pengujian gudang data adalah untuk memastikan bahwa data terintegrasi di dalam gudang cukup andal bagi perusahaan untuk mengambil keputusan. Sementara Pengujian ETL berfokus pada pergerakan data, Pengujian Gudang Data mencakup lapisan penyimpanan dan pelaporan yang lebih luas yang pada akhirnya diumpankan oleh ETL.

Perbedaan antara Pengujian Basis Data dan Pengujian ETL

Meskipun kedua disiplin ilmu ini bekerja dengan data terstruktur, keduanya menjawab pertanyaan yang berbeda. Tabel di bawah ini menyoroti perbedaan praktisnya:

Pengujian ETL Pengujian Basis Data
Memverifikasi apakah data dipindahkan sesuai harapan. Tujuan utamanya adalah untuk memeriksa apakah data tersebut mengikuti aturan dan standar yang telah ditetapkan dalam model data.
Memverifikasi apakah jumlah dalam sumber dan target cocok, dan bahwa data yang ditransformasikan sesuai dengan yang diharapkan. Memverifikasi bahwa tidak ada catatan yatim piatu dan bahwa hubungan kunci utama asing dipertahankan.
Memverifikasi bahwa relasi primary key asing dipertahankan selama proses ETL. Memverifikasi bahwa tidak ada tabel yang berlebihan dan bahwa basis data dinormalisasi secara optimal.
Memverifikasi adanya duplikasi dalam data yang dimuat. Memverifikasi apakah data hilang di kolom yang membutuhkannya.

Pengujian Kinerja di ETL

Pengujian Kinerja di ETL ETL adalah teknik pengujian yang memastikan sistem ETL dapat menangani beban banyak pengguna dan transaksi. Tujuan utama ETL adalah... Pengujian Kinerja Tujuannya adalah untuk mengoptimalkan dan meningkatkan kinerja sesi dengan mengidentifikasi dan menghilangkan hambatan kinerja. Basis data sumber dan target, pemetaanpings, sesi, dan sistem itu sendiri semuanya dapat mengandung hambatan.

Salah satu alat terbaik yang digunakan untuk Pengujian dan Penyetelan Kinerja adalah Informatica.

Tanggung jawab Penguji ETL

Tanggung jawab utama seorang penguji ETL terbagi menjadi tiga kategori:

  • Meja panggung / SFS atau MFS
  • Logika transformasi bisnis diterapkan
  • Target Pemuatan tabel dari file sementara atau tabel setelah menerapkan transformasi.

Beberapa tanggung jawab sehari-hari seorang penguji ETL meliputi:

  • Uji perangkat lunak ETL
  • Komponen pengujian gudang data ETL
  • Jalankan pengujian berbasis data di sisi backend.
  • Membuat, mendesain, dan mengeksekusi. kasus uji, rencana pengujian, dan perlengkapan pengujian
  • Mengidentifikasi masalah dan memberikan solusi untuk potensi masalah.
  • Menyetujui persyaratan dan spesifikasi desain
  • Validasi transfer data dan uji file teks biasa.
  • Tulis kueri SQL untuk berbagai skenario seperti pengujian penghitungan.

Otomatisasi Pengujian ETL

Metodologi umum pengujian ETL adalah menggunakan skrip SQL atau pengamatan visual data. Pendekatan ini memakan waktu, rawan kesalahan, dan jarang memberikan hasil yang lengkap. cakupan tesUntuk mempercepat pelaksanaan, meningkatkan cakupan, mengurangi biaya, dan meningkatkan kinerja. cacat Dalam hal deteksi di lingkungan produksi dan pengembangan, otomatisasi sangat dibutuhkan saat ini. Salah satu alat tersebut adalah Informatica.

Tim modern juga memadukan otomatisasi tradisional dengan bantuan AI yang menyarankan pengujian transformasi, menghasilkan data sumber sintetis, dan menandai penyimpangan skema, sehingga penguji dapat fokus pada logika bisnis yang kompleks daripada pemeliharaan skrip yang berulang.

Praktik Terbaik untuk Pengujian ETL

  1. Pastikan data diubah dengan benar.
  2. Tanpa kehilangan atau pemotongan data apa pun, data yang diproyeksikan harus dimuat ke dalam gudang data.
  3. Pastikan aplikasi ETL menolak data yang tidak valid dengan tepat, menggantinya dengan nilai default jika memungkinkan, dan melaporkannya.
  4. Konfirmasikan bahwa data dimuat ke dalam gudang data dalam jangka waktu yang ditentukan dan diharapkan untuk memvalidasi skalabilitas dan kinerja.
  5. Semua metode harus memiliki pengujian unit yang sesuai terlepas dari visibilitasnya.
  6. Untuk mengukur efektivitasnya, semua pengujian unit harus menggunakan teknik cakupan yang tepat.
  7. Usahakan agar setiap kasus uji memiliki satu pernyataan.
  8. membuat tes unit yang menargetkan pengecualian.

Periksa - Pertanyaan & Jawaban Wawancara Pengujian ETL

Pertanyaan Umum Demo Slot

ETL mentransformasi data sebelum memuatnya ke dalam gudang data, sedangkan ELT memuat data mentah terlebih dahulu dan mentransformasinya di dalam target. ELT cocok untuk gudang data berbasis cloud dengan komputasi elastis, sedangkan ETL cocok untuk pipeline terstruktur di lingkungan on-premise.

Tantangan umum meliputi volume data yang besar, perubahan skema yang sering terjadi, data uji yang hilang, aturan bisnis yang tidak terdokumentasi, transformasi yang kompleks, dan kendala kinerja. Peta yang kuatping Dokumentasi, otomatisasi, dan kueri validasi yang dapat digunakan kembali secara signifikan mengurangi risiko-risiko ini.

Alat populer termasuk Informatika Opsi Validasi Data, QuerySurge, Talend, IBM InfoSphere DataStage, dan utilitas sumber terbuka seperti dbt tests. Pilihan yang tepat bergantung pada platform gudang data, anggaran, dan kedalaman otomatisasi yang dibutuhkan.

AI meningkatkan pengujian ETL dengan mendeteksi anomali, memprediksi pergeseran skema, menghasilkan data sumber sintetis, dan merekomendasikan celah cakupan. Model pembelajaran mesin juga dapat membuat profil data produksi dan mengusulkan aturan validasi yang mungkin terlewatkan oleh manusia.

Ya. Asisten AI dapat membaca peta.ping Dokumen tersebut dapat menyimpulkan aturan transformasi dan menghasilkan skrip validasi SQL secara otomatis. Penguji tetap meninjau kasus yang dihasilkan untuk memastikan keakuratan bisnis, tetapi waktu pembuatan seringkali turun dari beberapa jam menjadi beberapa menit untuk pemeriksaan berulang.

Ringkaslah postingan ini dengan: