Fra statisk til interaktiv database
Med versjon ni av databasen DB2 introduserer IBM teknologi som hevdes å være den vesentligste forbedringen på 20 år.
Funksjoner i den nye utgaven av DB2 er utviklet i samarbeid med SAP, sier Jan Ankarstrand, databasespesialist i IBM.
Den nye versjonen er et resultat av fem års utvikling med mer enn 750 utviklere i åtte land. Som en følge har DB2 fått egen teknologi for å håndtere XML på lik linje med SQL-bearbeiding av relasjonsdataene.
Alle typer data
Ideen er at brukere skal kunne arbeide med alle typer data, ikke bare transaksjonsdata og binære data som eksempelvis et bilde. Bilder, dokumenter, lyd, video og web-sider skal være like naturlig som tekst og tall.
Det gir ifølge IBM brukere for første gang muligheten til simultan overføring av XML og relasjonsdata uavhengig av format, datamaskin og sted. Til bearbeiding benyttes Xquery som er en fremtidig standard definert av W3C (World Wide Web Consortium).
Den nye versjonen av databasen er tilpasset Linux, MS Windows Server og Unix. IBMs System I kan ikke benytte basen.
Kundene kan velge mellom to alternativer; DB2 9 og DB2 9 Express. DB2 9 er priset til rundt 5.000 dollar per prosessor i tjenestemaskinen, alternativt 165 dollar per bruker ved minimum 25 brukere for DB2 Express.
Knivet
Databaser har utviklet seg dramatisk siden IBM definerte sin hierarkiske database IMS i 1966. Den er effektiv i å finne data langt nede i hierarkiet, men er for statisk ved at det bare er en eier til underliggende data. Det betyr at data må finnes på samme måte hver gang.
Nettverksdatabasen som ble ansett som et betydelig fremskritt, tillot data å bli å bli lest fra to eiere. Men heller ikke nettverksdatabasen var fleksibel nok. Dermed fremsto neste utvikling, relasjonsdatabasen, som vinneren.
Larry Ellisson forsto betydningen og startet Oracle før han var ferdig med studiene.
Siden har IBM og Oracle knivet om å være størst på databaser. IBM har dominert, men Oracle har hatt hegemoniet innen større databaser administrert av datamaskinmiljøet Unix og etter hvert av Windows Server og Linux.
IBM har derfor hatt et behov for å markere seg. DB2 versjon ni skal skape ny interesse for teknologien. IBM har derfor tatt en rekke patenter. Databasen vil være tilgjengelig 28 juli og blir bare levert over nettet.
- Basen er på 500 MB, men overføringen går nå mye raskere, sier Jan Ankarstrand.
Lagring
Ifølge IBM har XML blitt lagret i databaser på to alternative måter. Den ene splitter dokumentet, lagrer dataene i tabeller og bygger en programvarestruktur (script) for å sette sammen XML-dokumentet ved bruk.
Det andre alternativet er å lagre XML-en som et binært objekt. Da må det foretas et sekvensielt søk i det binære objektet for å finne frem til dataene ved behov. I dette tilfelle kan for eksempel ikke et telefonnummer i dokumentet benyttes som en indeks.
IBM lagrer XML som en ny datatype på samme måte som andre typer data. Det er konsekvensen av det store utviklingsarbeidet. Dermed unngås den ekstra bearbeidingen som de alternative lagringsmåtene krever.
Ifølge Sean McCown i Infoworld består IBMs teknologi av en parallelliseringsfunksjon som gjør om dataene i dokumentet til en datastruktur som det kan spørres på.
Dette skal Ifølge IBM skje uten noen form for forsinkelse. Dermed skal IBM DB2 versjon ni være mellom to og ni ganger rasker til å håndtere forespørsler mot XML i forhold til MS SQL Server og Oracles database.
Sammenligningen er mot SQL Server 2000, ikke den nye SQL Server 2005 hvor Microsoft skal ha tilsvarende funksjonalitet.
Automatisere
I tillegg til XML-teknologien er det to andre viktige funksjoner i versjon ni, evnen til å komprimere dataene og automatisere databasefunksjoner som ellers krever de beste databaseekspertene.
- Databasen oppdager endringer i arbeidsmåte. Dermed endres optimaliseringsfunksjonen, for eksempel størrelsen på databufferne, forklarer Jan Ankarstrand.
Endringen kan være at brukerne ikke jobber mot databasen. Istedenfor skjer det en periodeavslutning. Da vil det være behov for store bufre hvor data leses direkte fremfor å søke dem i tabellen på platelagersystemene.
Komprimeringen foregår ved å studere strukturer og trekke ut gjentagende mønstre. Dette skjer på tabellnivå. Graden av komprimering er avhengig av dataene. Prøver har vist rundt 50 prosent.
For store databaser kan DB2 versjon ni partisjoneres, det vil si splittes i flere deler for økt sikkerhet og ytelse. Simultant støttes det IBM kaller Range Partitioning, Multi-dimensional Clustering og Hashing.
På sikkerhetssiden innføres det Labell Based Access Controll som gir mulighet til å definere dataelementer på en tabellrad som sensitive slik at bare brukere med sikkerhetsklarering får tilgang til disse.
Databaseadministratoren får en funksjon hvor alle sikkerhetsrettighetene samles slik at vedkommende får en oversikt over hvem som har adgang til hvilke deler av dataene i databasen. Også bedre gjenskapingsfunksjoner vil lette arbeidet med bygge opp databasen fra en sikkehetskopi.
For utviklere tilbys DB2 Developer Workbench som i tillegg til funksjonene generering, redigering, feilsøking og testing lar utviklerne gjøre tilsvarende for XML-forespørsler.