Friday, August 7, 2009

How answering the mobile phone has changed our life inconveniently.

In the conventional household phone, there is a handle and the number pad body. To answer a call, logically we just pick up the handle.

How we perform the same on mobile phone? Most (not all) of the mobile on the market now requires you to press the green answer key button. If you pass your phone to an old folk and tell them that to answer the phone, they need to press this specific button. They have this confuse looked on the phone because they need to carefully search where the green button is. And sometime, the buttons on the phone are so close, they have to carefully press just to make sure they don't press the wrong one.

That's the word I want to highlight. Searching for the green button and carefully press it just to answer the phone, is making us life inconvienently (for some may not; for me it is).

I used a slide phone by the way. I have changed the answering method by slide the phone up to answer and slide back to close a call. No button search and I don't even have to button color check or carefully press it just to make sure I'm pressing the right one. Although it's not convienent as pick up the handle as in household phone but it's close.

PS: Perhaps the phone manufacture should make mobile phone able to detect when the phone is press againts the ear. This will means answering the call. A phone like that will really amaze me.

Wednesday, August 5, 2009

Huge Volume Migration

This is my second migration project. The first project, I have involved by writing a package to import approximately 100K record for each 8 tables. It took around 6 hours to complete the migration. This includes maintaining the table relation, generate new record id number and data validation. The strategy we (including my colleague) used is bulk collect.

For this current migration project, the volume now reached to 6 milion records for each 19 tables. Using bulk collect here is not going to be efficient anymore. Data needs to be import into the table fast. Furthermore, the system is live (no down time) along with the migration is going on. In the end, we all come down to a solution is by import the data straight in the system table using oracle utilities, sqlldr.

Well, the advantage we gain is speed. Nevertheless, there are couple of points to note.
  1. Data extract must be in perfect integrity - This is because no new sequence will be used or generate any record id. Therefore, this responsible is given to the team who provide the data. Record id start number will have to send to the data extract team for them to organize the data.
  2. Record ID sequence might have a gap - Unfortunately, the system still in live when the migration going on and record id will keep increasing. Therefore, future record id has to be reserved for migration data extract. There are possible risk on hitting duplicate record id where it can bring the migration process down.
  3. Data extract must be in validated and cleaned state - No clean up or validation can be done since the data are pump straight into the database. This will caused garbage in and garbage out if there are any garbage.
Finally, I'll put my finger cross on migration day.