24.04.2013 Analītiķu vakariņu „minūtītes” : datu migrācija


24.aprīlī norisinājās tradicionālās Analītiķu vakariņas, šoreiz tēma – datu migrācija, par kuru stāstīja Valdis Prodnieks no Exigen Services Latvia. Prezentācija ir skatāma šeit http://www.slideshare.net/ksenijalace/datu-migrcija

Saruna izvērtās interesanta – jo, plānojot un veicot datu migrāciju, svarīgi aizdomāties par procesu kopumā. Tā kā problēmu parasti ir daudz, noder arī sajūta, ka arī citiem tā gadās… :-) Par to šīs manas piezīmes.

 Kāpēc veci dati jāmigrē?

  • Likumdošana pieprasa noteiktu glabāšanas laiku,
  • Ilgtermiņa līgumi, piemēram, kredīts uz 50 gadiem,
  • Uzņēmums grib ilggadēju vēsturi, piemēram, visu savākto statistiku par apdrošināšanas gadījumiem,
  • citi iemesli.

Tomēr – ja ir iespēja vecos datus nemigrēt, parasti nemigrē.

Mīti

(Valdis minēja vairākus, bet šie man īpaši patika – kaut kur tā kā dzirdēti…):

  • Mani dati ir kārtībā!
  • Man ir dokumentācija, kurā aprakstīts, kā dati jāvalidē!
  • Ja sistēma māk strādāt ar jaunajiem, gan jau mācēs arī ar vecajiem!

Piezīmes par pārrunāto, kas mani īpaši uzrunāja:

Datu migrācija ir tikai daļa no lielāka procesa – IS vai IS versijas maiņas, procesu maiņa, platformas maiņa, uzņēmuma īpašnieku un/vai kultūras maiņas u.tml. Datu migrācija pati par sevi nenes biznesa labumu un faktiski vēlme ir, lai pats process un dati pēc pārmigrēšanas nenestu pārāk lielus zaudējums. Triks: nevis migrācija, bet modernizācija.

Migrācija var būt tāds process, kuram otra mēģinājuma var nebūt. Nepietiek, ka datus var dabūt ārā no vecās sistēmas – ir jābūt jaunajai sistēmai, kura šos datus spēj paņemt pretī. Nav ieteicams migrēt uz tukšu vietu. Klausoties Valda pieredzi, domāju, ka dažas situācijas mazāk pieredzējušiem bukiem pat prātā neienāktu, piemēram, ka vecajā platformā skaitļus datubāzē glabā pretējā secībā (nevis 123,45, bet 54,321). Ja datu ir daudz, tad visticamāk, ka ielādēs pa porcijām, un jāplāno, vai un kā vecā sistēma spēs padot datus izmaiņu režīmā.

Viss sākas ar situācijas novērtēšanu – kādi dati ir un ko ar tiem domā tālāk darīt. Izvērtē situāciju un to, vai labot pirms vai pēc migrācijas. Datiem, kuru ietekme pēc migrācijas ir maza, neinvestē labošanas procesā. Dažreiz analīzes rezultātā atsakās no datu migrēšanas. Šie projekti reti kad notiek par cieto cenu, jo nav zināms, kas izlīdīs.

Bez klienta iesaistīšanās un bez biznesa zinātājiem migrācija nav iespējama. Ir veco datu tīrīšanas, kuras var veikt IT cilvēki un ir tīrīšanas, kuras var veikt tikai biznesa cilvēki. Svarīgi nodrošināt, lai nenoslogotu šos cilvēkus ar pretējiem jautājumiem. IT cilvēki, piemēram, risina to, ka senāk plaši lietoja hārdkodēšanu [un, tipiski, mazdokumentētu]. Jaunā pieeja ir konfigurējams parametrs. Migrējot – aijaijai, cik ņemšanās ir IT cilvēkiem. Biznesa cilvēki risina, piemēram, to, vai sen atpakaļ veidotas atļaujas, kurām nav aizpildīti numuri un derīguma termiņi, vispār ir uzskatāmas par derīgām.

Jārēķinās, ka:

  • ikvienā sistēmā vienmēr būs lietas, kuras neviens vairs nespēj izskaidrot, kāpēc ir tā kā ir,
  • migrācija vienmēr aizņems vairāk laika nekā plānots.

Pamatproblēma praktiski vienmēr ir: datu trūkst. Cēloņi – visdažādākie, sākot ar to, ka līgumiem, kurus slēdza 10 gadus atpakaļ, deklarēto adresi neprasīja, turpinot ar radošām pieejām problēmu risināšanai „a davai laukā „Vēlamā saziņas valoda” ierakstām adresi, jo šo lauku mēs tāpat neizmantojam, un beidzot ar kļūdām ievades programmā vai manuālām čaklo roku izmaiņām pašā datubāzē.

Dažreiz dara tā, ka jaunajā sistēma paredz citu apstrādi vecajiem datiem. Ja iespējams, vecajā sistēmā uzsāktiem procesiem ļauj nobeigties vecajā sistēmā. Ja ir iespējams, validāciju un tīrīšanu labāk veikt vecajā sistēmā.

Var lādēt pa tiešo jaunās datubāzes tabulās, var lādēt caur saskarnes API, imitējot lietotāja veiktu ievadi (ilgāks, bet jaunajiem datiem draudzīgāks).

Ja paralēli darbina veco un jauno sistēmu, par katru aspektu ir jābūt vienai galvenajai IS. Vienā brīdī būs jāpieņem lēmums, kuru izslēgt. Būtu labi, ja ir manevra iespējas.

Testēšana – nemaz necenšas visu notestēt, testē būtiskos biznesa scenārijus un datus, kurus visvairāk žēl zaudēt. Testējot visus, izmaksas par pēdējo % datu testēšanu būtu ārkārtīgi lielas. Nereti testēšana notiek uz anonimizētiem datiem.

Kāpēc mēs nerunājām par rīkiem? Tāpēc, ka to ir daudz, un rīks ir tikai rīks. Rīku darbina cilvēks, savukārt cilvēkam ir jāsaprot migrācijas būtība, mērķi un riski. Un vispār, rīki grib uzsēsties mums uz galvas, tāpēc būt pārlieku lojālam kādam rīkam ir kaitīgi.

Advertisements

Mans viedoklis:

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 / Mainīt )

Twitter picture

You are commenting using your Twitter account. Log Out / Mainīt )

Facebook photo

You are commenting using your Facebook account. Log Out / Mainīt )

Google+ photo

You are commenting using your Google+ account. Log Out / Mainīt )

Connecting to %s

%d bloggers like this: