Migrasi oh Migrasi (again?!)

Annoying…itu biasanya kesan yang gw dapatkan setiap kali melakukan migrasi data, migrasi data dilakukan untuk memindahkan data dari satu mesin ke mesin yang lain. Migrasi data multivendor baru gw rasakan sejak kerja di Huawei. Huawei mendapatkan project besar-besaran untuk indosat dalam hal men-swap mesin HLR Alcatel, ada sekitar 40 an mesin Alcatel di seluruh Indonesia yang harus di swap.

Pekerjaan umumnya dilakukan mulai sore hari, sampe besok paginya. Yang membuat annoying adalah format file hasil keluaran dari tools huawei untuk meng-convert data dari format Alcatel tidak sempurna. Sebetulnya tidak ada masalah, namun seperti biasa…network di Indonesia lain daripada yang lain. Sehingga setiap kali migrasi harus dilakukan customize hasil convert sesuai request Indosat sebelum dimasukan pada mesin HLR Huawei. Nah, modifikasi ini biasanya dilakukan secara manual dengan bantuian ultraedit, dan sangat sangat merepotkan. Walaupun Regexp-nya ultraedit sangat bagus, tapi untuk menangani data subscriber yang berjumlah jutaan dengan kapasitas file sebesar lebih dari 1G sangat merepotkan. Memory laptop yang dibutuhkan sangat besar, dan Find-Replace sangat membuang-buang waktu. Umumnya, proses ini memakan waktu lbh dari 4 jam, itu pun kadang diakalin dengan membagi file besar tersebut menjadi beberapa bagian dan kemudian di modifikasi manual secara paralel menggunakan 2-3 laptop.

Gw tipikal orang yang gak suka dengan pekerjaan membosankan seperti itu. Pernah coba untuk menyampaikan ke pihak managemen bahwa kita membutuhkan solusi berupa tools baru yang bisa langsung convert secara otomatis tanpa perlu modifikasi manual, jadi langsung mendapatkan format huawei yang bisa langsung di import ke dalam mesin huawei. Namun ternyata pihak RnD memberikan responnya terlalu lama, karena malas harus melakukan proses modifikasi secara manual sedangkan pekerjaan migrasi bertumpuk-tumpuk (satu minggu 2 kali beruturut-turut tiap malam) maka dicoba untuk membuat program parsing sendiri. Proses kerjanya sederhana saja, prosedur modifikasi yang awalnya manual dituangkan dalam bentuk program. Jadi setelah tools convert huawei bekerja, tinggal jalanin program parsing ini untuk memodifikasi data sesuai yang kita inginkan. Ternyata hasilnya cukup baik, program parsing ini (normalize_hwout.rb) bisa memodifikasi semua parameter sesuai dengan prosedur dalam waktu kurang dari 15 menit. Meski belum sempurna (Non-object oriented alias masih struktural, belum ada threading, belum customize dengan file konfigurasi) namun dapat memudahkan pekerjaan migrasi, dan dapat mempersingkat total waktu yang dibutuhkan untuk migrasi data.

Saat pertama kali menyampaikan ide tentang program parsing ini, reaksi dari team leader tepat seperti yang gw kira sebelumnya “sebaiknya gunakan metode yang biasa aja walaupun lama” :D. Hal ini wajar dalam project, karena umumnya memang jauh lebih baik tidak mengambil resiko dengan mencoba metode baru. Harga satu kali migrasi bisa milyaran, dan apabila gagal karena ketahuan mencoba sesuatu yang diluar prosedur standar dari Head Quarter akan menjadi momok untuk disalahkan.

Beruntung saat migrasi tadi malam, ada engineer HQ (Head Quarter) yang berpikir worthed untuk dicoba, toh hasilnya telah terbukti sama. Dengan adanya backing argument dari dia yang memberikan jaminan kepada team leader akhirnya program parsing boleh digunakan, dan sangat beruntung tadi malam menggunakan program parsing karena proses import database ke mesin Alcatel memakan waktu lebih lama. Biasanya migrasi dilakukan terhadap mesin AIX IBM, namun tadi malam ternyata dilakukan terhadap mesin Sun dan proses import database oracle nya jauh lebih lama, total waktu nya 2x lipat mesin IBM. Sehingga total waktu import memakan 4 jam, gak kebayang klo menggunakan proses modifikasi manual ditambah proses import yang begitu lama udah pasti migrasi akan di fallback, alias gagal.

Well, si engineer dari HQ juga ternyata pernah menjadi developer di Alcatel sebelum bekerja di Huawei. Dia menggunakan beragam programming language diantaranya perl, CHILL (CCITT High Level Language), ANSI C/C++, dll. Cukup menyenangkan bisa ngobrol banyak dengan developer aplikasi telco, dan gw juga sempat memperkenalkan ruby sama dia :P.

Advertisements

One thought on “Migrasi oh Migrasi (again?!)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s