330 likes | 438 Views
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser. Høgskolen i Gjøvik Master i Medieteknikk, 09.06.06 Marianne Brattrud. Bakgrunn. Stor utbredelse Distribuerte data Forskjell på hvordan XML-dokumenter og relasjonsdatabaser håndterer data
E N D
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser Høgskolen i Gjøvik Master i Medieteknikk, 09.06.06 Marianne Brattrud
Bakgrunn • Stor utbredelse • Distribuerte data • Forskjell på hvordan XML-dokumenter og relasjonsdatabaser håndterer data • Applikasjoner benyttes for å hente ut/sette inn data i databasen • Distribuerte systemer benytter XML-dokumentenes data i sine applikasjoner
Skjema Databaseskjema = Relasjonsmodellen • Definerer assosiasjoner mellom tabeller med rader og kolonner • Har støtte for støtte for definering og lagring av en rekke datatyper XML-skjema • Definerer en struktur av elementer og attributter • Støtte for datatyping både på attributt og elementnivå
Problembeskrivelse • Konseptuelle modellen er utgangspunktet for resten av systemet • Systemer designes for å løse enkeltproblemer • Statisk og dårlig rustet for å håndtere endringer • Fokus på systemer bestående av relasjonsdatabaser, lokale applikasjoner, datasentrerte XML-dokumenter og distribuerte applikasjoner
Problembeskrivelse • Benytter skjema for kontroll • Databaseskjema mot databasen • XML-skjema opp mot XML-dokumentene • Begge har utspring i EER-diagrammet (konseptuelle modellen) • Endringer i systemet kan derfor påvirke både databaseskjema og XML-skjema
Hvorfor endringer • Data skal lagers over tid • Systemet var dårlig i utgangspunktet • Det melder seg behov for nye tjenester • Det er ønskelig å lagre historikk • Systemet skal internasjonaliseres
Motivasjon • Utviklerne har flere hensyn å ta en å bare gjennomføre endringene • Planlegge for endringer som har store konsekvenser • Viktig for: • utviklere • driftere • brukere • investorer
Forskningsspørsmål • På hvilken måte kan de utvalgte skjemaendringene utføres med minst konsekvenser for: • applikasjonene? • fremover og bakover kompatibilitet? • funksjonaliteten til systemet? • Hvilke alternative måter har man for å håndtere disse endringene?
Forskningsspørsmål forts. • Hvor er det hensiktsmessig å utføre disse endringene med tanke på arbeidsmengde, funksjonalitet og ytelse? • I hvilken grad vil det være mulig og hensiktsmessig å planlegge for skjemaendringer i databaseskjema og XML-skjema så endringene lettere lar seg gjennomføre?
Metode • Litteraturstudier er viktig del • Eksperiment nødvendig på grunn av manglende litteratur deler av området • Kvalitativt studium
Eksperimentoppsett • KommuneGAB fra statens kartverk, databaseskjema og data • Applikasjoner som setter inn og henter ut data fra databasen • XML-dokument med hierarkisk struktur og XML-skjema • Hensikt å dokumentere konsekvensene som fremkommer etter endringene
Får konsekvenser både for databaseskjema, XML-skjema og for de faktorene som ble introdusert i forskningsspørsmålene. Endringen slett entitet
Endringen slett entitet Databaseskjema • Endres rett frem ved å slette alle fremmeddnøkler i andre tabeller og tilslutt fjerne tabellen kommune • Nødvendig med overlapp en periode • Alternativt opprette views i databasen • Med de nye tabellene som views • Med de gamle tabellene som views + eventuelle nye tabeller
Endringen slett entitet Databaseskjema
Endringen slett entitet XML-skjema • Det å slette et element vil påvirke den hierarkiske strukturen • Graden av strenghet på XML-skjema har stor betydning for om det eksisterende skjema skal modifiseres, eller om det skal benyttes to separate skjema
Endringen slett entitet Påvirkningsfaktorer • Kompatibiliteten må ivaretas • Eksisterende applikasjoner skal endres minst mulig • Funksjonaliteten må bevares • Om endringen antas å være varig eller ikke • Om det gjelder for både uthenting og innsetting av data i databasen
Endringen Endre navn entitet • Bygning erstatter Bolig i EER-modellen fordi dette navnet skal benyttes til et annet formål • Forplanter seg til XML-skjema og databasesskjema • Kan også spre seg til attributtene ettersom navnet bolig skal frigis, men dette går under endringen Endre navn Attributt
Endringen Slett Relasjon • Relasjonen mellom adresse og eiendom fjernes • Skaper konsekvenser for databaseskjema og XML-skjema • påvirker flere faktorer fra forskningsspørsmålene
Endringen Splitt Relasjon • Gjennomført ved å legge til nytt element Bydel i EER-diagrammet • Relativt store konsekvenser for databaseskjema og XML-skjema • Påvirker faktorene fra forskningsspørsmålene i stor grad
Konklusjon • Krav til skjemaendringer øker i takt med hvor lenge data skal være tilgjengelige • Klassifiseringen av endringer resulterte i 5 endringstyper • De viktigste faktorene er kompatibilitet og applikasjonsendringer, resten kommer inn etter dette er på plass • Alle endringene lar seg gjøre uten at det krever endringer i de distribuerte applikasjonene • De alternative metodene bidrar i stor grad
Konklusjon • Der alternative metoder for endringer er tilgjengelig, så må formålet analyseres før det kan sies noe om hvor det er hensiktsmessig å gjennomføre endringene • Bevist at det er mulig å gjennomføre på en effektiv måte uten å påvirke funksjonalitet og kompatibilitet. • Verktøyene XSLT og views er hendige hjelpemidler