Arvo (value) Taulun sarakkeessa esiintyvä yksittäinen arvo, esim. luku 5.

Koko: px
Aloita esitys sivulta:

Download "Arvo (value) Taulun sarakkeessa esiintyvä yksittäinen arvo, esim. luku 5."

Transkriptio

1 Page 1 of 14 Tulostuspäivä: Liite 4 Termit Alikäsite (sub-entity, supertype) Pääkäsitteen sisällä oleva käsite, joka perii pääkäsitteen tiedot ja yhteydet. Alikäsitteellä voi lisäksi olla omia tietoja ja yhteyksiä. Alikäsitteen sisällä voi olla toisia alikäsitteitä. Vrt. aliluokka, erikoistaminen, yleistäminen, yliluokka. Aliluokka (sub class) Yleistyksen yhteydessä yleisemmän luokan aliluokka eli siis erikoistus. Vrt. alikäsite, erikoistaminen, yleistäminen, yliluokka. Allas (pool) Ks. tietokantapuskuriallas. ANSI (American National Standards Institute) Arvo (value) Taulun sarakkeessa esiintyvä yksittäinen arvo, esim. luku 5. Arvojoukko (domain) Sarakekohtainen sallittujen arvojen joukko. Voidaan määritellä CREATE TABLE -lauseessa tai joissakin tuotteissa erillisellä CREATE DOMAIN - lauseella. Assosiaatio (association) Yhteys kahden käsitteen (luokan) välillä. Assosiatiivinen käsite (associative entity) Moni-moneen-yhteydestä syntynyt käsite. Attribuutti (attribute) 1. Relaatiomallissa otsake, joka ilmaisee arvon merkityksen relaation monikossa; relaatiotietokantatuotteissa tauluissa on vastaavana terminä sarake. 2. Käsiteanalyysissä tarkoittaa käsitteen tietoa. 3. Luokan osa, joka sisältää arvon. Avainehdokas (candidate key) Taulusarake, jonka arvon tulee olla yksilöivä. Avaineheys (entity integrity) Coddin relaatiomallin eheyssääntö, jonka mukaan taulun perusavaimen arvo on pakollinen, eikä siis saa puuttua. Hoidetaan NOT NULL - määreellä CREATE TABLE -lauseessa. Avaimen täydellisyys (entity integrity) Ks. avaineheys. Bittikarttaindeksi (bitmap index) Tavanomaisen b-puun sijasta indeksoidun sarakkeen tiedoista syntyy bittijono kutakin erilaista arvoa varten. Soveltuu sarakkeille, joissa on kohtuullisen vähän erilaisia arvoja - edellyttäen, että tauluun tulee harvoin lisäyksiä, päivityksiä ja poistoja. Nopeita tietynlaisissa monimuotoisissa kyselyissä, sopivat siksi tietovarastokantoihin. Ei kaikissa relaatiokannoissa.

2 Page 2 of 14 BOM (Bill of Materials, tuoterakenne) Käsitemallin rakenne, jossa on käsitteen monimoneen-yhteys itseensä purettuna moni-moneen-käsitteeksi. Relaatiokannassa isätaulu sekä lapsitaulu, josta on kaksi viiteavainta isätauluun. B-puu (B-tree) Yleisin indeksityyppi, johon kopioidaan aakkos- tai numerojärjestyksessä yksi tai useampia sarakkeita (yleensä) yhdestä taulusta. Alimmalta lehtisivutasolta on osoitin kuhunkin tauluriviin. Lehtisivutasolle on vielä oma indeksipuunsa, jonka ylintä tasoa kutsutaan juurisivuksi. BT-predikaatti (Boolean Term predicate, BT predicate) Jos predikaatin perusteella voidaan hylätä rivi, predikaatti on BT, muutoin non-bt. Non-BT-predikaatit voivat tehdä WHERE-lausekkeen liian vaikeaksi optimointiohjelmalle: saantipolku ei ole paras mahdollinen. Jos WHERE-lausekkeessa ei ole yhtään OR-operaattoria, kaikki predikaatit ovat BT. CASE (Computer Aided Software Engineering) CASE-ohjelmistoilla voidaan laatia käsitemalli kuvauksineen sekä generoida siitä halutun tietokantajärjestelmän taulujen ja indeksien perustamiskäskyt. CPU-jonoaika Ohjelma joutuu odottamaan, sillä korkeammalla prioreettitasolla toimivat ohjelmat ovat varanneet kaikki suorittimet. Data mart Yhdestä operatiivisesta järjestelmästä poimittu "pienempi" tietovarasto, suomeksi käytetty termejä paikallisvarasto, alitietovarasto ja otoskanta. Usein aihealuekohtainen tai organisaatio-yksikkö-kohtainen (esim. osastotasolla). Data mart voi olla joko johdettu isommasta tietovarastosta (alitietovarasto) tai sitten erillinen ja itsenäinen. DBMS (Data Base Management System) Ks. TKHJ. Denormalisointi (denormalization) Normalisoinnista tinkiminen tietoja toistamalla. Melko yleistä tietovarastokannoissa; tarpeen joskus hakujen nopeuttamiseksi myös operatiivisissa kannoissa. Default Ks. oletusarvo. Dimensio (dimension) Tähtimallissa ulottuvuudet tallennetaan dimensiotauluihin. Dimensio kuvaa jotakin seurattavaa näkökulmaa, kuten tuotetta, asiakasta, kalenteria tai organisaatioyksikköä. Dimensioissa on usein hierarkiaa. EER-kaavio (Enhanced ER diagram) ER-kaavion laajennus, jolla voidaan kuvata mm. periytymistä. Ehdollinen yhteys Kahden käsitteen välinen yhteys, jonka mukaan esiintymän ei ole pakko liittyä toiseen esiintymään. Kuvataan käsitekaaviossa yhteysviivalla olevalla pienellä ympyrällä. Eheys (integrity) Tietokannan tila, jossa tietoihin liittyvät rajoitukset ja säännöt ovat voimassa. Eheysehto (integrity constraint) Ehto, joka säätää tietokannan sallitut tilat (tauluissa yhtäaikaa sallitut rivit).

3 Page 3 of 14 Erikoistaminen (specialization) Käsitteen yleistäminen toisesta näkökulmasta: pääkäsitteestä (yliluokasta) erikoistetaan alikäsite (aliluokka). ER-kaavio (ER diagram) Ks. Käsitemalli. Esiintymä (occurrence) Käsitteen tietojen mukainen reaalimaailman todellisten arvojen joukko; vrt. taulun rivi. Esim. Asiakas-käsitteen esiintymiä ovat yksittäiset, yksilöidyt asiakkaat. Fakta (fact) Tähtimallin tai kuution "keskellä" oleva osa, johon liittyy yleensä useita dimensioita. Tähtimallissa tallennetaan useimmiten tapahtuman tyyppisiä tietoa faktatauluun (esim. myynti- tai kirjanpitotapahtumia). Faktatauluissa on yleensä numerotietoa, kuten myynti, kpl, verot tai saldo. Näitä tietoja summataan dimensiotietojen rajausten perusteella. Faktataulut saattavat kasvaa hyvin suuriksi dimensioihin verrattuna. FETCH SQL-kohdistinkäsittelyssä rivin nouto kyselyn (virtuaalisesta) tulostaulusta ohjelman muuttujiin. Funktionaalinen riippuvuus (functional dependency) Kenttä A on funktionaalisesti riippuvainen kentästä B, jos A:ta kohti on korkeintaan yksi B:n arvo kunakin ajanhetkenä. Käytetään normalisoinnissa. Hajaluku (random read) Ohjelma viittaa ei-peräkkäisiin taulu- tai lehtisivuihin; kaikki sivut ovat yhtä suosittuja. Vastakohta peräkkäisluku, välimuotoja harppova peräkkäiskäsittely ja kuumat sivut. Hakupolku Ks. saantipolku. Herätin (trigger) Herätin eli triggeri on tietokantaan tallennettu ohjelmamoduuli, joka käynnistyy automaattisesti tauluun kohdistuvasta SQL-käskystä. Eri SQL-käskyille on omat triggerinsä: UPDATE-, INSERT- ja DELETE- triggerit. Triggerit kirjoitetaan SQLkielellä ja yleensä jollakin proseduraalisella laajennoksella, kuten SQL Serverin Transact-SQL- tai Oraclen PL/SQL-kielellä tai esim. Javalla (käytettävät kielet ovat tuotekohtaisia). Hieno siivilä Yksinkertainen tarkistus, jonka avulla taulun mahdollinen denormalisointitarve voidaan paljastaa jo siinä vaiheessa, kun liitoslausetta ollaan kirjoittamassa. Ks. luku 16. Ilmentymä (instance) Ks. esiintymä. I/O (Input/Output operation) Yleensä sama kuin disk I/O: keskusyksikkö pyytää sivua levypalvelimelta (input, disk read) tai lähettää päivitetyn sivun levypalvelimille (output, disk write). Tietokantasivujen kirjoitus on yleensä asynkronista eikä siis suoranaisesti vaikuta vasteaikaan. Tietokantasivujen hajaluku on synkronista, mutta peräkkäisluku yleensä asynkronista. Hajalukuakin on kahta tyyppiä: jos pyydetty sivu on levypalvelimen välimuistissa (read cache), ohjelma joutuu odottamaan noin yhden millisekunnin - muutoin sivu haetaan pyörivältä kiintolevyltä, jolloin ohjelma joutuu odottamaan noin 10 millisekuntia. Kiintolevylle asti joutuvien hajalevylukujen määrä on nykyään ykeensä vasteajan suurin osatekijä. Huom! Käyttöjärjestelmän mittaama I/O-

4 Page 4 of 14 määrä sisältää levykirjoitukset ja yksi asynkroninen levyluku voi tuoda keskusmuistiin kymmeniä sivuja. TKHJ:n mittaama synkronisten levylukujen määrä on relevantimpi suure, mutta sekin sisältää ne levyluvut, jotka löytävät etsimänsä sivun levypalvelimen välimuistista. Indeksi (index) Tietorakenne, jonka avulla voidaan nopeuttaa tietyt ehdot täyttävien taulurivien hakua. Yleisin indeksityyppi on B-puu-indeksi. Toinen indeksityyppi on bittikarttaindeksi. Indeksirivi Virtuaalinen käsite, jota käytetään VQUBE-pikaennusteessa. Indeksi nähdään minitauluna, jossa on yhtä monta riviä kuin taulussa, johon se viittaa. Indeksin yläsivut jätetään huomiotta, samoin tutkittavan indeksiviipaleen ensimmäisen indeksirivin paikallistaminen. Indeksiviipale Indeksin osa (normaalisti peräkkäisistä riveistä koostuva), jonka TKHJ tutkii, kun se ei lue läpi koko indeksiä. Index matching TKHJ lukee indeksistä yhden tai useamman predikaatin rajaaman viipaleen. Index only Nopeutensa ansiosta yhä suositumpi saantipolku: tulosrivi rakennetaan indeksin lehtisivun riveistä, taulusivuja ei lueta ollenkaaan. Nopeutus on erityisen suuri, jos taulusta olisi luettava useita taulurivejä, jotka eivät ole peräkkäin (samalla taulusivulla tai peräkkäisillä taulusivulla). Kaksi edellytystä: riittävästi indeksisarakkeita (paksu indeksi) ja optimointiohjelma, joka ymmärtää, että taulusivuja ei tarvitse lukea. Index screening TKHJ ei lue tauluriviä, jos se toteaa indeksirivin luettuaan, että rivi ei läpäise predikaattia. Isä-lapsi-yhteys Yksi-moneen-yhteys kahden käsitteen tai taulun välillä. Esim. Lasku- Laskurivi: tiettyä laskua ("isä") kohti voi olla useita laskurivejä ("lapsi") ja yhtä laskuriviä kohti on yksi lasku. Isätaulu (parent table, master table, referenced table) Yksi-moneen-yhteyden taulu, jossa yhtä riviä kohti voi olla monta riviä lapsitaulussa (lapsitaulussa on viiteavain isätauluun). Johdettu tieto (derived data) Käsitteen tieto, joka on laskettu toisten tietojen avulla; vastakohtana ns. perustieto. Taulun sarake, joka on laskettu toisten sarakkeiden avulla. Juurisivu (root page) B-puun ylin taso, viittaa välitason sivuille. Karakteristinen käsite (characteristic entity) Riippuva käsite, joka liittyy yksi-moneenyhteydellä yhteen toiseen käsitteeseen. Esim. Projektikokous-käsite, joka liittyy Projektikäsitteeseen. Kardinaliteetti Erilaisten arvojen määrä sarakkeessa tai sarakeyhdistelmässä. Karkea siivilä Yksinkertainen tarkistus, jonka avulla voidaan paljastaa ilmeisen puutteellinen indeksointi tietylle SELECT-lauseelle jo siinä vaiheessa, kun ohjelmaa ollaan kirjoittamassa.

5 Page 5 of 14 Keinoavain (artifical key) Ks. surrogaatti. Kiintolevy (disk drive) Pyörivä levy, joka voi suorittaa vain yhden palvelupyynnön (luku tai kirjoitus) kerrallaan. Nykyään usein laitteiston hitain osa - palveluaika on pitkä ja jonoaika voi olla hyvin pitkä, jos kiintolevy on ylikuormitettu (drive busy yli 25 %) Kohde ks. käsite. Kohdealue (Slice of reality, Universe of Discourse). Osa reaalimaalimaa, joka on käsiteanalyysin eli mallintamisen kohteena. Kolmen tähden indeksi (three-star index) Paras mahdollinen indeksi tietylle SELECTlauseelle. Ks. luku 12. Kooste (aggregation) Luokka koostuu toisesta luokasta, esim. Auto koostuu osista. Vahvassa koosteessa (composition) osien elinkaari on sama kuin kokonaisuuden elinkaari. Kursori (kohdistin, cursor) Upotetun SQL-kielen konstruktio, jonka avulla tulostaulu siirretään sovellusohjelmalle rivi kerrallaan FETCH-kutsujen myötä. Kuuma sivu 1. Sivu, johon viitataan usein ja joka pysyy sen vuoksi altaassa; hyvä asia. 2. Sivu, jota päivitetään usein ja joka aiheuttaa sen vuoksi lukko-odotuksia (jos käytetään sivulukitusta); paha asia. Kuuma rivi Aiheuttaa lukko-odotuksia (rivilukitus). Kysely (query) Tietokantaan SQL-kielellä tehty haku, joka tuo hakuehdoissa määritellyt rivit. Laajemmin ottaen myös päivitys-, lisäys- ja poisto-käskyt sisällytetään kyselytermin alle. Käsite (entity). Kohdealueen objekti, asia, henkilö, käsite tai paikka, josta halutaan tallentaa tietoa tietokannassa myöhempää käyttöä varten. Tiedot (attribuutit) kuvaavat käsitettä; perusavaintieto yksilöi käsitteen esiintymät. Käsitteet määritellään käsiteanalyysissä. Relaatiotietokannassa käsitettä vastaa termi taulu ja olioanalyysissä termi luokka. Käsiteanalyysi (conceptual analysis, data modeling) Menetelmä, jolla mallinnetaan kohdealuetta ja muodostetaan käsitemalli. Perustuu alunperin P. Chenin ERmallinnusmenetelmään (Entity Relationship Modelling). Käsitekaavio Ks. Käsitemalli. Käsitemalli (conceptual model, ER-Diagram). Käsiteanalyysin tuloksena syntyvä (graafinen) kaavio, joka kuvaa kohdealuetta. Käsitemalli toimii yhteisenä viitealustana käyttäjien ja tietokantasuunnittelijoiden kesken. Toisaalta käsitemalli toimii tulevan tietokannan piirustuksina. Käsitemalli on tuote- ja tietokantariippumaton looginen tietosisällön kuvaus. Käsitemalli sisältää käsitteitä, niiden välisiä yhteyksiä sekä käsitteisiin liittyviä ja niitä kuvaavia tietoja. Käyttöoikeus (access right) Oikeus käyttää tietokantaa tai yleisemmin tietojärjestelmän tiedostoja ja ohjelmia esimerkiksi lukemalla, päivittämällä tai muuttamalla muiden

6 Page 6 of 14 käyttöoikeuksia. Lapsitaulu (referencing table, dependent table, detail table) Isä-lapsi-suhteen eli yksimoneen-suhteen taulu, jossa on monta riviä yhtä isä-taulun riviä kohti. Lapsitaulussa on isätaulun perusavaimeen viittava viiteavain. Lehtisivu (Leaf page). B-puu-indeksin alin taso. Lehtisivut on ketjutettu indeksin avaimen mukaisessa järjestyksessä. Indeksin luonnin jälkeen lehtisivut ovat pääosin myös fyysisesti vierekkäin. Lehtisivulla olevat rivit viittaavat suoraan tietokannan taulusivuille. Levy-I/O Ks. I/O. Liitos (join) Relaatioalgebran operaatio, jossa sarakkeita haetaan useammasta taulusta (tai liittämällä taulu itseensä) Relaatiokannoissa liitos tehdään SQL-kielellä. Alalajeja ovat ulkoliitos ja luonnollinen liitos. Liitosmenetelmä (Join Method) Optimointiohjelman valitsema liitoksen toteutustapa, esim. silmukkaliitos (nested loop) tai lomitusliitos (merge scan). Lomitusliitos (merge scan) Taulu tai taulut lajitellaan tarvittaessa yhdenmukaiseen järjestykseen ja tulosrivit etsitään lukemalla tauluja tai työtiedostoja limittäin. Ks. Liitosmenetelmä. LRU-algoritmi (Least Recently Used) Altaissa ja välimuisteissa aikojen alusta lähtien käytetty perussääntö: uusi sivu kirjoitetaan kauimmin käyttämättä olleen sivun päälle. Lukitusaste Taulusivun tai taulurivin lukitusaste on X %, jos se on lukittu X % ajasta. Lukko-odotuksia alkaa esiintyä, kun jonkin sivun tai rivin lukitusaste on yli 10 % (ruuhkatunnin keskiarvo). Eräät TKHJ:t lukitsevat myös lehtisivun tai indeksirivin. Lukko (lock) Loogisen eheyden turvaava sarjallistamisen väline, joka yleensä kohdistuu taulusivuun tai tauluriviin. Tavallisesti kolme voimakkuustasoa: Share, Update ja exclusive. Jos yksi ohjelma on lukinnut tietyn taulusivun tai taulurivin, ainakin muut tämän sivun tai rivin päivittämistä yrittävät ohjelmat joutuvat odottamaan, kunnes ensimmäinen ohjelma vapauttaa X-lukon vahvistuskohdassa. Lumihiutalemalli (snowflake schema) Tähtimallin variaatio, jossa myös dimensiot on normalisoitu eli tiedon toisteisuutta on vältetty. Näin dimensioista syntyy lisää tauluja, mistä syystä rakenne muistuttaa lumihiutaletta. Lumihiutalemallia pidetään usein monimutkaisempana ja suorituskyvyltään hitaampana kuin tähtimallia. Luokka (class) Oliomallinnuksessa termi luokka vastaa käsiteanalyysin termiä käsite. Määrittää samankaltaisten olioiden rakenteen ja käyttäytymisen. Luokkakaavio (class diagram) Oliomallinnuksessa käytetty luokkien ja niiden välisten suhteiden esittämisessä käytetty notaatio. Luonnollinen perusavain (natural key) Käsitteen tai taulun perusavain, joka sisältää jotakin informaatiota, kuten tilinumero, tuotekoodi tai henkilötunnus. Toinen perusavaintyyppi on surrogaatti.

7 Page 7 of 14 Läpiluku (full scan) Haku, jossa käydään läpi taulun tai indeksin kaikki rivit. Läpäisykerroin (filter factor) Predikaatin ominaisuus, jonka arvo riippuu taulun sisällöstä: läpäisykerroin on X %, jos X % lähtötaulun riveistä läpäisee predikaatin. Vaikuttaa ratkaisevasti sekä optimointiohjelman että ihmisen tekemiiin SQL-keston ennusteisiin - ja tietysti myös todellisiin kestoihin. Ihminen voi mitata tietyn predikaatin läpäisykertoimen tietyllä hetkellä (SELECT COUNT). Optimointiohjelma arvioi läpäisykertoimien arvot tilastotaulujen avulla. Mallintaminen (modeling) Ks. käsiteanalyysi. MC (number of matching columns). Indeksin käyttötapaa kuvaava saantipolun ominaisuus, jonka selitteet yleensä raportoivat: indeksiviipaleen rajaukseen osallistuvien sarakkeiden määrä. Jos MC = 3, indeksin kolme ensimmäistä saraketta rajaavat tutkittavan indeksiviipaleen. Merge scan Ks. lomitusliitos. Metamalli (meta model) Mallinnus (esim. käsitemalli), joka kuvaa jotakin tietomallia (ks. Tietomalli). Esimerkiksi käsitemallin metamalli sisältäisi mm. seuraavia käsitteitä: käsite, yhteys, tieto ja kuvaus. Metatieto (metadata) Tietoa tiedosta. Tietojen kuvauksia ja määritelmiä. Metatiedot voidaan tallettaa metatietojärjestelmään (kuvaustietokantaan), josta käytetään myös nimitystä tietohakemisto (data dictionary) tai englanniksi Repository. Metodi (method) Operaation toteutus. Moniarvoinen tieto (multivalued attribute) Normalisointisääntöjen mukaan (1. NF) yksi tietoalkio ei saisi koostua listasta, esim. puhelinnumero ei saisi sisältää kuin yhden arvon. Monikko (tuple) Relaatiomallin termi taulun riville. Järjestetty arvojen lista, jossa on yksi arvo kutakin relaatiokaaviossa nimettyä attribuuttia kohden. Moni-indeksihaku (multiple index access, index ANDing, index Oring) Saantipolkutyyppi, jossa ensin kerätään osoittimia useasta indeksistä (tai yhden indeksin eri viipaleista). TKHJ lukee taulurivit vasta, kun se on muodostanut osoitinjoukon, joka viittaa näihin tulosriveihin. Naula (spike) Yksittäinen operatiivinen tapahtuma, jonka paikallisvaste tai SQL-aika on poikkeuksellisen pitkä (vertaa: tapahtumatyypin keskimääräinen paikallisvaste tai SQLaika). Normaalimuoto (normal form) Normalisoinnin välimuoto. Yleisimmät normaalimuodot ovat ensimmäinen, toinen ja kolmas normaalimuoto. Lisäksi on teoreettisemmat Boyce- Codd-normaalimuoto sekä neljäs ja viiden normaalimuoto. Ks. Normalisointi. Normalisointi (normalization) Tietokantojen suunnitteluun liittyvä menetelmä, jonka avulla tietojen toistaminen minimoidaan. Normalisoitaessa taulu jaetaan kahteen (tai useampaan) osaan; normalisointi siis johtaa taulujen määrän kasvamiseen. Operatiiviset järjestelmät pyritään usein normalisoimaan, etuna muutosjoustavuus,

8 Page 8 of 14 tietokannan eheys ja päivitysten suorituskyky sekä minimoitu levytilan tarve (levytilan nykyisillä hinnoilla tämä seikka ei tosin ole kovin merkityksellinen). Normalisointi saattaa hidastaa hakuja liitosten tarpeen lisääntyessä. Tietovarastokannoissa ja varsinkin paikallisvarastossa (data mart) denormalisoidaan usein hakujen nopeuttamiseksi. Normalisointi jakautuu teoriassa viiteen vaiheeseen (ks. Normaalimuoto). Käytännössä operatiiviset kannat pyritään normalisoimaan kolmanteen normaalimuotoon. NULL Tyhjäarvo eli tuntematon arvo. Jos tallennettaessa riviä tauluun sarakkeelle ei anneta arvoa, tallentuu tauluun ko. sarakkeen kohdalle erityinen NULL-merkintä. Taulun perustamisen yhteydessä voi määritellä, onko NULL sallittu (NOT NULL -määre). Näkymä (view) Virtuaalinen taulu, joka ei sisällä rivejä vaan on ikäänkuin ikkuna tauluihin. Näkymä määritellään CREATE VIEW -lauseella, jossa annetaan SELECTkysely. Ominaisuus (property) Synonyymi käsitteen tiedolle (ks. Tieto). Oletusarvo (default) Taulun määrittelyn yhteydessä sarakekohtaisesti DEFAULTmääreellä annettu arvo, tulee tauluun syötettävän rivin puuttuvan arvon kohdalle. Olio (object) Yksilöitävissä oleva asia tai käsite, jolla on oma identiteetti (object ID, OID). OID:n perusteella olio voidaan erottaa muista olioista. Vastaava termi käsiteanalyysissä on esiintymä. Olioluokka (object class) Ks. Luokka. Olio-relaatiotietokanta Alunperin relaatiomallin mukainen tietokannan hallintajärjestelmä, johon on lisätty olio-ominaisuuksia, kuten esim. uusia tietotyyppejä ja periytymistä. Esim. Oracle 8 -versiota kutsuttiin nimellä Object-Relational Database. Oliotietokanta Ns. puhtaat oliotietokannat ovat tietokannan hallintajärjestelmiä, jotka perustuvat olio-ajatteluun. Ne eivät noudata relaatiomallia eivätkä esim. normalisointisääntöjä. Tietokantaa käsitellään olio-pohjaisilla kielillä samantyyppisin tavoin kuin muitakin tietorakenteita eikä erillisiä relaatiotietokantakäskyjä tarvita. Puhtaat oliotietokannat eivät ole saavuttaneet suurta jalansijaa markkinoilla, sen sijaan relaatiotietokantoja on laajennettu olio-ominaisuuksilla (ks. olio-relaatiotietokanta). Operaatio (operation) Palvelu tai toiminto, jota käyttämällä olion saa tekemään jonkin asian. Operaation toteutus on yleensä metodi. Operatiivinen tietokanta Tietokanta, joka palvelee operatiivista perussovellusta. Operatiivinen tietokanta on usein ajantasainen ja edellyttää virittämistä hyvän vastausajan saamiseksi. Raportointia ja tietojen analysointia varten tarvitaan usein lisäksi tietovarastokantoja. Optimointiohjelma (optimizer) Relationaalisen TKHJ:n osa, joka valitsee saantipolun kullekin SQL-lauseelle. Optimointiohjelma ennustaa mahdollisten saantipolkujen keston (levyaika ja CPU-aika) ja valitsee vaihtoehdon, jonka ennustettu kesto on lyhyin. Käytetään myös termiä optimoija. Paikallisvaste (local response time) Tapahtuman vasteaika ilman työaseman ja palvelimen välisiä siirto- ja odotusaikoja, palvelimen vasteaika.

9 Page 9 of 14 Paksu indeksi (fat index, covering index) Indeksi, johon on lisätty WHERE-lauseen hakusarakkeiden lisäksi haettavat sarakkeet haun nopeuttamiseksi. Paksun indeksin avulla voidaan välttää itse taulun lukeminen kokonaan (katso index only). Paksu taulu (fat table) Taulu, johon on lisätty sarakkeita toisesta taulusta tai joka on muodosetettu yhdistämällä yksi tai useampia tauluja. Taulun paksuntamisella lyhennetään yleensä SELECT-lauseiden kestoa, mutta levytilantarve voi olla suurempi kuin usean taulun ratkaisussa. Usein yksi-yhteen-yhteydellä yhdistetyt taulut kannattaa korvata yhdellä paksulla taululla.taulun paksuntaminen voi merkitä denormalisointia. Periytyminen (inheritance) Erikoistetut käsitteet (luokat) saavat yleisempien käsitteiden ominaisuudet. Vrt. alikäsite, aliluokka, erikoistaminen, yleistäminen, yliluokka. Perusavain (primary key). Sarake tai joukko sarakkeita, jotka yksilöivät käsitteen esiintymät tai taulun rivit. Kun taululle on määritelty perusavain, huolehtii tietokannan hallintajärjestelmä siitä, että tauluun ei tule tupla-arvoja ko. sarakkeeseen (eikä siis tuplarivejä). Tietokannan hallintajärjestelmä perustaa lisäksi automaattisesti yksilöivän indeksin perusavaimelle. Peräkkäisluku. Ohjelma lukee rivejä, jotka ovat enimmäkseen fyysisesti peräkkäin. Huomattavasti nopeampaa kuin hajaluku lähinnä kahdesta syystä: (1) jos yhdellä sivulla on kymmenen riviä, yhden sivun luku kiintolevyltä tuo keskusmuistiin kymmenen riviä; (2) jos yhdellä kiintolevyn uralla on kahdeksan saman taulun sivua, nämä kahdeksan sivua luetaan kiintolevyltä yhdellä pyörähdyksellä. Lisäksi peräkkäisluku voi limittyä CPU-ajan kanssa (peräkkäisennakkoluku) ja seuraavia sivuryhmiä voidaan siirtää rinnakkain usealta kiintolevyltä levypalvelimen välimuistiin. Pikaennuste Yksinkertainen kaava SQL-kutsun keston ennustamiseen - esimerkiksi VQUBE (Very Quick Upper-Bound Estimate), jossa on vain kaksi muuttujaa. Tarkoitettu mahdollisesti hitaiden saantipolkujen vaivattomaan paljastamiseen jo ohjelman toteutusvaiheeessa. Sopii myös indeksointi-vaihtoehtojen karkeaan vertailuun. Mitatut kestot ovat joskus huomattavasti lyhyempiä kuin VQUBE-laskelmien arvot. Poissulkeva yhteys (exclusive relationship) Käsiteanalyysissä voidaan merkitä tiettyyn käsitteeseen tulevia yhteyksiä toisensa poissulkeviksi, jolloin yhteen ko. käsitteeseen liittyvään esiintymään voi kuulua vain yksi toisensa poissulkevista yhteyksistä. Esimerkiksi auton voi omistaa joko yritys tai henkilö mutta eivät molemmat. Predikaatti (predicate) SQL-lauseen WHERE-lausekkeessa oleva hakuehto. Proseduuri (procedure) Tietokantaan tallennettava objekti, joka sisältää suoritetettavia SQL-lauseita sekä usein muutakin, ei-proseduraalista ohjelmakoodia. Proseduuria voi kutsua ohjelmasta Exec-komennolla ja välittää sille parametreja. Puskuriallas (buffer pool) Ks. tietokantapuskuriallas. Pääkäsite (super entity, super-type entity) Käsite, jonka sisällä on yksi tai useampi alikäsite. Alikäsitteet perivät pääkäsitteen tiedot ja yhteydet. Vrt. erikoistaminen, yleistäminen, yliluokka. RAID 5 (Redundant Array of Inexpensive Disks, level 5) Yleisesti käytetty tiedon

10 Page 10 of 14 tallennustapa: loogiset taltiot hajautetaan (striping) esimerkiksi seitsemälle kiintolevylle (jotka muodostavat RAID-ryhmän, RAID array, RAID rank) esimerkiksi niin, että ensimmäinen 32 kilotavun jakso kirjoitetaan kiintolevylle 1, toinen kiintolevylle 2 ja niin edespäin. Lisäksi kirjoitetaan redundanttia pariteettitietoa (joka jakautuu ryhmän kaikille aktiivisille levyille) siten, että yhden kiintolevyn rikkoutuessa sen tiedot voidaan rakentaa RAID-ryhmän varataltiolle. RAIDin vastakohta on JBOD (Just a Bunch of Disks). RAID 10 RAID 5:n vaihtoehto, sopii tietokantoihin, joissa on paljon hajapäivityksiä (rivien lisäyksiä, päivityksiä ja poistoja): RAID 0 (peilaus) + RAID 1 (striping). Pariteettitiedon asemesta muuttunut sivu kirjoitetaan kahdelle kiintolevylle. Sivu voidaan lukea kummalta levyltä tahansa. Hajapäivitysten aiheuttama levykuormitus (drive busy) on pienempi kuin RAID 5 -ratkaisussa, mutta levytilaa tarvitaan enemmän. Reaalimaailma (real world) Ks. kohdealue. Relaatio (relation) Relaatiomallin termi taululle; rakenteeltaan samanlaisten monikoiden (vrt. rivi) joukko. Relaatiotietokanta (relational database) 1. Relaatiomallia noudattava, tietokannan hallintajärjestelmän avulla muodostettu tietokanta. 2. Relationaalinen tietokannan hallintajärjestelmä, relaatiotietokantatuote (esim. Oracle, DB2). Relaatiokaava Relaatiokannan taulurakennetta kuvaava kaavio. Relaatiomalli (relational model) E. F. Coddin v julkaisema tietomalli, joka määrittelee, miten tiedot tulisi tallettaa tietokantaan ja miten niitä käsitellä. Joukkooppiin, matematiikkaan ja predikaattilogikkaan perustuva malli, joka on ollut lähtökohtana kaikissa relaatiotietokantatuotteissa. Relaatiomalli määrittelee tietokannan rakenteen, käsittelyn ja eheyssäännöt. Riippuvuus (relationship) Ks. yhteys. Rivi (Row) Relaatiomallin monikon vastine relaatiotietokannassa. Taulu koostuu riveistä; "vanha" termi on tietue. Ryvästävä indeksi (clustering index, clustered index) Taululle perustettu ryvästävä indeksi aiheuttaa sen, että TKHJ pyrkii pitämäään myös taulun rivit fyysisessä järjestyksessä (INSERT-kutsulla lisätty uusi rivi viedään ryvästävän indeksin määräämälle kotisivulle, jos tällä sivulla on tilaa eikä se ole lukittu). Taululla voi olla vain yksi ryvästävä indeksi. Kaikki tuotteet eivät tue ryvästävää indeksiä, mutta taulurivit saadaan haluttuun järjestykseen taulun uudelleenjärjestelyllä. Saantipolku (access path) Optimointiohjelman valitsema menetelmä tulostaulun rakentamiseksi SQL-lauseelle. Esim. yhden taulun SELECT-lauseelle tietyn indeksin käyttö tietyllä tavalla tai taulun läpiluku; tai liitoksessa näiden lisäksi taulujärjestys ja liitosmenetelmä. Sarake (column) Taulussa eri riveillä samaan arvoalueen määrittelyyn liittyvien arvojen lista. Silmukkaliitos (nested loop) Yksi optimoijan käyttämistä liitosmenetelmistä. Uloimmasta taulusta (tai sen indeksistä) haetaan uloimman taulun ne rivit, jotka

11 Page 11 of 14 läpäisevät uloimman taulun paikallispredikaatit. Kullekin uloimmalle taulun riville haetaan sisemmässä silmukassa liitospredikaatin määrittelemät sukulaisrivit seuraavasta taulusta. Taulujärjestyksen päättää optimointiohjelma. Sipaisu (touch) Tietokantajärjestelmä tutkii yhden indeksirivin (ks. indeksirivi) tai yhden taulurivin. Käsitteen tarkoitus on SQL-kutsun keston pikaennustaminen (VQUBEmenetelmällä). Sisäkkäiset silmukat (nested loop) Ks. silmukkaliitos. SQL (Structured Query Language) Lähes kaikkien relaatiotietokantatuotteiden tukema tietokannan määrittely- ja käsittelykieli. Kehitetty 70-luvulla IBM:n laboratoriossa D.D. Chamberlainin tutkimusryhmässä. Voimakas, ei-proseduraalinen tietokantakieli. SQLkielellä tehdään taulujen määrittely, tietojen haku, päivitys ja poisto sekä valtuusmääritykset ja tapahtumankäsittelyn ohjausta. SQL:ää voi käyttää vuorovaikutteisesti työsemalla tai upotettuna ohjelmointikieleen. SQL-kielestä on useita standardeja, kuten SQL-86, SQL-92 ja SQL-99. Surrogaatti (surrogate key). Surrogaatti eli keinoavain kuvaa perusavainta, joka ei sisällä kuvaavaa luonnollista tietoa vaan on keinotekoinen, yleensä juokseva numero. Etuna on se, että surrogaatin arvo ei koskaan muutu, mikä helpottaa päivitystilanteita. Paljon käytetty tietovarastokannoissa, etenkin tähtimallissa; alkanut yleistyä myös operatiivisissa kannoissa. Suunnitteluputki Tietokannan suunnittelussa tarvittavat päävaiheet, eli käsiteanalyysi, tarveanalyysi, normalisointi, taulujen muodostaminen ja virittäminen. Tarveanalyysi Menetelmä, jonka avulla täydennetään käsitemallia ja tarkistetaan sen toimivuus. Tarveanalyysissä käydään läpi suunniteltuja tietotarpeita käsitemallia vasten. Taulu (table) Relaatiomallin relaation vastine relaatiotietokannassa. Taulu koostuu sarakeotsikoista ja tietojen arvoja sisältävistä riveistä (nolla tai useampi rivi); samaan rivin määrittelyyn liittyvien rivien monijoukko. Taulukko (table) 1. Tarkoittaa tietokantojen yhteydessä samaa kuin taulu (ks. Taulu). Esim suomenkielisessä Accesissa käytetään taulukko-termiä. Suosittelemme taulutermiä, jotta ei sekoitettaisi tässä olevia määritelmiä 1 ja 2; 2. Taulukkolaskimen tietojen esitymuoto, jossa tietoon viitataan tiedon sijaintipaikan avulla eli koordinaateilla, kuten esimerkiksi (B, 20). (Taulussa tietoon ei viitata koordinaateilla vaan tietoa haetaan sen sisällön perusteella) Tieto Tässä kirjassa tarkoittaa käsitteen ominaisuutta eli attribuuttia. Tietokannan hallintajärjestelmä (Database Management System) Ks. TKHJ. Tietokanta (Database) 1. Loogisesti yhteen kuuluvat tiedot; 2. Tietokannan hallintajärjestelmän kannalta tekninen taulukokoelma. Saattaa olla eri määritelmä eri TKHJ:lla. Tietokantasivu Yksi hajalevyluku tuo yhden sivun levypalvelimelta keskusyksikön puskurialtaaseen. Peräkkäisennakkoluku siirtää esimerkiksi 32 sivua kerrallaan. Yleisiä

12 Page 12 of 14 sivukokoja ovat 4, 8, 16 ja 32 kilotavua. Tietokanta-allas, ks. tietokantapuskuriallas. Tietokantapuskuriallas (database buffer pool) Keskusmuistissa oleva alue, johon tallennetaan levyltä luettuja tietokantasivuja levyhakujen vähentämiseksi. Voi sisältää nykyään esimerkiksi ne sivut, joihin on viitattu viimeisen minuutin aikana (katso LRU). Sivu, johon viitataan ainakin kerran minuutissa, pysyy tällöin keskusmuistissa aamusta iltaan. Tietomalli (data model) Mallinnusmenetelmä, jota käytetään reaalimailman tai tietokannan mallintamisessa. Yleisimpiä käytännössä ovat ER-malli eli käsitemalli, relaatiomalli ja oliomalli. Tietoriippumattomuus (data independence) Relaatiokantojen ominaisuus, että tietokannan rakennetta voi tietyssä määrin muuttaa koskematta ohjelmiin. Esimerkiksi voidaan lisätä, muuttaa tai poistaa indeksejä ilman että ohjelmia tai kyselyjä tarvitsee muuttaa. Tietotyyppi (datatype) Taulun sarakkeen tietomuoto; annetaan taulun perustamisen yhteydessä. Eräitä tavanomaisia tietotyyppejä ovat char, varchar2, decimal, float, integer ja date. Tietovarasto (Data Warehouse, DW) Aihealuekohtainen, yhdenmukainen ja aikaan sidottu tietokanta, joka tukee päätöksentekoa. Suunnitellaan tukemaan erilaisia vaihtelevia kyselyjä ja raporttitarpeita. Tietovarastoon ladataan usein tietoja useista operatiivisista järjestelmistä yhdenmukaistaen erilaiset kooditukset ja säilyttäen myös historian. Tämä mahdollistaa trendianalyysin (esim. verrataan eri kuukausien myyntejä). Tietovarastointi (Data Warehousing). Prosessi, jonka avulla erillisistä operatiivisista tietokannoista saadaan tiedot siirrettyä ja yhdistettyä yhtenäiseksi, integroiduksi tietovarastoksi, jota voidaan käyttää monenlaisilla helppokäyttöisillä kysely- ja raporttivälineillä. Prosessiin kuuluvat työn organisointi ja läpivienti, suunnittelumenetelmät sekä tarvittavat työkalut. Tietue (record) Ks. rivi. TKHJ (tietokannan hallintajärjestelmä) Ohjelmisto, jonka avulla voidaan perustaa, käyttää ja hallinnoida tietokantoja. Aiemmin oli käytössä verkkomallisia ja hierarkkisia TKHJ:iä, nykyisin valtaosa uusista sovelluksista rakennetaan relaationaalisilla TKHJ:illä. Top-down lähestymistapa "Ylhäältä alas -suunnittelu", käsiteanalyysin yhteydessä tapa lähteä mallintamaan kohdealuetta ensin karkealla tasolla ja edeten sitten vähitellen yksityskohtiin. Triggeri Ks. Herätin. Tulostaulu SELECT-lauseen määrittelemä tulosrivijoukko, usein järjestetty. Tuoterakenne Ks. BOM.

13 Page 13 of 14 Tyhjä-arvo Ks. NULL. Tähtimalli (star schema, star join) Tietovarastotietokannan suunnittelumenetelmä, jota käytetään nimenomaan paikallistietovaraston (data mart) suunnittelussa. Tähtimalli ikäänkuin simuloi moniuloitteisuutta relaatiokannassa. Tähtimallin mukainen relaatiokannan rakennekaavio muistuttaa tähteä ja on dimensioiden osalta denormalisoitu (sisältää tietojen toisteisuutta). Tähtimallin mukainen kanta on rakenteeltaan selkeä ja helposti ymmärrettävä ja sen suunnittelussa on ajateltu nimenomaan raportointia ja kyselyjä. UML (Unified Modeling Language) Oliomallintamisessa käytetty standardinotaatio, joka sisältää mm. luokkakaavion. Ks. luku 7. Uudelleenjärjestely (reorganization) 1. Tietokannan rakenteen uudistaminen; 2. (table reorganization) taulun uudelleenluonti siten, että taulurivit ovat toivotussa järjestyksessä ja kullakin taulusivulla on haluttu määrä tyhjää tilaa lisäyksiä varten (jos TKHJ:ssa ryvästävä indeksi); 3. (index reorganization) indeksin uudelleenluonti siten, että indeksirivit ovat toivotussa järjestyksessä ja kullakin lehtisivulla on haluttu määrä tyhjää tilaa lisäyksiä varten - lisäksi lehtisivut ovat pääosin fyysisesti vierekkäin indeksin avaimen mukaisessa järjestyksessä. VQUBE (Very Quick Upper-Bound Estimate) Paljon käytetty pikaennustekaava SQLkäskyn keston karkeaan ennustamiseen. Vierasvain (foreign key) Ks. Viiteavain. Tässä kirjassa olemme suosineet termiä viiteavain. Vihje (hint) SQL-kutsussa tai BIND-optiossa annettu määritys, joka ohjaa optimoijaa. Voi esim. määrätä tietyn indeksin tai liitosmenetelmän. Vihjeiden syntaksi vaihtelee tuotekohtaisesti. Viiteavain (foreign key) Sarake tai sarakeyhdistelmä, joka viittaa taulusta toisen (tai saman) taulun perusavaimeen. Viiteavaimiin voi liittyä viite-eheysehtoja. Kun käsitemallista muodostetaan taulut, syntyy yhteyksistä viiteavaimia. Viite-eheys (referential integrity) Tietokannan eheysehto, joka on voimassa, kun kunkin viittaavan taulun riveillä viiteavainten arvot ovat joko samoja kuin viitatussa taulussa olevia perusavainten arvoja tai tyhjiä. Viitattu taulu Ks. isätaulu. Vyörytyssääntö (cascading rule) Poiston tai muutoksen vaikutukset lapsitauluihin heijastava sääntö. Välimuisti (read cache) Levypalvelimen puolijohdemuistin (keskusmuistin) alue, johon tallennetaan viimeksi kiintolevyiltä luettuja sivuja levylukujen vähentämiseksi. Nykyään usein selvästi suurempi kuin keskusyksikön keskusmuistin puskuriallas. Voi sisältää sivut, joihin on viitattu hajaluvulla esimerkiksi viimeisen 20 minuutin aikana (vertaa write cache). Write cache Levypalvelimen puolijohdemuistialue, jossa tiedot säilyvät pariston avulla useita päiviä (non-volatile storage, NVS). TKHJ kirjoittaa aika ajoin (esimerkiksi

14 Page 14 of 14 muutaman kerran sekunnissa) päivittyneitä sivuja levypalvelimelle, joka tallentaa ne aluksi tälle alueelle. Kauimmin käyttämättä olleet (katso LRU) sivut kirjoitetaan kiintolevyille. Write cache voi sisältää sivut, joita on päivitetty viimeisen minuutin aikana. Jos jotakin sivua päivitetään tällöin useita kertoja minuutissa, se voi pysyä write cache - muistissa aamusta iltaan. Mitä suurempi write cache, sitä vähemmän päivitykset kuormittavat kiintolevyjä. Ydinkäsite (independent entity) Käsite, jonka esiintymiä voidaan tallettaa riippumatta muiden esiintymien olemassaolosta. Ydinkäsitteellä on yleensä yksiosainen perusavain. Yhteys (relationship) Kahden käsitteen välinen, merkitystä sisältävä kytkentä. Tyypit: yksi-yhteen, yksi-moneen ja moni-moneen. Yksilö Ks. Käsite. Yleistys (generalization) Yhteys, jossa yhdellä käsittellä (luokalla) on ominaisuuksia, jotka toiset erikoistetut käsitteet (aliluokat) perivät. Erikoistettu käsite on siten yhteensopiva yleisemmän käsitteen kanssa. Vrt. periytyminen. Yliluokka (super class) Luokka, jossa on attribuutteja ja/tai metodeja, jotka yksi tai useampi aliluokka perii. Yläsivu (non-leaf page) Indeksin (B-puu) sivu, joka ei ole lehtisivu.

Tietokantojen suunnittelu, relaatiokantojen perusteita

Tietokantojen suunnittelu, relaatiokantojen perusteita Tietokantojen suunnittelu, relaatiokantojen perusteita A277, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin

Lisätiedot

HELIA 1 (17) Outi Virkki Tiedonhallinta

HELIA 1 (17) Outi Virkki Tiedonhallinta HELIA 1 (17) Luento 4.1 Looginen suunnittelu... 2 Relaatiomalli... 3 Peruskäsitteet... 4 Relaatio... 6 Relaatiokaava (Relation schema)... 6 Attribuutti ja arvojoukko... 7 Monikko... 8 Avaimet... 10 Avain

Lisätiedot

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty

Lisätiedot

Relaatiomalli ja -tietokanta

Relaatiomalli ja -tietokanta Relaatiomalli ja -tietokanta > Edgar. F. (Ted) Codd, IBM, 1969 < A Relational Model of Data for Large Shared Data Banks Communications of the ACM, Vol. 13, No. 6, June 1970, pp. 377-387. > 70-luvun lopulla

Lisätiedot

Tietovarastojen suunnittelu

Tietovarastojen suunnittelu Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Tietovarastojen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 8

Lisätiedot

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

TIEDONHALLINNAN PERUSTEET - SYKSY 2013 TIEDONHALLINNAN PERUSTEET - SYKSY 2013 Kurssikoodi: Saapumisryhmä: Luento 4 XX00AA79-3013 TU12S2 Pasi Ranne 11.9.2013 11/9/13 Helsinki Metropolia University of Applied Sciences 1 Relaatiotietokannan suunnitteluprosessin

Lisätiedot

TIETOVARASTOJEN SUUNNITTELU

TIETOVARASTOJEN SUUNNITTELU IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU TIETOVARASTOJEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI, DOCENDO (2003, 2005) LUKU 8 JOUNI HUOTARI & ARI

Lisätiedot

Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija Opintojaksolla: keskitytään relaatiotietokantojen teoriaan ja toimintaan SQL-kieli kyselykielenä

Lisätiedot

HELIA 1 (12) Outi Virkki Tiedonhallinta 4.11.2000

HELIA 1 (12) Outi Virkki Tiedonhallinta 4.11.2000 HELIA 1 (12) Luento 4.3 Eheyssäännöt (Integrity Constraints)... 2 Eheyden valvonta... 3 Yksilön eheyssääntö... 4 Viite-eheyssäännöt... 5 Arvojoukkoeheyssäännöt... 8 Null-arvoista... 10 Sovelluskohtaiset

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 11 TU00AA48-2002 TU10S1E Hannu Markkanen 22.11.2011 9/10/12 Helsinki Metropolia University of Applied Sciences 1 Indeksit Indeksit Taulun

Lisätiedot

NORMALISOINTI TIETOJEN MALLINNUS JOUNI HUOTARI & ARI HOVI

NORMALISOINTI TIETOJEN MALLINNUS JOUNI HUOTARI & ARI HOVI TIETOJEN MALLINNUS NORMALISOINTI HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI DOCENDO (2003, 2005) LUKU 5 JOUNI HUOTARI & ARI HOVI SUUNNITTELUPUTKI Käyttäjien näkemykset Näytöt, ikkunat

Lisätiedot

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta 1. Johdanto (käsitteitä) 2. Tietokannan talletusrakenteet 3. Tietokannan hakemistorakenteet 4. Kyselyiden käsittely ja optimointi

Lisätiedot

HAAGA-HELIA TIKO-05 1 (19) ICT23a Tietokannan suunnittelu ja toteutus O.Virkki 4.9.2008

HAAGA-HELIA TIKO-05 1 (19) ICT23a Tietokannan suunnittelu ja toteutus O.Virkki 4.9.2008 HAAGA-HELIA TIKO-05 1 (19) Relaatiomalli Relaatiomalli... 2 Peruskäsitteet... 3 Relaatio... 5 Attribuutti ja arvojoukko... 6 Monikko... 7 Säännöt... 8 Yksilön eheyssääntö ja Pääavain... 9 Viite-eheyssääntö

Lisätiedot

HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000

HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000 HELIA 1 (20) Luento 3.1 7LHWRNDQWDSRKMDLVHQVRYHOOXNVHQVXXQQLWWHOXSURVHVVL Tietokannan suunnittelun tavoitteet... 3 Abstraktiotasot tietokannan suunnittelussa... 4 3-taso -malli... 4 TIHA-standardi... 5

Lisätiedot

2. Käsiteanalyysi ja relaatiomalli

2. Käsiteanalyysi ja relaatiomalli 2. Käsiteanalyysi ja relaatiomalli lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Tietokannan suunnitteluprosessin osat sivu 2 Käsiteanalyysi ER-mallinnus, tietomallinnus

Lisätiedot

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI DOCENDO (2003, 2005) LUKU 7 JOUNI HUOTARI & ARI HOVI IIO30100 TIETOKANTOJEN SUUNNITTELU

Lisätiedot

Luento 3 Tietokannan tietosisällön suunnittelu

Luento 3 Tietokannan tietosisällön suunnittelu HAAGA-HELIA / Heti-09 1 (17) Luento 3 Tietokannan tietosisällön suunnittelu Tietojärjestelmän suunnitteluprosessi... 2 Tietokannan suunnittelun tavoitteet... 3 Tietokannan suunnitteluprosessi... 4 Käsitteellinen

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2017 Kurssikoodi: Saapumisryhmä: Luento 2 TX00CN57-3001 TXQ16ICT, TXQ16S1 ja TXQ16PROS Pasi Ranne 28.8.2017 27/8/17 Helsinki Metropolia University of Applied Sciences 1 Oppitunnin

Lisätiedot

TIETOKANNAT JOHDANTO

TIETOKANNAT JOHDANTO TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI 2000-2011 Tieto TAUSTAA Yritykselle tiedot ovat tärkeä resurssi päätöksenteon tukena (JIT) varastointi ja käyttö vaativat investointeja vrt. energia (lähde,

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2017 Kurssikoodi: Saapumisryhmä: Luento 7 TX00CN57-3001 TXQ16ICT, TXQ16S1 ja TXQ16PROS Pasi Ranne 02.10.2017 1/10/17 Helsinki Metropolia University of Applied Sciences 1 Tietokannan

Lisätiedot

Tietokantakurssit / TKTL

Tietokantakurssit / TKTL Tietokantakurssit / TKTL Tietokantojen perusteet - tietokannan käyttö: SQL, sovellukset Tietokannan hallinta - tietokannanhallintajärjestelmän ominaisuuksia: tallennusrakenteet kyselyjen toteutus tapahtumien

Lisätiedot

Jouni Huotari & Ari Hovi. Käsitemallinnuksesta relaatiokantaan KÄSITEMALLI. LOOGINEN MALLI: tietomalli valittu. FYYSINEN MALLI: DBMS valittu

Jouni Huotari & Ari Hovi. Käsitemallinnuksesta relaatiokantaan KÄSITEMALLI. LOOGINEN MALLI: tietomalli valittu. FYYSINEN MALLI: DBMS valittu Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Polku luokkakaavioista taulujen toteutukseen kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003,

Lisätiedot

TIETOKANNAN SUUNNITTELU

TIETOKANNAN SUUNNITTELU TIETOKANNAN SUUNNITTELU HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI DOCENDO (2003, 2005) LUKU 2 JOUNI HUOTARI & ARI HOVI TIETOJEN MALLINNUS TIETOJEN MALLINNUKSESTA TIETOKANTAAN Käsiteanalyysin

Lisätiedot

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto Tietokanta Tiedosto Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja Ohjelmointikielissä apumuistiin tallennettuja tietoja käsitellään

Lisätiedot

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin

Lisätiedot

HELIA 1 (14) Outi Virkki Tiedonhallinta

HELIA 1 (14) Outi Virkki Tiedonhallinta HELIA 1 (14) Luento SQL... 2 Historiaa... 2 Standardit... 3 Käyttö... 4 DDL... 5 Tietokantaobjektien määrittely... 5 SQL:n tietotyypit... 6 Eheyssääntöjen määrittely... 9 Indeksin määrittely... 11 Syntaksikuvaukset...

Lisätiedot

Fyysinen suunnittelu

Fyysinen suunnittelu Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Fyysinen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luvusta 9 Jouni

Lisätiedot

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu 20.9.2005

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu 20.9.2005 HELIA 1 (21) Luento 7 Relaatiomallin kertausta... 2 Peruskäsitteet... 2 Relaatio... 4 Määritelmä... 4 Relaatiokaava (Relation schema)... 4 Relaatioinstanssi (Relation instance)... 4 Attribuutti ja arvojoukko...

Lisätiedot

FYYSINEN SUUNNITTELU

FYYSINEN SUUNNITTELU IIO30100 TIETOKANTOJEN SUUNNITTELU JA IIO30200 TIETOKANNAN HALLINTA FYYSINEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI, DOCENDO (2003, 2005), LUKU 9 JOUNI HUOTARI,

Lisätiedot

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki 19.1.2010. Relaatiomalli

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki 19.1.2010. Relaatiomalli HAAGA-HELIA heti09 1 (27) Relaatiomalli Relaatiomalli... 2 Peruskäsitteet... 3 Relaatio... 5 Attribuutti ja arvojoukko... 6 Monikko... 7 Säännöt... 8 Arvojoukkoeheyssääntö... 8 Pääavain ja yksilön eheyssääntö...

Lisätiedot

Tietokantojen perusteet

Tietokantojen perusteet Tietokantojen perusteet Johdanto Jouni Huotari & Ari Hovi 2008 TAUSTAA Yritykselle tiedot ovat tärkeä resurssi päätöksenteon tukena (JIT) varastointi ja käyttö vaativat investointeja vrt. energia (lähde,

Lisätiedot

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät HAAGA-HELIA Heti-09 1 (12) Näkymät Näkymät... 2 Eri tyyppisiä relaatioita... 2 Taulu - Tallennettu relaatio... 2 Tulosrelaatio - Kyselyn tulos... 2 Näkymä - Virtuaalirelaatio... 2 Näkymien määrittely...

Lisätiedot

FYYSINEN SUUNNITTELU

FYYSINEN SUUNNITTELU IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU JA IIO30220 DATABASE MANAGEMENT / TIETOKANNAN HALLINTA FYYSINEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI,

Lisätiedot

Hovi Huotari Lahdenmäki TIETO- KANTOJEN SUUNNITTELU & INDEKSOINTI

Hovi Huotari Lahdenmäki TIETO- KANTOJEN SUUNNITTELU & INDEKSOINTI Hovi Huotari Lahdenmäki TIETO- KANTOJEN SUUNNITTELU & INDEKSOINTI HARJOITUSTEN RATKAISUT HARJOITUS 1 Formula 1 -maailmaan liittyviä käsitteitä ovat mm. talli, kuski, kierros, rata, kilpailu, sijoitus kilpailussa,

Lisätiedot

Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä

Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 582104 Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 1 Luokkamallin lisäpiirteitä Erilaiset yhteystyypit kooste kompositio Muita luokkien välisiä suhteita riippuvuudet periytyminen eli luokkahierarkia

Lisätiedot

Normalisointi. Jouni Huotari & Ari Hovi. kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 5

Normalisointi. Jouni Huotari & Ari Hovi. kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 5 Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Normalisointi kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 5 Jouni Huotari

Lisätiedot

3. Käsiteanalyysi ja käsitekaavio

3. Käsiteanalyysi ja käsitekaavio 3. Käsiteanalyysi ja käsitekaavio lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Käsiteanalyysi Selvitetään mitä tietokantaan pitää tallentaa Lähtökohtana käyttäjien

Lisätiedot

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot) SQL sisältää operaatiot tietokannan sisällön muodostamiseen ja ylläpitoon: insert - uusien rivien vienti tauluun delete - rivien poisto update - rivien muutos 1 Insert lauseella on kaksi muotoa: insert

Lisätiedot

HELIA 1 (19) Outi Virkki Tietokantasuunnittelu 9.3.2001

HELIA 1 (19) Outi Virkki Tietokantasuunnittelu 9.3.2001 HELIA 1 (19) Luento 11 Eheyssäännöt (Integrity Constraints)... 2 Eheyden valvonta... 3 Yksilön eheyssääntö... 4 Arvojoukkoeheyssäännöt... 5 Null-arvoista... 6 Viite-eheyssäännöt... 7 Emorelaation päivitys...

Lisätiedot

Relaatioista TIETOJENKÄSITTELYTIETEIDEN LAITOS, JUHA IISAKKA 11-14

Relaatioista TIETOJENKÄSITTELYTIETEIDEN LAITOS, JUHA IISAKKA 11-14 Relaatioista Sarakenimistä relaation kaava tulisi olla yksiselitteinen attribuutin roolinimen tulisi auttaa ymmärtämään attribuutin tarkoituksen OSASTO(NIMI,NRO, TNRO, SIJAINTI) mitä tarkoittaa TNRO? viiteavaimella

Lisätiedot

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008 Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT Jouni Huotari S2008 2 Proseduurit Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)

Lisätiedot

HELIA 1 (14) Outi Virkki Tiedonhallinta

HELIA 1 (14) Outi Virkki Tiedonhallinta HELIA 1 (14) Luento Näkymät... 2 Relaatiotyypit... 2 Taulu - Tallennettu relaatio... 3 Näkymä - Virtuaalirelaatio... 3 Tulosrelaatio - Kyselyn tulos... 3 Otetaulut - Tauluun tallennettu kyselyn tulos...

Lisätiedot

SQL - STRUCTURED QUERY LANGUAGE

SQL - STRUCTURED QUERY LANGUAGE SQL Peruskomentoja SQL - STRUCTURED QUERY LANGUAGE SQL on tietokantojen käsittelyyn kehitetty kieli Esimerkkejä kielellä hoidettavistaa toiminnoista: Tietokannan rakenteen määrittely ja muuttaminen Kyselyt

Lisätiedot

HELIA 1 (15) Outi Virkki Tiedonhallinta

HELIA 1 (15) Outi Virkki Tiedonhallinta HELIA 1 (15) Luento Suorituskyvyn optimointi... 2 Tiedonhallintajärjestelmän rakenne... 3 Suunnittele... 4 SQL-komentojen viritys... 5 Tekninen ympäristö... 6 Fyysisen tason ratkaisut... 7 Indeksit...

Lisätiedot

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)

Lisätiedot

Tietokannan suunnittelu

Tietokannan suunnittelu HELIA TIKO-05 1 (12) ICT03D Tieto ja tiedon varastointi Tietokannan suunnittelu Tietokannan suunnitteluprosessi... 2 Tavoitteet...2 Tietojärjestelmän suunnitteluprosessi...3 Abstraktiotasot tietokannan

Lisätiedot

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000 HELIA 1 (15) Luento 2.7 Toiminnallisuutta tietokantaan... 2 Deklaratiivinen eheysvalvonta... 2 Proseduraalinen eheysvalvonta... 3 Eheysvalvonnan suunnittelusta... 4 Sääntöjen määrittely... 4 Toteutusvaihtoehdot...

Lisätiedot

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX SQL - perusteet SQL - yleistä Esa Salmikangas InMics SE Oy versio 16.6.2003 SQL - perusteet 1 SQL - perusteet 2 SQL Structured Query Language SQL on tietokantojen käsittelyyn kehitetty kieli yleisimmät

Lisätiedot

Jokaisella tiedostolla on otsake (header), joka sisältää tiedostoon liittyvää hallintatietoa

Jokaisella tiedostolla on otsake (header), joka sisältää tiedostoon liittyvää hallintatietoa Tietojen tallennusrakenteet Jokaisella tiedostolla on otsake (header), joka sisältää tiedostoon liittyvää hallintatietoa tiedot tiedostoon kuuluvista lohkoista esim. taulukkona, joka voi muodostua ketjutetuista

Lisätiedot

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

TIEDONHALLINNAN PERUSTEET - SYKSY 2013 TIEDONHALLINNAN PERUSTEET - SYKSY 2013 Kurssikoodi: Saapumisryhmä: Luento 5 XX00AA79-3013 TU12S2 Pasi Ranne 11.9.2013 11/9/13 Helsinki Metropolia University of Applied Sciences 1 Tietokannan normalisoinnin

Lisätiedot

KÄSITEANALYYSI PROSESSINA JA TARVEANALYYSI

KÄSITEANALYYSI PROSESSINA JA TARVEANALYYSI TIETOJEN MALLINNUS KÄSITEANALYYSI PROSESSINA JA TARVEANALYYSI HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI DOCENDO (2003, 2005) LUKU 3 S. 68 73 JA LUKU 4 (S. 79 84) JOUNI HUOTARI

Lisätiedot

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI 2000-2017 Tieto TAUSTAA Yritykselle tiedot ovat tärkeä resurssi päätöksenteon tukena (JIT) varastointi ja käyttö vaativat investointeja vrt. energia (lähde,

Lisätiedot

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI Tarkastellaan Tietokannan fyysistä suunnittelua Menetelmän vaihetta 4 Looginen suunoitelma muutetaan toimiviksi tauluiksi Id enimi snimi muuta 1 Aki Joki xxx

Lisätiedot

Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia.

Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia. Tietokantasuunnittelusta Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia toistuva tieto vie tilaa ylläpito muodostuu hankalaksi ylläpito-operaatioilla

Lisätiedot

HELIA TIKO-05 1 (28) ICT03D Tieto ja tiedon varastointi O.Virkki

HELIA TIKO-05 1 (28) ICT03D Tieto ja tiedon varastointi O.Virkki HELIA TIKO-05 1 (28) Relaatiomalli Relaatiomalli...2 Peruskäsitteet...3 Relaatio...5 Attribuutti ja arvojoukko...6 Monikko...7 Säännöt...8 Arvojoukkoeheyssääntö...8 Pääavain ja yksilön eheyssääntö...9

Lisätiedot

Muita tietokantaobjekteja. Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto

Muita tietokantaobjekteja. Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto Muita tietokantaobjekteja Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto Näkymät Näkymä (view) on looginen näyte tietokannan tauluista tai näkymistä Näkymä ei voi sisältää SELECT INTO,

Lisätiedot

MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO

MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO NÄKYMÄT Näkymä (view) on looginen näyte tietokannan tauluista tai näkymistä Näkymä ei voi sisältää SELECT INTO,

Lisätiedot

HELIA 1 (11) Outi Virkki Tiedonhallinta 4.11.2000

HELIA 1 (11) Outi Virkki Tiedonhallinta 4.11.2000 HELIA 1 (11) Access 1 ACCESS...2 Yleistä...2 Access-tietokanta...3 Perusobjektit...3 Taulu...5 Kysely...7 Lomake...9 Raportti...10 Makro...11 Moduli...11 HELIA 2 (11) ACCESS Yleistä Relaatiotietokantatyyppinen

Lisätiedot

Luento 2: Tiedostot ja tiedon varastointi

Luento 2: Tiedostot ja tiedon varastointi HELIA 1 (19) Luento 2: Tiedostot ja tiedon varastointi Muistit... 2 Päämuisti (Primary storage)... 2 Apumuisti (Secondary storage)... 2 Tiedon tallennuksen yksiköitä... 3 Looginen taso... 3 Fyysinen taso...

Lisätiedot

Käsiteanalyysi prosessina ja tarveanalyysi

Käsiteanalyysi prosessina ja tarveanalyysi Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Käsiteanalyysi prosessina ja tarveanalyysi kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003,

Lisätiedot

HELIA 1 (17) Outi Virkki Tiedonhallinta 4.11.2000

HELIA 1 (17) Outi Virkki Tiedonhallinta 4.11.2000 HELIA 1 (17) Luento 4.5 Normalisointi... 2 Tavoitteet... 2 Attribuuttien väliset riippuvuudet... 4 Funktionaalinen / moniarvoinen riippuvuus... 4 Transitiivinen / suora riippuvuus... 6 Täydellinen / osittainen

Lisätiedot

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas Tiedonhallinnan perusteet Viikko 1 Jukka Lähetkangas Kurssilla käytävät asiat Tietokantojen toimintafilosofian ja -tekniikan perusteet Tiedonsäilönnän vaihtoehdot Tietokantojen suunnitteleminen internetiä

Lisätiedot

On autoja, henkilöitä, Henkilöllä on nimi Autolla on omistaja, joka on henkilö. Taulu AUTO(rekno, malli) Taulu HENKILO(nimi, )

On autoja, henkilöitä, Henkilöllä on nimi Autolla on omistaja, joka on henkilö. Taulu AUTO(rekno, malli) Taulu HENKILO(nimi, ) Tietomallit Tietomallilla (data model) tarkoitetaan tiedon rakenteen ja tiedolle suoritettavan käsittelyn määrittelevää kehikkoa - käsitteistöä Tietoa voidaan tarkastella eri näkökulmista - eri abstraktiotasoilla

Lisätiedot

Tietokannan suunnittelu

Tietokannan suunnittelu Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Tietokannan suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 2 Jouni

Lisätiedot

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Relaatiomallin peruskäsitteet Harri Laine 1. Relaatiotietokannat DONOTP

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Relaatiomallin peruskäsitteet Harri Laine 1. Relaatiotietokannat DONOTP RINT THIS DOCUM ENT Relaatiotietokannat DONOTP Relaatiomalli Perustana rakennetason tietomalli relaatiomalli (the relational model of data) perusteoria: Codd 1970 ensimmäiset kaupalliset toteutukset 70-luvun

Lisätiedot

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, kurssikoe 29.2.2012 (vastauksia) Liitteenä on tiivistelmä SQL-syntaksista Kirjoita jokaiseen erilliseen vastauspaperiin kurssin

Lisätiedot

CSE-A1200 Tietokannat

CSE-A1200 Tietokannat CSE-A1200 Tietokannat 29.3.2016 CSE-A1200 Tietokannat 29.3.2016 1 / 40 Oppimistavoitteet: tämän luennon jälkeen Tiedät, miten tietokannan relaatioiden (taulujen) määrittelyt kirjoitetaan SQL:llä. Osaat

Lisätiedot

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä hyväksymispäivä arvosana arvostelija Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä Tuomas Husu Helsinki 20.2.2010 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto

Lisätiedot

Tietokanta (database)

Tietokanta (database) Tietokanta Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja 1 Tiedosto Ohjelmointikielissä apumuistiin tallennettuja tietoja käsitellään

Lisätiedot

D B. Tietokannan hallinta - kurssin tavoite. Kurssilla opitaan periaatteet. Edellytyksenä osallistumiselle on Tietokantojen perusteiden hallinta

D B. Tietokannan hallinta - kurssin tavoite. Kurssilla opitaan periaatteet. Edellytyksenä osallistumiselle on Tietokantojen perusteiden hallinta Tietokannan hallinta - kurssin tavoite Kurssilla opitaan periaatteet fyysisen tietokannan tallennuksesta ja käsittelystä tietokantakyselyiden muuntamisesta fyysisen tietokannan käsittelyoperaatioiksi kyselyn

Lisätiedot

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne HAAGA-HELIA Heti-09 1 (6) Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne Tietovarastotekniikan kehittyminen... 2 Tiedostopohjaiset ratkaisut... 2 Tiedoston palvelut... 3 Tiedostopohjaisten

Lisätiedot

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu HELIA 1 (21) Luento 4.1 Oliot ja Relaatiot... 2 Relaatiomalli... 2 Oliomalli... 2 Termejä... 4 Yhteensovituksen 3 tapaa... 5 1) Oliot relaatioina / tauluina ja RDBMS... 6 Olioluokka... 7 Olion identiteetti...

Lisätiedot

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja Tietokanta Tietokanta (database) jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja mikä tahansa tietokokoelma? --> erityispiirteitä Tietokanta vs. tiedosto 1

Lisätiedot

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen Tietojärjestelmä tuotantoympäristössä Tausta ja tavoitteet Tausta Kurssilla on opiskeltu suunnittelemaan ja toteuttamaan tietokanta, joka on pieni perustuu selkeisiin vaatimuksiin on (yleensä) yhden samanaikaisen

Lisätiedot

Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä

Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 582104 Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä 1 Luokkamallin lisäpiirteitä Erilaiset yhteystyypit kooste kompositio Muita luokkien välisiä suhteita riippuvuudet periytyminen eli luokkahierarkia

Lisätiedot

Relaatiotietokantojen perusteista. Harri Laine Helsingin yliopisto

Relaatiotietokantojen perusteista. Harri Laine Helsingin yliopisto Harri Laine Helsingin yliopisto Suosion syy? Yksinkertaisuus vähän käsitteitä helppo hahmottaa Selkeä matemaattinen perusta ei tulkintaongelmia kuten esim. UML:ssä teoria käytäntö kaavio: R(A 1 :D 1, A

Lisätiedot

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki 9.3.2010

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki 9.3.2010 HELIA TIKO-05 1 (22) SQL SQL... 2 Historiaa... 2 Standardit... 3 Käyttö... 4 Sql-komentojen kirjoittaminen... 5 DDL... 7 Tietokantaobjektien määrittely... 7 SQL:n tietotyypit... 8 Eheyssääntöjen määrittely...

Lisätiedot

UML - unified modeling language

UML - unified modeling language UML - unified modeling language Lähtökohtana: Booch, Rumbaugh, Jacobsson Tavoitteena Unified Method - syntyykö? Kehittäjänä: Rational Inc. Standardointi: Object Management Group (OMG) - vaiheessa Lähteet:

Lisätiedot

oheishakemistoja voi tiedostoon liittyä useita eri perustein muodostettuja

oheishakemistoja voi tiedostoon liittyä useita eri perustein muodostettuja Tietokantojen hakemistorakenteet Hakemistorakenteiden (indeksien) tarkoituksena on nopeuttaa tietojen hakua tietokannasta. Hakemisto voi olla ylimääräinen oheishakemisto (secondary index), esimerkiksi

Lisätiedot

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 relaatiomalli Harri Laine 1.

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 relaatiomalli Harri Laine 1. Relaatiotietokannat Relaatiomalli Perustana rakennetason tietomalli (the relational model of data) perusteoria: E.F.Codd 1970 ensimmäiset kaupalliset toteutukset 70-luvun lopulla yleistynyt 80-luvun lopulla

Lisätiedot

TK081001 Palvelinympäristö

TK081001 Palvelinympäristö TK081001 Palvelinympäristö 5 opintopistettä!! Petri Nuutinen! 8 opintopistettä!! Petri Nuutinen! RAID RAID = Redundant Array of Independent Disks Useasta fyysisestä kiintolevystä muodostetaan yhteinen

Lisätiedot

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta Jouni Huotari Martti Laiho (materiaali on osa virtuaaliammattikorkeakoulun Tietokantaosaaja-opintokokonaisuutta) opintokokonaisuutta)

Lisätiedot

Kari Aalto Saariston IT

Kari Aalto Saariston IT Saariston IT perustettu helmikuussa 2005 pitkä kokemus koulutuspalveluiden toimittamisesta Suomessa, Euroopassa ja Lähi-Idässä Arvot keskinäinen luottamus ja aito kumppanuus pitkäjänteinen yhteistoiminta,

Lisätiedot

CS-A1150 Tietokannat CS-A1150 Tietokannat / 43

CS-A1150 Tietokannat CS-A1150 Tietokannat / 43 CS-A1150 Tietokannat 27.3.2018 CS-A1150 Tietokannat 27.3.2018 1 / 43 Oppimistavoitteet: tämän luennon jälkeen Tiedät, miten tietokannan relaatioiden (taulujen) määrittelyt kirjoitetaan SQL:llä. Osaat päivittää

Lisätiedot

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, 3.5.2007, H.Laine Kirjoita kuhunkin erilliseen vastauspaperiin kurssin nimi, oma nimesi, syntymäaikasi ja nimikirjoituksesi

Lisätiedot

Oraclen syvin ydin. Pertti Eiskonen Yleisradio Oy Tietokanta-asiantuntija. OUGF syysseminaari 2002 Sivu 1

Oraclen syvin ydin. Pertti Eiskonen Yleisradio Oy Tietokanta-asiantuntija. OUGF syysseminaari 2002 Sivu 1 Pertti Eiskonen Yleisradio Oy Tietokanta-asiantuntija OUGF syysseminaari 2002 Sivu 1 Oracle 8i (8.1.7) muistinkäyttöä ja viritystä: SGA ja PGA mitä ne on ja niihin vaikuttavat init.orat SGA:n rakenne Kannan

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 10 TU00AA48-2002 TU10S1E Hannu Markkanen 14.-15.11.2011 9/10/12 Helsinki Metropolia University of Applied Sciences 1 SQL: Monen taulun kyselyt

Lisätiedot

SELECT-lauseen perusmuoto

SELECT-lauseen perusmuoto SQL: Tiedonhaku SELECT-lauseen perusmuoto SELECT FROM WHERE ; määrittää ne sarakkeet, joiden halutaan näkyvän kyselyn vastauksessa sisältää

Lisätiedot

Tietokannan suunnittelu

Tietokannan suunnittelu HELIA TIKO-05 1 (19) ICT03D Tieto ja tiedon varastointi Tietokannan suunnittelu Tietokannan suunnitteluprosessi... 2 Tavoitteet...2 Tietojärjestelmän suunnitteluprosessi...3 Abstraktiotasot tietokannan

Lisätiedot

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 SQL:n perusteet. Harri Laine 1. SQL tietokantakieli. SQL tietokantakieli

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 SQL:n perusteet. Harri Laine 1. SQL tietokantakieli. SQL tietokantakieli SQL tietokantakieli Relaatiomalliin pohjautuvat tietokannat Perustana relaatiomallin mukainen näkemys tietojen rakenteesta ja käsittelystä Tietokantojen rakenteen määrittelyssä ja käsittelymahdollisuuksissa

Lisätiedot

Haaga-Helia / TIKO-05 1 (12) Tietokannan suunnittelu ja Toteutus Outi Virkki

Haaga-Helia / TIKO-05 1 (12) Tietokannan suunnittelu ja Toteutus Outi Virkki Haaga-Helia / TIKO-05 1 (12) Tietotarpeet Tietotarpeiden määrittely... 2 Tietotarveanalyysi... 3 Lähtökohtana tietojenkäsittelytehtävät... 3 Määrittelyn sisältö... 4 Vaiheistus... 5 Tietolähteet... 5 Lähestymistapa...

Lisätiedot

D B. Tiedostojen käsittely

D B. Tiedostojen käsittely Tietokantojen tietoja säilytetään yleensä apumuistissa, lähinnä levymuisteissa Apumuistiin tallentamisen merkittäviä etuja keskusmuistiin nähden ovat tiedon säilyvyys (virtakatkon yli) säilytyskapasiteetin

Lisätiedot

Tiedonhallintajärjestelmän rakenne ja Suorituskyky

Tiedonhallintajärjestelmän rakenne ja Suorituskyky HELIA TIKO-05 1 (20) Tiedonhallintajärjestelmän rakenne ja Suorituskyky Tiedonhallintajärjestelmän rakenne... 2 SQL-käsittelijä... 3 Parsinta (Parser)... 3 Optimointi (Optimizer)... 3 Tilan käsittelijä...

Lisätiedot

Liitosesimerkki Tietokannan hallinta, kevät 2006, J.Li 1

Liitosesimerkki Tietokannan hallinta, kevät 2006, J.Li 1 Liitosesimerkki 16.02.06 Tietokannan hallinta, kevät 2006, J.Li 1 Esim R1 R2 yhteinen attribuutti C T(R1) = 10,000 riviä T(R2) = 5,000 riviä S(R1) = S(R2) = 1/10 lohkoa Puskuritilaa = 101 lohkoa 16.02.06

Lisätiedot

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi Miksi optimoidaan Relaatiotietokannan kyselyt esitetään käytännössä SQLkielellä. Kieli määrittää halutun tuloksen, ei sitä miten tulos muodostetaan (deklaratiivinen kyselykieli) Tietokannan käsittelyoperaatiot

Lisätiedot

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 SQL-perusteet. Harri Laine 1. SQL tietokantakieli

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 SQL-perusteet. Harri Laine 1. SQL tietokantakieli tietokantakieli :llä voidaan... määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta näytölle tai tiedostoon sovellusohjelman käyttöön

Lisätiedot

A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi

A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07 Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi A271117 TIETOKANNAT Tavoitteet Oppia tietokantojen suunnitteluperiaatteet Osata käyttää

Lisätiedot

HELIA TIKO-05 1 (20) ICT03D Tieto ja tiedon varastointi O.Virkki

HELIA TIKO-05 1 (20) ICT03D Tieto ja tiedon varastointi O.Virkki HELIA TIKO-05 1 (20) Normalisointi Normalisointi...2 Tavoitteet...2 Attribuuttien väliset riippuvuudet...4 Funktionaalinen / moniarvoinen riippuvuus...4 Täydellinen / osittainen riippuvuus...6 Suora /

Lisätiedot

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 Tietokannan suunnittelusta Harri Laine 1

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 Tietokannan suunnittelusta Harri Laine 1 Tietokantasuunnittelun pääperiaatteena on tiedon toiston välttäminen. Tiedon toistumiseen liittyy monenlaisia ongelmia toistuva tieto vie tilaa ylläpito muodostuu hankalaksi ylläpito-operaatioilla voi

Lisätiedot

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2006 Tiedon mallinnus ja tietokannat. Harri Laine 1. Tietokanta.

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2006 Tiedon mallinnus ja tietokannat. Harri Laine 1. Tietokanta. Tieto - data Digitaalisesti tallennettua informaatiota jostakin kohteesta Vapaamuotoinen tieto (unformatted) Esim. teksti, puhe, kuvat, Sisältö jäsentämätöntä Koneellinen käsittely vaikeaa paitsi kokonaisuutena

Lisätiedot