Luento 9
Multimediatietokannat, paikkatietokannat, oliorelaatiotietokannat

Multimediatietokannat

Tavallinen relaatiotietokanta pystyy tallentamaan vain hyvin yksinkertaisia tietotyyppejä, joilla pyritään kuvaamaan halutut asiat. Käytössä on lähinnä seuraavat tietotyypit:

Erikoisemman datan tallentaminen on tehtävä hyödyntäen:

Multimediadata aiheuttaa tietokannan talletuskyvylle ja ominaisuuksille aivan uusia vaatimuksia. Multimediatietokannan täytyy pystyä helposti tallettamaan kaikkia mahdollisia multimediadatan peruslajeja monessa eri formaatissa:

Multimediadokumentit ovat paljon suurempia kuin perinteisesti tietokantaan talletetut dokumentit eivätkä välttämättä sovellu ollenkaan tavalliseen relaatiotietokantaan talletettaviksi.

Video ja audio vaativat laitteistolta tietyn esitysnopeuden, jotta ihmisen aistit havaitsevat informaation. Eri mediatyypit täytyy esittää synkronoidusti ihmiselle (Esim. ääni ja kuva). Multimediatietokannalta vaaditaan seuraavia ominaisuuksia:

Multimediadata vaatii rinnalleen metadataa, johon koodataan informaatiota multimediadatasta ja sen informaatiosta.

Kyselyjen kohdistaminen multimediadataan on huomattavasti monimutkaisempaa kuin tavalliseen dataan.

Täytyy ottaa huomioon myös osittaiset hakuosumat. Perinteisessä tietokannassa vain tarkka osuma kelpasi. Osittainen osuma tarkoittaa, että vain joku ehdoista osuu tai että ehto täyttyy jossain mielessä melkein.

SQL99 pyrkii tukemaan oliopiirteitä ja multimediaa. Laajennettava tyyppijärjestelmä, jolla voidaan luoda uusia tyyppejä sisäänrakennetuista tyypeistä ja aiemmin luoduista. Perustyyppeihin kuuluu BLOB. Lisäksi tulossa muita multimediasuuntautuneita tietotyyppejä ja funktiokirjastoja.

Esimerkkejä

Paikkatietojärjestelmät (GIS)

Paikkatieto on paikkaan sidottua tietoa, joka koostuu:

Paikkatietojärjestelmä (geographical information system, GIS) on tietojärjestelmä, jolla voidaan käsitellä paikkatietoja. Järjestelmä on yleensä tietokantapohjainen.

Sijaintitiedot

Sijaintitiedot perustuvat yleensä digitaaliseen karttaan.

Paikkatietojärjestelmän rakentaminen on hankalaa. Onneksi löytyy valmiita GIS-tuotteita joita voidaan käyttää yhdessä tietokannan hallintajärjestelmien kanssa:

Ominaisuustiedot talletetaan tietokannanhallintajärjestelmään ja sijaintitiedosta huolehtii GIS-ohjelma. Tiedot kytketään yhteen yhteisten attribuuttien avulla.

Oliotietokannat

Oliotietokannat mahdollistavat monimutkaisia sisäkkäisiä ja dynaamisesti muuttuvia rakenteita

Tarjoavat kyselyjen tueksi mielivaltaisia ja monimutkaisia operaatioita, joita käyttäjät voivat itse määritellä (vrt. select SQL:ssä)

Mahdollistavat erityyppisten, usein yhdessä käsiteltävien olioiden tallentamisen fyysisesti lähelle toisiaan.

Milloin kannattaa käyttää oliotietokantaa?

Oliokäsitteitä

Jokaisella tietokantaan talletetulla oliolla on oma yksilöllinen tunniste (object identifier, OID).

Olion ominaisuuksia

Olioluokka

Kapselointi (encapsulation)

Kompleksit oliot

Laajennettavuus

Periytyminen (inheritance)

Syrjäyttäminen (override), kuormittaminen (overloading) ja myöhäinen (dynaaminen) sidonta (late binding)

Olio-relaatiomalli

Sybasen Adaptive server on ns. olio-relaatiotietokanta, joka tukee suoraan Java-kielen olioiden sijoittamista tietokantaan.

Lisätään tyontekijat tauluun uusi työntekija, jonka osoitteena on Java-luokan Osoite esiintymä.

INSERT INTO tyontekijat(ID, nimi, Osoite)
VALUES (1235, 'Kalle Kehveli',
new Osoite ('piilokuja 13', '11111 mörskäkylä', 'Suomi')

Lisätään tyontekijat-tauluun uusi työntekijä, jonka osoitteena on Java-luokasta Osoite perityn SuomOsoite-luokan esiintymä.

INSERT INTO tyontekijat (ID, nimi, osoite)
VALUES (1235, 'Ville Kehveli',
new SuomOsoite('Piilokuja 14', '11111 Mörskäkylä')

Etsitään työntekijät, joiden katuosoite on Piilokuja 14.

SELECT name
FROM tyontekijat
WHERE Osoite.katu = 'Piilokuja 14'

http://appro.mit.jyu.fi/2001/kevat/tietokannat/luennot/luento9/index.html
© Tommi Lahtonen ()<URL: http://www.iki.fi/hazor/>
24.08.2001 12:00:36