1. April 25, 2013 www.ExigenServices.com
DATU MIGRトCIJA PRAKSト:
PIEEJAS UN PROBLト樽AS
Valdis Prodnieks,
valdis.prodnieks@exigenservices.com
2. KトPト辰 JトMIGRト? GALVENIE IEMESLI
ナajト lekcijト runト)am tikai par biznesa IT sistト杜ト[
Biznesa motivト鍍as pト〉maiナas:
ぉ Uzナト杜uma daトシu standartizト…ija / uzナト杜umu pト〉pirkナ。ana
ぉ Standartproduktu ievieナ。ana / atteikナ。anト《 no standartproduktiem
ぉ Biznesa procesu izmaiナas
Tehniski motivト鍍as pト〉maiナas:
ぉ Izmaiナas piegト‥ト》ト)a dト篤シ
窶 Vecト《 versijas vairs netiek uzturト鍍as vai kトシナォst nepieナemama cenu politika
窶 piegト‥ト》ト)s var bankrotト鍍 vai tikt nopirkts
ぉ Tehniskト《 infrastruktナォras optimizト…ija
3. 3 www.ExigenServices.com
REASONS FOR MODERNIZATION
Motivating factors:
ぉ Reductions in IT budget
ぉ Requirements to reduce licensing costs
ぉ Requirements to reduce the high maintenance costs of legacy systems
ぉ Changes in regulatory environments
ぉ Discontinuation of vendor support
ぉ Shrinking IT labor pool
ぉ Mergers and acquisitions
ぉ Requirements for quick time-to-market when implementing new features
ぉ Improve productivity
ぉ Launch of new products and services
ぉ IT infrastructure expansion
ぉ Growth in workloads, data volumes, and document processing
requirements
4. 4 www.ExigenServices.com
MODERNIZATION PROCESS
ASSESS TRANSFORM MANAGE
Assessment of the Existing IT
Infrastructure
Analysis of the Total Cost of
Ownership and ROI
Risk analysis
Transformation Planning
Infrastructure and
Application Design
Migration Services
System monitoring,
management, and
support, including
performance tuning and
security audits
5. DATU MIGRトCIJA IR TIKAI DAトサA ...
Citas migrト屠amト《 daトシas var bナォt, piemト途am:
ぉ Biznesa aplikト…ijas un pieejas
ぉ Biznesa procesi
ぉ Operト鍍ト)sistト杜a
ぉ Programmト毒。anas valodas
ぉ Datu bト】es vadトォbas sistト杜as (ne visas bija / ir / bナォs relト…iju DB)
ぉ Arhitektナォras modelis (piem. Servisorientト鍍a arhitektナォra)
ぉ Aparatナォra (sava, トォrト鍍a vai mト〔onトォ)
ぉ Daナセト‥u veidu ツォmiddlewareツサ, piemト途am,
窶 Biznesa procesu vadトォbas sistト杜as (BPMS)
窶 Back office automatizト…ija (job scheduler, JCL)
窶 Ziナapmaiナas sistト杜as (piemト途am Apache MQ)
窶 . . .
6. SITUトCIJAS NOVト坦Tト椎ANA PIRMS PROJEKTA
Saprast veco un jauno biznesa procesu, to atbilstトォbu
Jaunト / vecト datu vト〉dnトォca
ぉ Vai tト‥u vispト〉 iespト屠ams iegナォt?
ぉ Vai eksistト 窶歪ross-references窶?
ぉ Vai ir zinト[as nepiecieナ。amト《 datu validト…ijas?
ぉ Ko darトォt, ja viss ir konfigurト屠ams?
Vai biznesa loト」ika vecajト aplikト…ijト ir saprotama?
7. MIGRト谷AMIE DATI
ぉ Datu bト】es
窶 Ne visas datu bト】es bija / ir / bナォs relト…iju DB
ぉ Datnes
窶 Ne visas datnes ir tik vienkト〉ナ。as kト teksta faili
ぉ Citi dati
Par maz ir tikai nomigrト鍍 tabulas / datnes. Pト田 migrト…ijas biznesa
procesam, kas sト〔ts vecajト aplikト…ijト, jト」ar korekti nobeigties
jaunajト aplikト…ijト.
8. IZAICINトJUMI
Bieナセi datu migrト…ijai tiek patト途ト鍍s vairト〔 resursu, nekト plト]ots
sト〔umト. Galvenト《 problト杜as visos gadトォjumos ir lトォdzトォgas, bet
projekta sト〔umト datu トォpaナ。nieks parasti nepiekrトォt, ka tト《 ir nozトォmトォgas.
Datu migrト…ijas projekti var bナォt ar トシoti daナセト‥u riska pakト}i.
Smagト〔ajos gadトォjumos datu migrト…ijas projekts var bナォt lトォdzトォgs
duelim 窶 otra mト篤」inト)uma var arトォ nebナォt. Daナセreiz ar radoナ。ト[
tehniskト[ innovト…ijト[ var darトォt brトォnumus. Reizト杜 ir vト途ts jau
projekta sト〔umト pierunト》 klientu uz kompromisiem (atteikties no
daトシas datu migrト…ijas vai labot tos jau pト田 migrト…ijas).
9. PROBLト樽AS UN RECEPTES
ぉ Datu nepietiek vai tie ir sliktト kvalitト》ト
窶 Plト]ojiet datu validト…iju / tトォrトォナ。anu / papildinトナ。anu
ぉ Dati jト(elト‥ト un jト}ト〉bauda トシoti ト》ri (piemト途am, nedト篤シas nogalト)
窶 Plト]ojiet veikt migrト…iju pirms laika, tad regulト〉i migrト鍍 tikai ツォdeltasツサ
ぉ Grナォti droナ。i notestト鍍 migrト鍍os datus, bet kトシナォdas var bナォt
uzナト杜umam kritiskas
窶 Paralト斗s abu sistト杜u darbs pト〉ejas laikト.
ぉ Mト途トキa dati ir strukturト鍍i savト‥ト〔. Jaunト platforma neatbalsta
vecト《 datu piekトシuves metodes
窶 Gatavas receptes visiem gadトォjumiem var arトォ nebナォt. Esiet radoナ。i.
10. 10 www.ExigenServices.com
DATA MIGRATION: MAINFRAME SPECIFIC
Issues Ways to reduce risk
EBCDIC->ASCII, big/small Endian:
窶「special arithmetic data types
窶「sorting problems
Use specialized data conversion tools.
Consider these problems by application
design
Mainframe data access methods not available
on new platform
Be creative, 1:1 redesign might not be
optimal
Data cleansing often underestimated Start data cleansing very early. Separate
technical cleansing. Involve SMEs early.
You can not completely isolate data migration
form overall design issues
Use iterative (or even agile) process
Centralized versus distributed Use proven design patterns for new
design, use old design as checklist
Normalized versus flat, performance issues Do not over-normalize. Use smart
mapping techniques for migration.
SYSTEM REENGINEERING
11. DATU VALIDトCIJA
ぉ Datus var lト‥ト鍍 vai nu tieナ。i tabulト《 / datnト都 (ETL Pieeja)
ぉ Vai caur aplikト…ija API (imitト屠ot ievadi caur aplikト…iju)
窶 ナis ceトシナ。 ir ilgト〔s, bet nodroナ。ina droナ。ト〔u validト…iju.
Migrト屠ot jト]odroナ。ina, ka jaunト aplikト…ija varト都 pastrト‥ト》 ar
iemigrト鍍ajiem datiem. Tト}ト田 visi migrト屠amie dati jト}akトシauj iespト屠ami
pilnai validト…ijai.
ぉ Ne vienmト途 mト都 zinト[ visus validト…ijas likumus. Tie var bナォt jト}ト鍍a.
ぉ Tas var prasトォt lielト〔u vai mazト〔u programmト毒。anu. Eksistト arトォ gatavi rトォki ナ。ト‥am
nolナォkam.
ぉ Kad datu kトシナォdas ir atrastas, tト《 ir jト〕abo 窶 automト》iski vai ar roku. Process
jト》urpina tik ilgi, kamト途 validト…ijas kritト途iji ir apmierinト》i.
12. DATU TトェRトェナANA / PAPILDINトナANA
ぉ Izdaliet atseviナ。トキi tehnisko tトォrトォナ。anu
窶 Tehnisko tトォrトォナ。anu var veikt IT personト〕s
窶 Pト〉ト屠o var tikai biznesa cilvト徒i (SME)
ぉ Tトォriet datus cik agri vien var
窶 Vislabト〔 aplikト…ijト, no kuras jト[igrト
窶 Var bナォt speciト〕as ツォtトォrトォtavasツサ starp jauno un veco aplikト…iju
窶 Nekritiskas kトシナォdas var vienoties atstト》 tトォrトォナ。anai jaunajト aplikト…ijト.
ぉ Rト篤キinieties ar to, ka uz daudziem jautト)umiem neviens nevarト都
atbildト鍍, ja vecajai aplikト…ijai ir 10 gadi vai vairト〔
窶 Dati satur daudzas pト電as 窶 par bijuナ。ajiem biznesa procesiem, kト‥reizト屠ト[
kトシナォdト[, aizmirstiem programmト鍍ト)u trikiem u.t.t.
Datu problト杜as pト田 migrト…ijas nedrトォkst radトォt uzナト杜umam pト〉ト〔
lielus zaudト屠umus. Tト《 nedrトォkst paralizト鍍 jauno aplikト…iju.
13. DATU TRANSFORMト椎ANA
Reizト杜 tas ir dabiski un viegli, reizト杜 ne visai.
Piemト途s 1:
ぉ Vecajト aplikト…ijト produktu definトォcijas ir hardkodト鍍as
ぉ Jaunト aplikト…ija izmanto standarta no treナ。ト《 partijas nopirktu rトォku produktu
definト毒。anai.
Piemト途s 2:
ぉ Vecajト aplikト…ijト datu validト…ijas ir hardkodト鍍as
ぉ Jaunト aplikト…ija validト…ijト[ izmanto BRE (business rule engine)
Plト]ojot projektu, jト}lト]o datu pト〉veidojumi (data mapping). Ar to
parasti nodarbojas biznesa analトォtiトキi, pト〉svarト klienta cilvト徒i (SME), ar
IT cilvト徒u atblastu.
14. PARALト鱈S ABU SISTト樽U DARBS
ぉ Par katru aspektu vienai no sistト杜ト[ jト|ナォt noteicト屠ai (master)
窶 Otrト sistト杜ト ナ。o datu izmaiナas vト斗ams aizbloトキト鍍
窶 Jト〉ada sinhronizト…ijas mehト]isms
窶 Jト(zstrト‥ト ツォrezerves izpletnisツサ
ぉ Var bナォt grナォti savilkt kopト datus no abト[ sistト杜ト[
窶 Varbナォt tam jト》aisa treナ。ト sistト杜a.
ぉ Lietotト)iem jト《trト‥ト ar 2 aplikト…ijト[ vienlaicトォgi
窶 Pieaug treniナu un atbalsta izmaksas,
窶 Pト〉ejas laikト zema darba efektivitト》e
Paralト斗a 2 sistト杜u ekspluatト…ija rada papildus droナ。トォbu bet arトォ
ievト途ojamas papildus izmaksas.
15. LIELS DATU APJOMS
Var gadトォties, ka vajadzトォgu datu apjomu nemaz nevar ielト‥ト鍍
vajadzトォgajト laika intervト〕ト. Tad migrト…ija jト「zsト〔 ト》rト〔, kombinト屠ot
窶話ig bang窶 un pakト}eniskト《 migrト…ijas metodi.
ぉ Nofiksト kト‥u vecト《 sistト杜as stト」okli un pakト}eniski to ielト‥ト, lai
cik tas laika arトォ prasトォtu.
ぉ Nト〔oナ。ト《 izmaiナas migrト kト 窶tikai izmaiナas窶
窶 Vecai aplikト…ijai jト|ナォt spト屠トォgai ナ。トォs izmaiナas iedot
窶 Jaunajai aplikト…ijai jト|ナォt spト屠トォigai ナ。トォs izmaiナas paナemt
ナトォ pieeja atrisina ト》ruma problト杜u bet rada papildus izmaksas.
Vト斗 grナォtト〔 ir tad, ja veco aplikト…iju vispト〉 nedrトォkst apturト鍍.
16. DATU MIGRトCIJAS TESTト椎ANA
ぉ Vislabト〔 testト鍍 ar reト〕iem datiem, bet, iespト屠ams, ka dati bナォs
jト‖nonimizト
窶 Neatkarトォgi, vai to programmト paナ。i vai izmanto rトォkus, tas nozトォmト papildus
laiku un izmaksas
ぉ Ar migrト鍍ajiem datiem jト》estト bナォtiskie biznesa scenト〉iji.
ぉ Jト》estト arトォ veiktspト屠a gan migrト…ijas procesam, gan arトォ mト途トキa
aplikト…ijai ar pietiekoナ。i daudz nomigrト鍍iem datiem.
17. MトェTI
ぉ Mani dati ir kト〉tトォbト, tie nav jト〕abo
ぉ Atrastト《 datu kトシナォdas var viegli izlabot
ぉ Es zinu, kト jト」alidト dati
ぉ Dati viegli, dabiski transformト屠as no vienas sistト杜as otrト
ぉ Funkcionalitト》e, kas strト‥ト ar dabトォgi ievadトォtiem datiem, gan jau
strト‥ト《 arトォ ar migrト鍍iem datiem
18. DATU MIGRトCIJA Kト BIZNESS
ナis nav viegls bizness IT kompト]ijai, jo parasti nevar iztikt bez klienta
biznesa zinト》ト)iem (SME).
Parastai kompト]ijai, kam nepiecieナ。ama migrト…ija, arトォ tas tipiski nav
viegls pasト〔ums, jo trナォkst zinトナ。anu par tipiskト[ problト杜ト[, kas
sagaida.
Daナセas IT kompト]ijas pト〉dod rトォkus, kas var bナォt noderトォgi datu
migrト…ijai.
ぉ Izvト斗oties ナ。ト‥us rトォkus, kritiski jト(zsver, vai ieguldトォjums tieナ。ト[ atmaksト《ies
ぉ Daナセas ツォdatu specifiskasツサrトォku funkcijas:
窶 Datu maskト毒。ana
窶 Datu vト〉dnトォcas
窶 Datu transformト…ija (mapping)
19. SトKOT PROJEKTU
Ieteikums 窶 samazinト》 datu migrト…ijas apjomu, cik iespト屠ams
(nelaidiet dナセinu ト〉ト no pudeles!). Daナセas idejas:
ぉ Tikai jaunam biznesam izmantot jauno aplikト…iju, lai 窶vecais bizness窶 dabトォgi
izbeidzas vecajト aplikト…ijト.
ぉ Nelabot datu kトシナォdas, kurト[ nav pietiekoナ。i sliktas ietekmes
Izvairieties no 窶話ig bang窶 scenト〉ijiem, cik iespト屠ams. Ja tas nav
iespト屠ams, paredziet pietiekoナ。u laiku / apjomu. Strト‥ト)iet ar klientu,
lai atrunト》u viナu no 窶湾aナ。nト」nieciskiem scenト〉ijiem窶.
Bieナセi kompト]ijas ir izsvieduナ。as simtiem tナォkstoナ。u analトォzei un pト田 tam
atteikuナ。ト《 no jaunu aplikト…iju ievieナ。anas, jo migrト…ija ir par riskantu.
Editor's Notes
#4: Modernization is an expensive and risky action. There are several different motivating factors, they could be contradictoryDifferent stakeholders with different interestsThe success of modernization project can not be measured by one measurable indicator, but different and contradictory ones. To find what is the result we would like to achieve, the right balance between goals / factors / success indicators should be defined and agreed
#5: The process to stay in control being impacted by not complete understanding of situation in begin of project / requirements / interests / ACCESS 窶 improve initial understanding of situation TRANSFORM 窶 plan and implement changesMANAGE (transformation project)窶 identify troubles, react on changing situationMANAGE (system) 窶 just phase after system is implemented