IHTE-1900 Seittiviestintä



Samankaltaiset tiedostot
IHTE-1900 Seittiviestintä

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

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

A TIETOKANNAT, 4 op Kevät TI09

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

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

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

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

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

Tietokanta (database)

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

Tietokannanhallintajärjestelmä (DBMS)

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Tietokantakurssit / TKTL

Tietokantojen perusteet

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

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

TIETOKANNAT JOHDANTO

Written by Administrator Monday, 05 September :14 - Last Updated Thursday, 23 February :36

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

SAP. Lasse Metso

HELIA 1 (1) Outi Virkki Tiedonhallinta :43

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

ZENworks Application Virtualization 11

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

Relaatiomalli ja -tietokanta

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

HELIA 1 (8) Outi Virkki Tietokantasuunnittelu

TIETOKANTOJEN PERUSTEET OSIO 14 MARKKU SUNI

KY TOMMI: toimintajärjestelmä energia-alalle. Energiapäivät, Tampere ( )

HELIA 1 (14) Outi Virkki Tiedonhallinta

TIETOKANNAN SUUNNITTELU

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

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

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

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

ITKA204 Tietokannat ja tiedonhallinnan perusteet

Kurssin hallinta -työväline

- Jarjestelmaasiantuntija Markku Jaatinen

ECDL Tietokannat. Copyright 2015 ECDL Foundation ECDL Tietokannat Sivu 1 / 7

Seminaari: Keskusmuistitietokannat. Keskusmuistitietokantojen samanaikaisuuden hallinta Ilkka Pullinen

HOJ J2EE & EJB & SOAP &...

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Avoin lähdekoodi. Jani Kylmäaho Maanmittauslaitos

MySQL ja PostgreSQL Seminaarityö

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

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

Linux rakenne. Linux-järjestelmä koostuu useasta erillisestä osasta. Eräs jaottelu: Ydin Komentotulkki X-ikkunointijärjestelmä Sovellusohjelmat

Työpöytävirtualisointi

KIURU Tietotekniikan sovellusprojekti

Case TUHTI. Projektin tunnuslukuja. ! Suuri perusjärjestelmäuudistus! Työt alkoivat kesällä ! Java luokkia n. 5000

Uusia tuulia Soneran verkkoratkaisuissa

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Kymenlaakson Ammattikorkeakoulu

Visma Liikkuvan työn ratkaisut Päivitysohje. Pääkäyttäjän opas

Johdatus rakenteisiin dokumentteihin

Virtualisointiympäristössä on kolme pääosaa: isäntä (host), virtualisointikerros ja vieras (guest).

Helsingin yliopisto, TKTL Tietokantojen perusteet, s 2000 WWW-tietokantasovellukset Harri Laine 1. vapaamuotoiset 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 K2009

Työasemien hallinta Microsoft System Center Configuration Manager Jarno Mäki Head of Training Operations M.Eng, MCT, MCSE:Security, MCTS

Johdanto. Kiinteistöhuoltoyhtiö tarvitsee järjestelmän huoltopyyntöjen hallinnointiin

Järjestelmäarkkitehtuuri (TK081702) Pilvipalvelut. Pilvipalvelut - lähtökohtia

Jouko Nielsen. Ubuntu Linux

Directory Information Tree

TERADATAN JA SAS DI STUDION YHTEISELO CASE LÄHITAPIOLA

Integrointi. Ohjelmistotekniikka kevät 2003

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

Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?

MatTaFi projektin HAKA-pilotti

Visma Liikkuvan työn ratkaisut

HELIA 1 (11) Outi Virkki Tiedonhallinta

HSMT J2EE & EJB & SOAP &...

Web-seminaari

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

Rajattomat tietoverkot ja niiden rooli pilvipalveluissa. Jukka Nurmi Teknologiajohtaja Cisco Finland

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

UNA PoC-yhteenveto CGI Aino Virtanen

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

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Maiju Mykkänen Susanna Sällinen

TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO

Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä

HAKURATKAISUN ANATOMIA - KURKISTUS PELLIN ALLE

Osio 4: Tietovirrat. Properties- eli ominaisuustiedostot Logger: lokitietojen käsittely

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

ecome Markkinoiden kehittynein julkaisujärjestelmä

CQRS, -ES, PACS, DICOM, WTF?

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

-Yhdistetty viestintä osana uutta tehokkuutta. Petri Palmén Järjestelmäarkkitehti

YTPA Tiedon hyödyntäminen

Transkriptio:

IHTE-1900 Seittiviestintä Tietokannat 15.11. Päivän aiheet Tietokantojen perusteita Mihin tietokantoja voidaan käyttää? Mitä hyötyä tietokannoista on? Esimerkkejä tietokantojen käytöstä Mihin tietokantoja tarvitaan? Monien seittisovellusten toteuttaminen olisi muuten vaikeata, esim. - verkkolehdet (StudiaMedia, MTV3 ) - verkkokaupat (kirjat, levyt, tietokoneet ) - lipunmyyntijärjestelmät (Finnair, VR ) - pankkipalvelut - mitkä tahansa todella laajat sivustot (Yahoo, TTY:n Haavi, Tutka ja julkiset sivut) - sivustot joiden sisältö usein muuttuvaa (esim. OINFOn sivut kaikille käyttäjille erilaiset) 1

Tiedostoihin perustuvat järjestelmät Myynnin järjestelmä Suunnittelu Laskutus asiakkaat tilaukset asiakkaat hinnat lähetetyt laskut Tiedostoihin perustuvat järjestelmät Myynnin järjestelmä Suunnittelu Laskutus asiakkaat tilaukset asiakkaat lähetetyt laskut 2

Tiedostoihin perustuvat järjestelmät Myynnin järjestelmä Suunnittelu Laskutus tilaukset asiakkaat lähetetyt laskut Tiedostoihin perustuvat järjestelmät Jokainen sovellus määrittelee itse tarvitsemansa tiedot ja määrittelee niitä Ongelmia ja rajoitteita: - tietojen eriytyminen ja eristyminen - tiedon monistuminen - tiedon riippuvuus sovelluksesta - yhteensopimattomat tiedostomuodot - tiedonhaun joustamattomuus sovelluksissa Tietokantajärjestelmät Myynnin järjestelmä Suunnittelu Laskutus Tietokannanhallintajärjestelmä (TKHJ) lähetetyt tilaukset laskut asiakkaat 3

Tietokanta Tietokokoelma - muodostaa hallinnollisen kokonaisuuden Tiedon oletetaan olevan suhteellisen pysyvää - tietoja voidaan haluta säilyttää jopa useiden (kymmenien) vuosien ajan Tietokannanhallintajärjestelmällä (TKHJ) hallitaan joukkoa loogisesti toisiinsa liittyvää tietoa Tietokannanhallintajärjestelmä TKHJ on yleensä ainoa sallittu tapa käsitellä tietokantaa TKHJ tarjoaa rajapinnat tietokannan käsittelyyn: - työkalut suurten tietomäärien käsittelyyn - tietojen tallennus ja hakeminen - tietojen suojaaminen luvattomalta käytöltä ja vahingoilta - useiden käyttäjien hallittu yhtäaikainen tiedonkäsittely Tietokantakieli Käyttäjä voi luoda tietokannan ja määritellä sen loogisen tietorakenteen - DDL: data definition language Tiedonhaku- ja käsittelyoperaatiot määritellään omalla kielellään - DML: data manipulation language - query language 4

Metatieto Tietoa tiedosta (vrt. HTML:n metadata) Mitä informaatiota tietyissä tallennetuissa tiedoissa on ja kuinka tiedot on tallennettu Esim. tietoa - käyttäjistä - käyttöoikeuksista - omistajista - tilastotiedoista - sallituista arvoista Tallennettu TKHJ:n tietohakemistoon Tietokantojen käytön etuja Tietojen - Monistumisen ja oikeellisuuden hallinta sekä yhdenmukaisuus - Jakaminen - Parempi saatavuus ja vastaavuus Enemmän informaatiota samassa tietomäärässä Skaalaedut Yhtenäistää käytäntöjä Tuottavuuden nousu Ylläpito helpottuu - Varmuuskopioinnin yms. Keskittäminen - Paremmat suojaukset ja turvallisuus Tietokantojen käytön ongelmia Monimutkaisuus Koko TKHJ:n hinta (peruskustannukset) Mahdollisesti tarvittava lisälaitteisto Suorituskyky (esim. reaaliaikajärjestelmissä) Vakavan vian sattuessa suurempi vaikutus 5

Tietokantoihin liittyviä rooleja Loppukäyttäjät - Yleensä erillisten sovellusten kautta Sovellusten tekijät, tietokantasuunnittelijat Tietokannan hoitaja - Takaa tietokannan toimivuuden - Käyttöoikeudet, suorituskyky, konfigurointi, tk-suunnittelu, konsultointi, käyytötuki, käytön seuranta, varmistukset, levytila jne Lisäksi ehkä esim. operaattorit, työkalukehittäjät jne Tietokantojen jaottelua Henkilökohtaiset tietokannat - henkilökohtaisella koneella, yksi käyttäjä, yksi käyttötarkoitus Työryhmätietokannat - paikallisverkko, yleensä < 25 henkilöä, yksi käyttötarkoitus Osasto/pienyritystietokannat - paikallisverkko, yleensä < 100 henkilöä, useita käyttötarkoituksia Yritystason tietokannat - koko organisaation päätöksentekoa tulevia, suuria Ensimmäiset tietokannat Ensimmäiset kaupalliset TKHJ:t 1960-luvulla - kehitetty tiedostojärjestelmien pohjalta Eivät tukeneet korkean tason kyselykieliä Täytetyt tietomallit kuvastivat tiedon talletusrakenteita Talletettu tieto muodostui useista pienistä tietoalkioista ja tietoihin kohdistuvat kyselyt ja päivitykset yleisiä Esim. lentoyhtiön paikkavarausjärjestelmään talletettiin tietoalkioina paikkavaraukset, lentoaikataulut ja hinnasto 6

Tietokantojen rakenne Yleisimmät tietomallit - Hierarkkinen tietomalli - Verkkomalli - Relaatiomalli - Oliomalli - Olio-relaatiomalli Esimerkit Johdatus tietokantajärjestelmiin -kurssin materiaalista (Jari Peltonen, TTY) 90% nykyisistä tietokannoista relaatiomallin mukaisia - lähtökohtana 1970-luvulla kirjoitettu artikkeli A relational model for large shared data banks (Codd) - ideana esittää tieto käyttäjälle tauluina (relaatioina): varsinainen tiedon talletusrakenne peitetään käyttäjältä Hierarkkinen tietomalli Y1 Oy Aikon Ab Tampere T1 Känny A 100 anaani 50 Green Spiece ltd. Temmes T1 anaani 30 Päärynä 40 T3 Omena 50 Verkkomalli Y 1 Oy Aikon Ab Tampere Y1 Y1 T1 T1 Känny anaani Y 2 Green-spiece ltd. Temmes T3 T4 T3 T4 Päärynä Omena 7

Relaatiomalli Valmistus TuoteID YritysID Määrä T1 Y1 100 Tuotteet TuoteID T1 T_nimi Känny Ryhmä A Y1 50 30 anaani T3 40 T3 Päärynä T4 50 T4 Omena Yritys YritysID Y_nimi Kaupunki Y1 Oy Aikon Ab Tampere Greenspiece ltd Temmes SQL Yleisesti käytetty relaatiomalliin perustuva standardoitu kyselykieli (Structured Query Language) Lähes kaikki relaatiotietokannat ymmärtävät SQL:ää Esim. SELECT Y_nimi FROM Yritys WHERE Kaupunki = Tampere Tietokantaliitynnät Valikko/lomakepohjaiset, graafiset, viivakoodi, luonnollinen kieli, seittiliitynnät jne Avoimet ja yhtenäiset rajapinnat (API) Hajautus: - tietojen ja/tai tietojenkäsittelyn teknistä hajauttamista Asiakas-palvelin arkkitehtuuri - tietovarastojen ja käyttäjäosuuden toisistaan erottaminen 8

Asiakas-palvelin arkkitehtuuri Tietokantajärjestelmissä voidaan asiakas-palvelin arkkitehtuuria soveltaa usealla tavalla Miten tehtävät jaetaan asiakkaan ja palvelimen välillä: - koko TKHJ on palvelin, mutta ainoastaan käyttöliittymä on asiakas. Käyttöliittymä kommunikoi käyttäjän ja palvelimen kanssa (yksinkertaisin tapa) Miten tehtävät jaetaan asiakkaan ja palvelimen välillä: - asiakkaan tehtävien lisääminen tasoittaa järjestelmän kuormitusta, koska kuormituksen kasvaessa palvelimista tulee pullonkauloja - pullonkauloja pyritään poistamaan esim. valmiiksi tallennetuilla proseduureilla Tapahtumankäsittely OLTP, OnLine Transaction Processing Tarkoituksena estää yhteisen tietokannan samanaikaisesta käytöstä aiheutuvat ongelmat OLTP-järjestelmät sisältävät paljon lyhyitä tapahtumia joissa käsitellään aina ajantasaista tietoa Tyypillisiä OLTP-järjestelmiä esim. pankkijärjestelmät ja suuret varausjärjestelmät: yhtäaikaisia käyttäjiä saattaa olla kymmeniä tuhansia Asiakkaiden ja palvelinten välillä toimii tapahtumankäsittelymonitori Tietovarastotekniikka Yksi tapa toteuttaa suorituskyvyltään hyviä päätöksentekojärjestelmiä suurissa ympäristöissä Käytetään nykyisen toiminnan pohjana tulevan toiminnan ennustamiseksi Keskeisenä tavoitteena liiketoiminnan kehittäminen, kannattavuuden parantaminen - kerätään yhteen tiedot, jotka erityisesti tukevat päätöksentekoa - laitetaan tiedot tehokkaaseen TKHJ:ään - tarjotaan helppo käyttömahdollisuus 9

Nykyajan vaatimuksia Yhä nopeammin vaihtuvia tieto- ja raportointitarpeita Organisaatiotasoinen tietojen käyttö ja analysointi - eri järjestelmien tietojen yhdistäminen Tieto pitää olla saatavilla kaikkialla Yhä pienempiä järjestelmiä Yhä suurempia järjestelmiä - Enemmän käyttäjiä - Suurempia tietomääriä Tietokannat seitissä: etuja Uusi graafinen, helposti muokattava käyttöliittymä - yleinen, helposti lähestyttävä - riippumaton verkkojärjestelmistä, laitteistosta, käyttöjärjestelmästä - voidaan kutsua myös muita verkossa ajettavia sovelluksia - eri tietotyyppien esitystavat ratkaistu valmiiksi - voi säästää kehitystyötä Uusi jakelukanava tietokantojen tiedoille Seitin suosio Saatavilla mistä vaan, koska vaan Edulliset asennus- ja käyttökustannukset Helppo tapa C/S-toteutuksiin Tietokannat seitissä: ongelmia Luotettavuus: esim. meneekö tieto perille? Turvallisuus: käyttäjätunnistus, turvattu tiedonsiirto Kustannukset: monimuotoisten sivujen ylläpito Järjestelmän skaalautuvuus HTML:n rajoitukset ja keskeneräinen kehitystyö Yhteyden tilattomuus Kaistanleveys Tehokkuus/suorituskyky Tietokantaosaamisen lisäksi perustamisessa tarvitaan TCP/IP-toteutusosaamista Ei yhdenmukainen perinteisten C/S toteutusten kanssa 10

Tietokannat seitissä: miksi? Dynaamisesti rakennettavat sivustot - sisältö aina ajan tasalla, ylläpito vähenee erityisesti suurissa sivustoissa Sisällön ja ulkoasun erottaminen Helppo laajennettavuus Vuorovaikutteisuuden lisääminen Kompleksisuuden hallinta Loppukäyttäjän ei osattava HTML-kieltä WSamanaikaiset käyttäjät Tietokannat seitissä: miten? Seittiohjelmointi avuksi, esim. - CGI: yleinen, yksinkertainen, kieliriippumaton, palvelinriippumaton - Perl, Python jne - Piparit: pyrkimys eroon tilattomuudesta - Server API: laajennuksia palvelimiin - JAVA: appletit, servletit - Javascript - Active Srves Pages (ASP) - jne Tehtävä 8 viikko 45 Esimerkin mukainen www-lomake, jossa on - Valintanappeja (radiobutton) - Tarkistusruutuja (checkbox) - Tekstikenttiä - Painikkeita Oppimispäiväkirja, n. 1500 merkkiä Dedis torstaina 22.11. klo 16.00 11

Lähteet Esimerkit: - Kurssin 8102300 Johdatus tietokantajärjestelmiin luentomoniste (Jari Peltonen) Johdatus tietokantajärjestelmiin kurssin linkkisivu - http://www.cs.tut.fi/~johtika/linkit/ 12