download sample code
Beberapa waktu yang lalu saya mempelajari sesuatu yang sangat berharga dan bermanfaat dari seorang teman. Dia, kita sebut saja namanya Indra (nama sebenarnya, hehe), menunjukkan pada saya bagaimana caranya melihat transformasi data pada saat sebuah SSIS package dieksekusi dengan menggunakan Data Viewer.
Dahulu, sebelum tahu tentang Data Viewer saya selalu menggunakan cara yang melelahkan pada saat ingin melihat transformasi data. Pertama kali bekerja dengan SSIS saya melihatnya dengan menggunakan Script Component, lalu menampilkan data yang ingin saya lihat dengan library MessageBox. Masalah dengan MessageBox dan Script Component (dan ketidakkreatifan saya dalam menggunakannya) adalah bahwa saya harus membuat banyak Script Component di tempat-tempat transformasi yang ingin saya lihat dan MessageBox-nya muncul untuk setiap baris data yang ditransformasikan. Mungkin tidak akan menjadi masalah jika hanya 10 atau 20 baris data yang ditrasnformasi, tapi bayangkan jika ada satu juta baris data.
Lalu setelah beberapa lama kelelahan dengan MessageBox, saya mengenal library bawaan SSIS untuk menampilkan informasi di tab progress/execution result yaitu FireInformation. Library tersebut tetap dipanggil dari Script Component dan tidak semelelahkan MessageBox. Akan tetapi, hal yang saya pelajari dari FireInformation adalah bahwa penggunaannya dapat memperlambat proses transformasi.
Akhirnya saya bertemu teman saya itu dan mempelajari mengenai Data Viewer. Data Viewer menampilkan data diantara dua component yang terdapat di data flow dan dapat menampilkan data pada saat di-extract dari data source, sebelum dan sesudah sebuah transformasi, dan sebelum datanya di-load ke dalam destination.
Penggunaan data viewer untuk melihat data memudahkan kita untuk mengidentifikasi nilai data yang tidak diharapkan, melihat sebuah transformasi mengubah nilai pada sebuah column, dan menemukan alasan mengapa sebuah transformasi gagal.
Data Viewer dapat menampilkan data dalam bentuk grid, histogram, scatter plot atau column chart. Silakan lihat Books Online untuk keterangan lebih detil mengenai bentuk-bentuk Data Viewer. Pada tulisan ini, saya ingin menunjukkan bagaimana menggunakannya untuk melihat transformasi pada blog sebelumnya mengenai men-generate data di DimDate.
Pertama, buka package DimDate.dtsx pada project SampleDBETL lalu buka tab Data Flow.
Klik kanan pada anak panah yang menghubungkan Script Component dan OLE DB Destination lalu pilih Data Viewers...
Klik button Add...
Pilih Grid sebagai tipe Data Viewer pada tab General
Buka tab Grid, lalu pilih kolom mana saja yang ingin ditampilkan. Secara default, Semua kolom yang terdapat pada metadata akan ditampilkan. Klik pada nama column dan gunakan tombol > dan < untuk memilih column mana yang akan ditampilkan dan yang tidak. Klik OK untuk menutup dialog Data Viewer dan klik tombol OK sekali lagi untuk menutup dialog Data Flow Path Editor
Pada saat dieksekusi, panel Data Viewer akan tampil dan proses transformasi akan berhenti ketika mencapai Data Viewer yang kita pasang tadi. Transformasi akan dilanjutkan pada saat tombol
yang terdapat pada panel ditekan. Hal ini tentu memudahkan kita untuk melihat apakah datanya sudah sesuai dengan yang diinginkan atau belum.
