Tietokannat I Kevät 2007 Olli Luoma.

Slides:



Advertisements
Samankaltaiset esitykset
Osaamisen ja sivistyksen parhaaksi Kansallisen opetustoimen tietomallin vaatimukset korkeakoulujen tietomallille.
Advertisements

Active directory.
1 Opiston Moodleopas KALVOSTO 1 – JOHDANTO KTOL:n Moodle-työryhmä Olli Ruohomäki.
Tietojärjestelmät 2.
S ysteemianalyysin Laboratorio Teknillinen korkeakoulu Kimmo Berg Optimointiopin seminaari - Kevät 2005 / 1 Sähköinen kaupankäynti Kimmo Berg.
Relaatiomalli •Ted Codd 1970 •Matemaattinen perusta •Helppo toteuttaa •Helppo omaksua •Käytetyin tietomalli •Muodostaa perustan kurssin myöhemmille asioille.
Tietokanta.
Tietokannan hallintajärjestelmät. 6/29/20142 Tekijäryhmä •Timo Hakala •Joonas Jokinen •Jussi Koskela •Santeri Lehtonen.
Tietojen hallinta Alkuperäinen teksti:
Pupesoft myyntireskontra
Tietokannan suunnittelu
Erik Fallenius Kevät  Taustaa ◦ Ontologiat  Tavoitteet  Teknologiat ◦ Dojo/AJAX ◦ JSON ◦ SOAP  Projektin kulku  Lopputulos – demo.
2.8.3 Abstraktit tietotyypit
W w w. h a m k. f i Wiki koulutus Leenakaija Lehto
Aggregaattifunktiot (1)
EXtensible Markup Language
Valitse sanomapalkissa Ota muokkaus käyttöön,
Netvibes henkilökohtaisena oppimisympäristönä Kiravo – kirjasto avoimena oppimisympäristönä Biblär – biblioteket som ett öppet lärcentra Krista Auvinen.
Tietokannat II Lasse Bergroth Turun yliopisto, IT-laitos Kevät 2013
Pasi Helasuo Työn valvoja Professori Jukka Manner
VB:n tietokantakäsittely
S Tiedonsiirto ja yhteyskäytännöt tietoliikenteen perusasioita top-down -lähestymistapa ohjelmistotekniikan näkökulma tavoitteena toimivat sovellukset.
Tietoyhteiskunnan palveluarkkitehdit ja -rakentajat © 2014 Gofore 1 ePerusteet – tietomalli ja rajapinnat Jarkko Hyöty Opetushallituksen tarjoamien.
Replikointi MySQL Server -tuotteella - alustava selvitys -
Ohjelmistotekniikka - Tenttiin valmistautumisesta Kevät 2003 Hanna-Kaisa Lammi LTY/Tite.
UMF I Luento 2. Aika Luennot, Klo 14–16 to 4.9 – ke 10.9 ke 24.9 – ke 1.10 ke – pe Demot, Klo 10–12/12–14/14–16 Pe 12.9, Ti 16.9, Pe 19.9.
Relaatioalgebra (1) Kokoelma relaatioiden käsittelyyn tarkoitettuja operaatioita Operaatiot muuntavat relaatioita uusiksi relaatioiksi Muodostaa perustan.
Internet-projekti - MUM2TM Heikki Hietala Jukka Mutikainen TIKO – Malmi
XML -kielen perusteet SIMO Seminaari Antti Mäkinen.
Erilaiset liitokset FROM-osassa voidaan määritellä relaatio myös erilaisia liitosoperaatioita käyttäen Vasen, oikea ja täysi puoliliitos eli ulkoliitos.
Monikon lisääminen (1) Luetellaan kaikki lisättävän rivin arvot INSERT INTO Asiakas VALUES (4, ’Assi’, ’Asiakas’); Luetellaan vain osa arvoista; muut arvot.
SQL Standardoitu kieli, jonka avulla voidaan
HAJAUTTAMISEN IDEAA SEPPO RÄSÄNEN SAVONIA-AMMATTIKORKEAKOULU TERVEYSALA, KUOPIO Ohjelmistotekniikka ja projektinhallinta, 4 op.
Käsitteellisen mallinnuksen tekniikkaa
Netvibes henkilökohtaisena oppimisympäristönä Kiravo – kirjasto avoimena oppimisympäristönä Biblär – biblioteket som ett öppet lärcentra Krista Auvinen.
Johdanto Teppo Räisänen, Principal Lecturer Oulu University of Applied Sciences, School of Business and Information Management
Tietokannat –kurssi SQL peruskyselyt
Ohjelmistotestaus Turun yliopisto, Informaatioteknologian laitos, periodi 4 / 2011 Kurssin kuvaus.
LISp_miner ohjelman voi ladata osoitteesta: Sijoita se asemaan C:\ Olkoon meillä seuraava tenttiä koskeva tiedosto (tekstitiedosto.
– Ohjelmistojen mallintaminen, mallintaminen ja UML.
Tietokantojen historia ennen SQL:ää 1950-luvulta 1980-luvulle.
Miksi tietokannattMyn1 Miksi tietokannat Esim. kirjastossa oli kortisto, joka koostui käsin täytettävistä arkistokorteista. Kortit oli järjestetty tekijän.
11. Relaatiotietokannan suunnittelualgoritmit ja lisäriippuvuudet Tällä kurssilla käsitellään kirjan luvusta 11 ainoastaan algoritmi 11.1 häviöttömän liitoksen.
Yleistä Kotisivuja päivitetty Demoryhmät Luentomonisteen ensimmäiset osat Luentokalvot jaossa Demot alkavat maanantaina Selvitä oma demoryhmäsi Tutustu.
Tietokannat Tietotekniikan perusteet Pekka Orponen.
Java - Tietokanta. JDBC=Java database connectivity  ODBC:n kaltainen ohjelmointiliittymä SQL- tietokantoihin  Koostuu Java-kehitysympäristön (esim.
1 © Jukka Juslin Luokat, attribuutit ja metodit Yleistietoa: seuraavalla koulutusviikolla tarkempi käsittely.
Kaakkuri Sovellusprojekti Esityksen rakenne Projektiorganisaatio Projektiorganisaatio Taustatietoja Taustatietoja Sovelluksen ominaisuudet.
Tietokannan hallinta Kevät 2006 Jan Lindström R&G Chapter 1.
PHP ja MySQL PHP: Hypertext Preprosessor. PHP, johdanto Komentosarjakieli, joka on suunniteltu dynaamisen sisällön tuottamiseen verkossa PHP on sekä kieli,
Tietokantapalvelimet Ville Parviainen. Sisältö Yleistä tietokannoista SQL PostgreSQL MySQL MySQL vs. PostgreSQL Linux -työ.
SHAMAN-projekti  Projektiryhmä Marko Andersson Mika Rinkinen Matti Törmä Timo Valonen  Tilaaja Jyväskylän yliopiston atk-keskus.
Projektityöskentely Luento 1: kurssin käytännön asiat Hanna-Kaisa Lammi
Tekijänoikeudellisista sopimuksista Mikko Huuskonen, OTT, dos Neuvotteleva virkamies, TEM.
Projektinhallinta it. lut
Tietokantapalvelimet -Mikko Pehkonen, Tite4. Tietokantapalvelimista  DBMS (Database Management Systems)  Tarkoitettu tiedon keskitettyyn hallintaan.
Jenna Nyblom Katri Vanhatalo Oskari Anttalainen
TIETOKANNAT MySQL ja PostGRE Jussi Toivakka ja Juha Törö.
Käsitemallin suunnittelutyökalut
Tietokantamoottorit Suosittuja tietokantamoottoreita: MySQL SQLite
FINAN TIETOJÄRJESTELMÄT
Tietokanta (database) on kokoelma tietoja, jotka liittyvät tavalla tai toisella toisiinsa (esim. henkilö -> auto -> katsastus aika -> …) Tietokannan (relaatiomalli)
Mitä tällä tunnilla tehdään?
T Audiosignaalien käsittely, 3 op
Tietokannat I Kevät 2007 Olli Luoma.
Tietomallista tietokannaksi
PaikkaOppi Mobiilin käyttöohje
Sisältö PostgreSQL MySQL Historia yms. ORDBMS Ominaisuuksia Asennus
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö
PHP Tietokantaohjelmointi 2
Esityksen transkriptio:

Tietokannat I Kevät 2007 Olli Luoma

Kurssista Yleistä Henkilöt, ajat ja paikat Kurssimateriaali Laajuus 5 op, taso riippuu suuntautumisvaihtoehdosta Luennot 28 h, Demot 10h ja loppukuulustelu Kurssin kotisivu: http://staff.cs.utu.fi/~olallu/TKAN1/ Henkilöt, ajat ja paikat Luennot: Olli Luoma; Ke 14-16 ja To 10-12 Alpha Demot: Olli Luoma, Mikko Savela ja Kimmo Tarkkanen; Ma 8-16 B2033 ja B2038 Kurssimateriaali Luentomoniste, jota jaetaan luennoilla Luentokalvot Linkkejä kurssin kotisivulla

Kurssin asioista Relaatiomalli Tietokannan suunnittelu SQL Mikä on relaatio? Mikä on relaatiotietokanta? Miten tietokannasta haetaan tietoa? Miten tietokannan sisältämää tietoa muokataan? Tietokannan suunnittelu Mitä on käsitteellinen mallintaminen? Mikä on käsitteellisen mallin ja relaatioiden suhde? SQL Miten SQL:n avulla luodaan tietokantoja? Miten tietokannasta haetaan tietoja SQL:n avulla? Miten tietokantaa päivitetään?

Kurssin tarpeellisuudesta Tekeekö näillä jutuilla oikeasti mitään? Käytännössä kaikki tietojärjestelmät perustuvat relaatiotietokantaan Tietokantaosaaminen on tarpeen lähes kaikissa alan tehtävissä Eli kaikki sitten kai osaavat? No ei... Relaatiomallia ei ymmärretä, vaikka kyse on oikeastaan varsin yksinkertaisesta asiasta SQL:ää ei edellisestä johtuen osata kovinkaan hyvin Esitietona monille kiinnostaville kursseille Tietokannat II, Advanced Course on Databases, XML Technologies and Applications, Multimedia Databases, ...

Demoista Poikkeavat demojärjestelyt Tenttioikeuden saavuttaminen Demotehtävät ratkaistaan ryhmätyönä demotilaisuuksista Hyötyäkseen demoista on syytä seurata luentoja tai ainakin opiskella demoissa tarvittavat asiat itsenäisesti Osa demoista pyritään järjestämään mikroluokissa Tenttioikeuden saavuttaminen Osallistuttava vähintään neljään viidestä demotilaisuudesta Jos edellisen vaatimuksen täyttäminen on (jostain hyvästä syystä) ongelma, ota yhteyttä luennoitsijaan

Tieto Digitaalisesti tallennettua informaatiota Rakenteeton tieto Teksti, puhe, kuvat jne. Käsitellään yleensä kokonaisuutena Rakenteinen tieto Taulukot, puurakenteet jne. Tieto jäsennelty osiin, tietoalkoihin Kurssilla perehdytään ennen kaikkea rakenteisen tiedon hallintaan

Tietomallit Relaatiomalli Verkkomalli Hierarkkinen tietomalli Tieto jäsennellään relaatioihin eli käytännössä tauluihin Suhteellisen helppoa omaksua ja toteuttaa tehokkaasti Ylivoimaisesti suosituin lähestymistapa Verkkomalli Tietoalkiot yhdistyvät toisiinsa verkoksi Käytännössä vaikea toteuttaa Hierarkkinen tietomalli Tietoalkiot sisältyvät toisiinsa; puurakenne, XML-dokumentti Helposti omaksuttavissa, vaikea toteuttaa

Abstraktiotasot Käsitteellinen taso Rakenteellinen taso Fyysinen taso Tietoalkioiden merkitys ”Tietokannassa on tietoa asiakkaista, osoitteista, tilauksista, ...” Rakenteellinen taso Tietoalkioiden suhteet ja jäsennys ”Asiakkaat on esitetty taulukossa, jossa ensimmäinen sarake kuvaa asiakkaan nimeä, toinen lempiruokaa, ...” Fyysinen taso Tietoalkioiden fyysinen tallennustapa ”Orimatti Teuras; Maksalaatikko; ...”

Kurssien ”abstraktiotasot” Käsitteellinen taso Tietojärjestelmien mallintaminen Jossain määrin myös Tietokannat I Rakenteellinen taso Tietokannat I, Tietokannat II Jossain määrin myös Multimedia Databases Fyysinen taso Advanced Course on Database Systems Multimedia Databases Jossain määrin myös Tietokannat II

Tietokanta Laveasti määritellen kokoelma rakenteista tietoa Puhelinluettelo; tietoa henkilöistä, puhelinnumeroista ja osoitteista Kaupan tietokanta; tietoa asiakkaista, tilauksista, tuotteista, toimittajista varastosaldoista jne. Tiukemmin määritellen tietokokoelma, joka On itsekuvaileva Tukee useita yhtäaikaisia käyttäjiä On tarkasteltavissa eri näkökulmista Toimii erillään kokoelman tietoja käyttävistä ohjelmista

Itsekuvailevuus Tietokanta sisältää Varsinaisen tiedon eli datan Datan rakennetta kuvailevan tiedon eli metadatan Onko alla esitetty taulukko itsekuvaileva? Mitä ovat ”Potkukelkka” ja ”Teuras”? Ovatko silakkapihvit ja maksalaatikko lempi- vai inhokkiruokia? Voimme erikseen tallentaa tiedon siitä, mitä sarakkeet sisältävät James Potkukelkka Silakkapihvit 1917 Orimatti Teuras Maksalaatikko 1980

Yhtäaikainen käyttö Käytännössä tietokannalla on aina useita käyttäjiä Verkkokaupalla ehkä satoja tai jopa tuhansia käyttäjiä Yhtäaikaisen käytön ongelmat Kaksi asiakasta yrittää samaan aikaan tilata ainoan tuotteen tai varata saman paikan lennolle Voiko useampi käyttäjä muokata tekstitiedostoa samaan aikaan? Kyllä, jos tähän tarkoitukseen toteutetaan ohjelma

Monta näkökulmaa tietoon Eri käyttäjäryhmät tarvitsevat eri tietoja Pankkitoimihenkilön on haettava eri tietoja kuin pankin asiakkaan Pankkitoimihenkilön on päästävä käsiksi tietoihin, joita pankin asiakas ei voi muuttaa Voidaanko käyttäjille tarjota erilaisia näkökulmia tekstitiedostoon? Kyllä, jos tähän tarkoitukseen toteutetaan ohjelma

Riippumattomuus ohjelmista Uusien ohjelmien toteuttaminen Voimme toteuttaa uusia tietokantaa käyttäviä ohjelmia muuttamatta tietokantaa tai kajoamatta vanhoihin ohjelmiin Uusien tietojen lisääminen Voimme tarvittaessa lisätä uusia tietoja tietokantaan muuttamatta ohjelmia Voidaanko tekstitiedostosta tehdä ohjelmariippumaton? Kyllä, jos kirjoitetaan ohjelma, jonka avulla muut ohjelmat käyttävät tiedostoa

Tietokannanhallintajärjestelmä TKHJ on ohjelmisto, jonka avulla voidaan Luoda uusia tietokantoja Lisätä, poistaa ja hakea tietoa tietokannasta Hallita suuria tietomääriä (gigatavuja, teratavuja, petatavuja) tehokkaasti Kohdistaa tietokantaan useita yhtäaikaisia operaatioita Toteuttaa sovelluksia, jotka käyttävät tietokantaa Esimerkkejä tietokannanhallintajärjestelmistä Oracle, SQL Server, ... (kaupallisia) MySQL, Postgres, Interbase, ... (ilmaisia) Access (monilla ehkä kotikoneella) Jonkin TKHJ:n kokeileminen myös itsenäisesti on erittäin suositeltavaa

TKHJ:t Koostuvat monista osista Teknisesti hyvin kypsiä Tallennusmoottori, kyselymoottori, lukitusjärjestelmä, ... Hallintaohjelmat, varmuuskopiointiohjelmat, ... Teknisesti hyvin kypsiä Pankkitoiminta, arvopaperikauppa, ... Hallittavana valtavia tietomääriä Periaatteessa standardoituja Relaatiotietokannat tukevat SQL:ää, Hierarkkiset tietokannat XML-kyselykieliä jne. Monissa kuitenkin lisäominaisuuksia

Eli siis... TKHJ:n tehtävänä on piilottaa tietokannan fyysinen toteutus ja tarjota rakenteellisen tason rajapinta tiedon käsittelyyn Periaatteessa tietokannanhallintajärjestelmä käyttää tiedostoja siinä missä muutkin ohjelmat Tallennettavat tiedot ovat jäsennettävissä TKHJ:n tietomallin avulla Relaatiomalli: taulukot Verkkomalli: tietoalkioiden muodostama verkko Hierarkkinen malli: puu

Kertaus Tietokanta Itsekuvaileva Useita käyttäjiä Erilaisia näkymiä tietoon Erillinen tietoja käyttävistä ohjelmista TKHJ on tietokantojen käsittelyyn tarkoitettu ohjelmisto Käytännössä nykyiset TKHJ:t perustuvat relaatiomalliin

Relaatio (1) Puhumme usein jonkinlaisista suhteista ”Mikki tykkää Minnistä” ”Aku tykkää Iineksestä” ”Kaarle Kustaa XI on Ruotsin kuningas” ... Suhdetta voidaan ajatella relaationa, joka kytkee Havainnollisimmin relaatiota voi ajatella tauluna Kuningas Valtio Kaarle Kustaa XVI Ruotsi

Relaatio (2) Relaation ominaisuuksia kutsutaan attribuuteiksi Kaava...