Upravljanje podacima

Migracija podataka – najbolje prakse

20/03/2018

Migracija podataka – najbolje prakse

Autorica: Ana-Marija Balen

Migracija podataka je proces prijenosa podataka između dva sustava, koji uključuje najmanje dvije baze podataka – izvorišni sustav i novo odredište. Na prvi pogled pojam migracije zvuči jednostavan. Mnogi poistovjećuju migraciju s replikacijom podataka, odnosno kopijom podataka jedan na jedan. No, migracija je u praksi mnogo kompleksnija jer se radi o prijenosu podataka iz jednog modela podataka u drugi, novi, drugačiji model uz mnoge dodatne zahtjeve i promjene nad podacima.

Kada dolazi do migracije podataka? Do migracije podataka može doći kada organizacija odluči unaprijediti svoje poslovanje prelaskom na noviju inačicu dosadašnjeg rješenja ili na potpuno novo rješenje (npr. ERP ili CRM sustava).

Prije no što migracija započne, bitno je napraviti detaljan plan. Plan bi trebao sadržavati organizaciju resursa koji će sudjelovati u projektu, strategiju, analizu podataka, dizajn rješenja, implementaciju, testiranje, održavanje, vremenski plan i cilj.

Postoje dvije različite vrste pristupa migraciji – Big bang migracija  i migracija u fazama. Oba pristupa imaju svoje prednosti i nedostatke, a organizacija sama mora odlučiti što je povoljnije, ovisno o podacima koje migriraju.

 

Big bang

Big bang pristup migrira cjelokupni set podataka odjednom i najčešće se takav proces odvija izvan radnog vremena poslovanja. Prednosti ovakvog pristupa su kraće vrijeme implementacije te niži troškovi. Također poslovanje se tada ne mora voditi paralelno u starom i novom sustavu. Nedostaci Big bang pristupa su podilaženje visokom riziku, testiranje tek nakon cjelokupne migracije te su mogućnosti pogrešaka učestalije.

Migracija u fazama

Pristup migraciji kroz faze ili tzv. iterativna migracija podrazumijeva prijenos podataka u manjim inkrementima sve dok se svi podaci ne prenesu u novi sustav. Ovakav pristup ima mnogo prednosti – sigurniji je u odnosu na prethodni pristup, češće se testiraju podaci i greške se mogu shodno tome i ispravljati. Zaposlenici se mogu lakše priviknuti na novi sustav, no mana je što se jedno vrijeme poslovanje odvija paralelno u novom i starom sustavu. Također, implementacija na ovaj način vremenski je puno duža, a učestale promjene u dizajnu rješenja mogu remetiti planirani proces migracije.

Organizacije najčešće kombiniraju oba pristupa, prilagođavaju ih vlastitom poslovanju i koriste ono najbolje od oba. Da bi migracija CRM ili ERP sustava bila što uspješnija proces treba biti agilan. Bitno je učestalo testiranje i mogućnost povratka na određeni korak te iterativno ponavljanje procesa.

Slika 1. Proces razvoja rješenja za migraciju podataka

Slika 1. Proces razvoja rješenja za migraciju podataka
  1. Planiranje

Prva faza bilo kojeg pristupa je svakako planiranje. Organizacija mora odrediti opseg podataka koji će biti cilj migracije. S obzirom da se ne moraju nužno svi podaci prenositi u novi sustav, potrebno je odrediti koji su podaci relevantni za poslovanje i koji podaci će eventualno u nekom trenutku u budućnosti zatrebati ili biti ključni u donošenju odluka. Nakon toga, potrebno je napraviti detaljan vremenski plan te odrediti koji zaposlenici će moći biti posvećeni migraciji i to ukalupiti u cjelokupno poslovanje. Uz sve to, potrebno je definirati i budžet jer su ovakvi projekti kompleksni i treba znati uspješno upravljati rizicima. Prosječan projekt migracije traje od šest mjeseci do dvije godine, stoga vremenski plan i rokovi moraju biti postavljeni realno, uzimajući u obzir i nepredviđene situacije. Bitna stavka u planiranju je i odabir prave tvrtke partnera za migraciju podataka te tehnologije u kojoj će migracija biti odrađena ovisno o poslovnom modelu organizacije.

  1. Razumijevanje podataka i analiza

Analiza izvorišnih i odredišnih sustava provodi se u suradnji s poslovnim korisnicima i vlasnicima podataka koji tada izravno utječu na proces migracije podataka. Identifikacija ključnih poslovnih korisnika je izuzetno bitna s obzirom da oni imaju detaljno znanje o poslovnim problemima i raznim slučajevima koje drugi ne mogu niti pretpostaviti. U suradnji s menadžmentom organizacije, poslovni korisnici donose zaključak koje podatke treba migrirati, odnosno koje podatke ne treba te koje je podatke potrebno transformirati i na koji način. Nakon što se opseg podataka znatno smanji potrebno je detaljno analizirati podatke, pronaći sve nepoznanice, probleme i realno rješenje za iste.

  1. Dizajniranje i razvoj

U fazi dizajniranja potrebno je detaljno razraditi specifikaciju mapiranja podataka s izvorišnog na ciljni sustav, a sve na temelju prethodne analize. U ovoj fazi razvijaju se razna pravila prijenosa podataka kako bi podaci pristajali ciljnom modelu podataka. Migracije podataka su mnogo efikasnije kada se podaci segmentiraju u inkremente. Tada se brže otkrivaju greške pri testiranju i pojednostavljuje se proces donošenja odluka oko promjena nad mapirajućom logikom, a također se i brže donose odluke oko postavljanja migracijskih podataka live u odredišni sustav.

Savjet pri razvoju mapiranja je korištenje ETL (eng. Extract, transform, load) alata umjesto ručnog kodiranja, a posebna je pogodnost ukoliko odabrani alat ima i mogućnost čišćenja podataka.

  1. Implementacija

Faza implementacije predstavlja proces dohvaćanja podataka iz izvorišnog sustava, primjena transformacija, čišćenja podataka i inkrementalni unos takvih podataka u novi, odredišni sustav koristeći pravila migracije i mapirajuću logiku. Pošto je proces migracije vrlo kompleksan, bitno je međusobno komunicirati, kako unutar organizacije, tako i s tvrtkom partnerom koja surađuje na implementaciji.

  1. Testiranje

Korak testiranja nije posljednji korak, iako je na zadnjem mjestu. Testiranje bi se trebalo vršiti na manjem skupu podataka nakon svakog razvijenog komada logike uz potvrdu ispravnosti. Na taj način  migracija će biti uspješnija i brže će se pronalaziti i rješavati problemi i greške. Učestalim testiranjem će se izbjeći nakupljanje problema do zadnjeg trena migracije. S obzirom da  se podaci mijenjaju tijekom cijele faze razvoja, potrebno je ugraditi mogućnost ponovljenog testiranja kako bi bili sigurni u ispravnost razvijene logike.

 

Nekoliko savjeta i dobrih praksi:

  • Ispravno definirati opseg podataka
  • Pažljivo profilirati podatke prije raspisivanja specifikacije mapiranja
  • Očistiti podatke prije unosa u novi sustav
  • Koristiti ETL alat kao preferiranu tehnologiju migracije, a ne ručno kodirati
  • Definirati realističan budžet i resurse
  • Rezervirati potrebno vrijeme za razvoj ciljnog modela podataka i mapirajuće logike
  • Definirati opseg testnih podataka i učestalo testirati
  • Projekt podijeliti u manje faze
  • Segmentirati podatke
  • Ne žuriti s pokretanjem novog sustava

 

 

Zaključak

Općenito, migracija podataka trebala bi biti pozitivna stvar za poslovanje organizacije, no treba znati pristupiti ispravno u samome početku. Migraciji se treba posvetiti velika pažnja, potrebno je ispravno organizirati dedicirane ljudske resurse, vrijeme i budžet. Osim poznavanja poslovnih procesa bitno je i vrhunski poznavati podatke te surađivati s tvrtkom partnerom koja ima iskustva u migracijama kako bi razvoj bio što uspješniji. Prelazak na noviji sustav veliki je napredak za organizaciju i samim time unaprijeđenje poslovanja, no također provođenje migracije idealan je trenutak za čišćenje i unificiranje podataka te povećanje kvalitete podataka. Razvijeno rješenje koje se koristi za migraciju podataka trebalo bi biti fleksibilno i skalabilno, a cijeli bi proces trebao biti ponovljiv. Ukoliko je tvrtka posvećena migraciji, slijedi navedene korake i najbolju praksu, nema straha od neuspjeha.