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

Samankaltaiset tiedostot
Tietokannanhallintajärjestelmä (DBMS)

HELIA 1 (1) Outi Virkki Tiedonhallinta :43

Tiedonhallintajärjestelmän rakenne ja Suorituskyky

HAAGA-HELIA Heti-09 1 (14) ICT05: Tiedonhallinta ja Tietokannnat O.Virkki Transaktionkäsittely

HELIA 1 (14) Outi Virkki Tiedonhallinta

Tietokanta (database)

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

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

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

Tietohakemisto ja Transaktionkäsittely

Haaga-Helia HeTi-09 1 (20) Outi Virkki, Tiina Mikkola ICT05 Tiedonhallinta ja tietokannat Johdanto

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

IIO30220 Database Management / Tietokannan hallinta TAPAHTUMIEN HALLINTA JOUNI HUOTARI ( )

HELIA 1 (15) Outi Virkki Tiedonhallinta

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu

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

Tietokantakurssit / TKTL

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

HELIA 1 (20) Outi Virkki Tiedonhallinta

TIETOKANTOJEN PERUSTEET MARKKU SUNI

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

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä

HELIA 1 (12) Outi Virkki Tiedonhallinta

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

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

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

Maiju Mykkänen Susanna Sällinen

Tietokantojen perusteet

Järjestelmänvalvontaopas

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

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

HELIA 1 (19) Outi Virkki Tietokantasuunnittelu

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

D B. Tiedostojen käsittely

Luento 3 Tietokannan tietosisällön suunnittelu

Suunnitteluvaihe prosessissa

Action Request System

HELIA 1 (11) Outi Virkki Tiedonhallinta

HELIA TiKo-05 1 (10) Outi Virkki ICT03D Tieto ja tiedon varastointi yrityksessä

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Poweria analytiikkaan

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI

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

Luento 2: Tiedostot ja tiedon varastointi

Ohjelmoinnin perusteet Y Python

Sovellusarkkitehtuurit

Samanaikaisuuden hallinta. tietokantapalvelimessa. Tiedonhallintaa. Alkuper. versio: Jaakko Rantanen Pieniä korjauksia: Jouni Huotari 26.2.

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

TOIMINNALLINEN MÄÄRITTELY MS

Ohjelmiston toteutussuunnitelma

HELIA 1 (19) Outi Virkki Tietokantasuunnittelu

HAAGA-HELIA Heti-09 1 (17) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Suorituskyky

HELIA 1 (14) Outi Virkki Tiedonhallinta

TIETOKANNAT JOHDANTO

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

POWER analytiikka-alustana

HELIA 1 (19) Outi Virkki Käyttöliittymät ja ohjelman suunnittelu

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

GDPR-projektien ja johtoryhmien kuulumisia GDPR-päivä / Helsinki EU General Data Protection Regulation (GDPR) Juha Sallinen / GDPR Tech

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

FuturaPlan. Järjestelmävaatimukset

ULLA SANNIKKA. SENIORIN TIETOKONEOPAS Windows 10

FYYSINEN SUUNNITTELU

Interfacing Product Data Management System

A TIETOKANNAT, 4 op Kevät TI09

työssäoppimispaikan työtehtävissä toimiminen ammattiosaamisen näytön suorittaminen näyttösuunnitelman mukaan Ammattitaidon osoittamistavat

IHTE-1900 Seittiviestintä

IHTE-1900 Seittiviestintä

Backup Exec 3600 Appliance

Aditro Tikon ostolaskujen käsittely versio 6.2.0

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

Pikaopas. Ohjeiden etsiminen Hae ohjesisältöä napsauttamalla kysymysmerkkiä.

ATK yrittäjän työvälineenä

HELIA 1 (14) Outi Virkki Tiedonhallinta

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

Oliotietokannat. Nääsvillen Oliopäivät Pekka Kähkipuro Kehitysjohtaja, FT

HELIA 1 (13) Outi Virkki Tietokantasuunnittelu

TERADATAN JA SAS DI STUDION YHTEISELO CASE LÄHITAPIOLA

SQLite selvitysraportti. Juha Veijonen, Ari Laukkanen, Matti Eronen. Maaliskuu 2010

18 LIITTYMÄT MUIHIN JÄRJESTELMIIN

Järjestelmäarkkitehtuuri (TK081702) Yritysarkkitehtuuri. Muutostarpeet

Finnish Value Pack Asennusohje Vianova Systems Finland Oy Versio

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

Käyttöjärjestelmän rakenne

Luento 5: YKSINKERTAINEN SEGMENTOINTI JA SIVUTUS

Novapoint Finnish Value Pack Asennusohje Mar-06 1(5)

IIO10200 Tietokantaohjelmointi (4 op)

Fyysinen suunnittelu

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

TIEDONHALLINTA - SYKSY Luento 1. Saapumisryhmä: TXQ16ICT, TXQ16S1 ja TXQ16PROS. 27/8/17 Helsinki Metropolia University of Applied Sciences

Client Management- ja Mobile Printing -hallintaratkaisut. Asiakirjan osanumero:

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

TIETOKANNAN SUUNNITTELU

TALLENNETAAN MUISTITIKULLE JA MUISTIKORTILLE

1.1 Käsitteet ja termit 1.2 Historia. Luku 1. Johdanto. ITKA204 kevät

Versionhallintaa. Versionhallinnan käyttöönotto SAS ympäristössä

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

HELIA 1 (14) Outi Virkki Käyttöliittymät ja ohjlmiston suunnittelu

DI Studion käyttökokemuksia. Kaisu Ikonen, Tilastokeskus

Transkriptio:

HAAGA-HELIA Heti-09 1 (6) Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne Tietovarastotekniikan kehittyminen... 2 Tiedostopohjaiset ratkaisut... 2 Tiedoston palvelut... 3 Tiedostopohjaisten ratkaisujen ongelmia:... 4 Tietokantapohjaiset ratkaisut... 5 Tietokannan ja sovelluksen työnjako... 6 Tietokannan hallintajärjestelmän palvelut... 7 Tietokannan 3-tasomalli... 9 Tietokantapohjaisten ratkaisujen etuja... 10 Tietokantapohjaisten ratkaisujen haittoja (?)... 11 Tiedonhallintajärjestelmän rakenne... 12 SQL-käsittelijä... 13 Parsinta (Parser)... 13 Optimointi (Optimizer)... 13 Tilan käsittelijä... 14 Puskurin käsittelijä (Buffer Manager)... 14 Tiedoston käsittelijä (File Manager)... 14 Transaktion käsittelijä... 15 Samanaikaisuuden hallinta (Concurrency Control)... 15 Toipumisen hallinta (Recovery Control)... 15

HAAGA-HELIA Heti-09 2 (6) Tietovarastotekniikan kehittyminen Tiedostopohjaiset ratkaisut Kulta-aika 1950-1960 luvut Kukin sovellus määritteli oman datansa Tyypillisesti vain yhden sovelluksen käytettävissä kerrallaan *) Tyypillisesti vain yhden käyttäjän käytettävissä kerrallaan *) Sovellus 1 Sovellus 2 Sovellus 3 Tietovarasto 1 Tietovarasto 2 Tietovarasto 3 *) ilman mittavaa ohjelmointityötä

HAAGA-HELIA Heti-09 3 (6) Tiedoston palvelut Perustaminen Poistaminen Kopioiminen Siirto Uudelleen nimeäminen Avaaminen Luku Kirjoitus Sulkeminen (etsi, lue) (lisäykset, muutokset, poistot) Yksinkertaiset suojausmahdollisuudet (käyttöjärjestelmän tarjoamat)

HAAGA-HELIA Heti-09 4 (6) Tiedostopohjaisten ratkaisujen ongelmia: Tiedon riippuvuus (Dependency) Tietovaraston rakenne oli kuvattu vain sitä käsittelevässä ohjelmassa (ns. Tietovaraston ohjelmariippuvuus) Tietovaraston rakenteen muuttaminen aiheutti muutoksia myös sitä käsittelevään ohjelmaan (ns. Ohjelman tietoriippuvuus) Eri tiedostoissa olevien tietojen käyttö hankalaa = erillisyys Tiedostot määritelty eri ohjelmointikielellä = = yhteensopimattomat tiedostot Kiinteät kyselyt & päivitykset = ohjelmoitava Tiedon monistuminen (Duplication) Moneen kertaan tallennettu tieto saattoi olla ristiriitaista eri tiedostoissa Moneen kertaan tallennettu tieto vaati moninkertaisen tallennustilan Käsittelyn & koordinoinnin tarve kasvaa samalla Tiedon suojaus työlästä (Integrity & Sequrity) Tietojen yhteiskäyttö työlästä: tiedon eheydestä huolehtivat mekanismit ohjelmoitava itse Virhetilanteiden hallinta työlästä: virhetilanteista toipuminen ohjelmoitava itse Käyttöoikeuksien hallinta työlästä: käyttöoikeuksien valvonta ohjelmoitava itse

HAAGA-HELIA Heti-09 5 (6) Tietokantapohjaiset ratkaisut 1970-luku -> Tiedon tallennuksesta ja hausta vastaa keskitetysti tietokannan hallintajärjestelmä (Database Management System; DBMS) Sovellusohjelma ei käsittele tietoa suoraan vaan DBMS:n kautta Moni sovellus voi käyttää yhtäaikaa samaa tietovarastoa Moni käyttäjä voi käyttää yhtäaikaa samaa tietovarastoa Tietovaraston ohjelmariippumattomuus Sovelluksen tietoriippumattomuus Sovellus 1 Sovellus 2 Sovellus 3 Tiedonhallintajärjestelmä Tietovarasto 1 Tietovarasto 3 1. Verkkotietokannat 70-luku 2. Hierarkkiset tietokannat 70-luku 3. Relaatiotietokannat 80-luku 4. Oliotietokannat 2000-luku?

HAAGA-HELIA Heti-09 6 (6) Tietokannan ja sovelluksen työnjako Käyttäjä Sovellus Käsittelee näyttölomakkeen dataa Käsittelee raporttien dataa Luo ja välittää hakuja ja päivityksiä DBMS Lukee tietokannan tietoja Päivittää tietokannan tietoja Luo ja ylläpitää tietokannan tietorakenteita Valvoo tietokannan eheyssääntöjä Huolehtii tapahtumankäsittelystä Kontrolloi käyttöoikeuksia Huolehtii varmuuskopioista Tietokanta Data Metadata (tietohakemisto) Hakemistorakenteet Käyttäjät & käyttöoikeudet

HAAGA-HELIA Heti-09 7 (9) Tietokannan hallintajärjestelmän palvelut 1. Tiedon varastointi, haku ja päivitys Dbms:n perustoiminto Ohjelmoijan ei tarvitse tietää fyysistä talletusrakennetta 2. Eheyden valvonta Tieto pysyy virheettömänä ja ristiriidattomana (määrittelyjen mukaisena) Menetelmät virheettömyyttä ja ristiriidattomuutta tukevien sääntöjen määrittelyyn 3. Tapahtumakäsittely Päivitystapahtuman pitää onnistua kokonaan tai peruuntua kokonaan Samanaikaiset päivitykset eivät saa tietokantaa ristiriitaiseen tilaan Mikään häiriötilanne ei saa tietokantaa ristiriitaiseen tilaan 4. Samanaikaisuuden hallinta Samanaikaiset päivitykset eivät häiritse toisiaan Samanaikaiset päivitykset eivät saa tietokantaa ristiriitaiseen tilaan Osa tapahtumankäsittelyä 5. Toipuminen Mikään häiriötilanne ei saa tietokantaa ristiriitaiseen tilaan Osa tapahtumankäsittelyä

HAAGA-HELIA Heti-09 8 (9) 6. Käyttöoikeuksien hallinta Menetelmät käyttäjien tunnistamiseen Menetelmät käyttöoikeuksien määrittelyyn ja valvontaan 7. Tietohakemisto Sisältää määrittelyt tietokantaan talletetusta tiedosta Metadataa mm. taulujen, avainten, sääntöjen, käyttäjien yms. määrittelyt 8. Tietoliikennetuki Osattava toimia yhdessä eri tietoliikenneprotokollien kanssa 9. Apuohjelmat Esim. Tiedon lataaminen tietokantaan Tiedon vienti / kopiointi tietokannasta Varmuuskopiointi Valvonta- & hallintaohjelmisto Tilastointi (esim. suorituskykyyn / käyttöön liittyen) Sovelluskehitin

HAAGA-HELIA Heti-09 9 (9) Tietokannan 3-tasomalli Ansi Sparc arkkitehtuuri Ulkoinen näkymä 1 Ulkoinen näkymä 2 Ulkoinen näkymä n Käsite kaavio Sisäinen kaavio Fyysisen tason toteutus piilotetaan Modulaarisuus: Muutos ulkoisella tai sisäisellä tasolla ei aiheuta muutoksia muihin tasoihin Ohjelma tieto -riippumattomuus

HAAGA-HELIA Heti-09 10 (9) Tietokantapohjaisten ratkaisujen etuja Tiedon ohjelmariippumattomuus Tiedon parempi saavutettavuus Ad hoc käsittely ilman vaativaa ohjelmointia... Eri sovellusten tietojen yhdistäminen helpompaa Parempi ylläpidettävyys Tiedon eheys (Integrity) Redundanssin hallinta / eliminointi Eheyssääntöjen määrittely Tiedon yhteiskäyttöisyys helpompaa Toipumismekanismit virhetilanteiden varalle Tiedon suojaus (Sequrity) Käyttöoikeuksien hallinta yksityiskohtaisella tasolla Ohjelmoinnin tehokkuus Standardi käsittelykieli Tietyt eheydestä, tietoturvasta ja toipumisesta vastaavat mekanismit valmiina ei tarvitse itse ohjelmoida

HAAGA-HELIA Heti-09 11 (9) Tietokantapohjaisten ratkaisujen haittoja (?) Monimutkaisuus Hinta Ohjelmisto Laitteistovaatimukset Ylläpitotyö

HAAGA-HELIA Heti-09 12 (9) Tiedonhallintajärjestelmän rakenne SQL- liittymä Sovellusohjelma SQL- komentoja SQL- käsittelijä (SQL Processor) Tapahtuman käsittelijä (Transaction Manager) Tilan käsittelijä (Storage Manager) DATA & METADATA

HAAGA-HELIA Heti-09 13 (9) SQL-käsittelijä Parsinta (Parser) SQL-lauseen jäsennys Syntaksin tarkistus Taulu- ja kenttäviittausten tarkistus Käyttöoikeuksien tarkistus Optimointi (Optimizer) Suoritussuunnitelman valinta l. käytettävät saantimenetelmät Tarvittavat tiedot löytyvät yleensä tietohakemistosta (metadata) Suoritussuunnitelmiin ja saantimenetelmiin palataan myöhemmin

HAAGA-HELIA Heti-09 14 (9) Tilan käsittelijä Puskurin käsittelijä (Buffer Manager) Keskusmuistin käsittely Pyytää tarvittavat t (page / block) tiedostonkäsittelijältä ja sijoittaa muistiin (elleivät ne ole jo siellä) Palauttaa t tiedostonkäsittelijälle levylle kirjoitusta varten Tiedoston käsittelijä (File Manager) Tiedostojen sijainti levyillä Saantimenetelmät Hakee / kirjoittaa tarvittavat t CPU Puskuriallas hakuja kirjoituksia Tietokantatiedostot

HAAGA-HELIA Heti-09 15 (9) Transaktion käsittelijä Samanaikaisuuden hallinta (Concurrency Control) Eheyden ja erillisyyden hallinta (Consistency & Isolation) Lukitukset Toipumisen hallinta (Recovery Control) Jakamattomuuden ja pysyvyyden hallinta (Atomicity & Durability) Lokit Transaktion käsitteeseen palataan myöhemmin