DB2-YTR 1 (16) Tietokantojen suunnittelun pienryhmä DB2-tietokantasuunnittelu
|
|
- Olivia Laine
- 9 vuotta sitten
- Katselukertoja:
Transkriptio
1 DB2-YTR 1 (16) DB2-tietokantasuunnittelu
2 DB2-YTR 2 (16) DB2-TIETOKANTASUUNNITTELU KANTASUUNNITTELUPROSESSI...3 LOOGINEN SUUNNITTELU...4 KOHDEMALLIN TARKASTUS...4 NORMALISOINTI...6 DENORMALISOINTI...7 VIITE-EHEYDET...8 STANDARDIT...8 TIETOKANNAN FYYSINEN SUUNNITTELU...9 PERUSMÄÄRITTELYT...9 TEKNINEN SUUNNITTELU...11 Lukitukset...11 Partitiointi...11 Käytettävyys 24 tuntia...12 Tilasuunnittelu...13 SOVELLUSSUUNNITTELU...14 TIETOKANNAN HOITO...15
3 DB2-YTR 3 (16) KANTASUUNNITTELUPROSESSI
4 DB2-YTR 4 (16) Looginen suunnittelu Tietokannan looginen suunnittelu alkaa systeemityön määrittelyvaiheessa. Tietokannan suunnittelu voi olla tieto- tai toimintokeskeistä. Määrittely tuottaa toimintoanalyysin tuloksena toiminnan kuvaukset. Kuvaukset voivat olla esimerkiksi tapaustaulukko, toimintohierarkia, tietovirtakaavio ja toimintomatriisi. Määrittelyn tietoanalyysi tuottaa tietojen kuvaukset, esimerkiksi elinkaarimalli, kohdekaavio ja jokaisen yksittäisen tiedon nimen, muodon, kuvauksen ja tiedon lähteen. Kohdemallin tarkastus Kohdemallin pitää olla kolmannessa normaalimuodossa. Normalisointia voidaan jatkaa pidemmällekin, mutta se harvoin kannattaa. Tavallisesta poikkeava sovellus, vaikkapa tietohakemisto tms. metadatasovellus, voi vaatia hienommalle tasolle viedyn normalisoinnin. 3NM-kohdemallissa ei yleensä esiinny 1/1-suhteita. Denormalisointia ei tässä vaiheessa tehdä. Kohdemallin tarkastamiseksi pitää tarkastajan tuntea sovellusaluetta jonkin verran ja mukana pitää olla sovellusalueen asiantuntija ja tekijöitä. Kohdemalli tarkastetaan esikatselmuksessa, joka päättää määrittelyvaiheen. Kohdemallista pitää tarkastaa, että jokainen kohde jota tarvitaan, on mukana jokaisella kohteella on kuvaus mukana ei ole tarpeettomia kohteita tai esimerkiksi johdettuja tietoja kohdemalli on kolmannessa normaalimuodossa kaikki toimintoanalyysin tuottamien toimintojen tiedot löytyvät kohdemallista kaikkia kohteita käsitellään jossain toiminnossa (= tieto lisätään, päivitetään, poistetaan ja haetaan ainakin yhdessä toiminnossa) yksilöivä avain on todella yksilöivä eikä avaimesta voi poistaa yhtään tietoa ilman että yksilöivyys kärsii kohteet ovat riittävän yleisiä. Esimerkiksi taulut KUORMA_AUTO, LINJA_AUTO ja HENKILO_AUTO voidaan yhdistää tauluksi AJONEUVO.
5 DB2-YTR 5 (16) Rakennetaan 0-tason relaatiomalli (relaatiokaavio), joka sisältää yksikäsitteiset avaimet, vierasavaimet ja kohteiden ja suhteiden lukumäärätiedot. Tätä kaaviota vastaan tarkastetaan kaikki tietotarpeet (=toiminnot): tarvittavat hakemistot lisätään taulujen järjestysvaatimusten mukaan päätetään mikä on järjestystoivomus (tämä on päätettävissä lopullisesti vasta teknisessä suunnittelussa) lasketaan QUBE (vastausajan pikaennuste) ; jos asetettuun vastausaikavaatimukseen ei päästä, voidaan vastausaika laskea tarkemmalla kaavalla ja päättää voidaanko tapahtuman auttamiseksi tehdä jotain parempi indeksi, Index Screening tai Index Only -haku taulu toiseen järjestykseen tietotarpeen toteuttaminen toisella tavalla (= uudelleensuunnittelu) tiedon pakkaaminen I/On vähentämiseksi denormalisointi Näistä tiedon pakkaaminen ja denormalisointipäätökset kuuluvat vasta tekniseen suunnitteluun, mutta jos tarve jätetään dokumentoimatta ja välittämättä tekniselle suunnittelulle, ei sitä kukaan arvaa ajatella. Teknisessä suunnittelussa voidaan käyttää paljon muitakin tapoja nopeuttaa tapahtumaa tai eräajoa (puskurien kasvatus, hiperpoolit, levy I/On nopeutus).
6 DB2-YTR 6 (16) Normalisointi Kolmas normaalimuoto tarkoittaa, että Toistuvat tietoryhmät on erotettu omaksi kohteekseen tai monistettu riveiksi Kohteen tiedot riippuvat koko avaimesta ja vain avaimesta N:M -yhteydet on purettu 1:N -yhteydeksi Taulu ei siis voi sisältää toista taulua, tai kahta tai useampaa kertaa samaa tietoa. Onko esimerkiksi kotipuhelin ja työpuhelin sama tieto eli oma kohteensa vai ei? Periaatteessa se on oma kohteensa PUHELINNUMERO, jolloin ei ole väliä onko asiakkaalla yksi vai kymmenen numeroa. Kohteen tiedot riippuvat avaimesta, koko avaimesta ja vain avaimesta tarkoittaa siis, että tieto ei saa olla riippuvainen avaimen osasta tai avaimeen kuulumattomista tiedoista. (Huomaa, että tilakoodi-tyyppiset tiedot eivät voi olla normalisoidun kohdemallin tietoja, koska tieto on johdettua eikä riipu avaimesta lainkaan). Tähän toiseen sääntöön tuo poikkeamismahdollisuuden TABLE CHECK CONSTRAINT. Tämän eheyssäännön avulla voidaan tehdä arvoaluetarkistuksia (domain) ja tarkistuksia saman taulun sarakkeiden välille. Esimerkiksi palkkio ei voi olla suurempi kuin palkka tai veroprosentti ei voi olla suurempi kuin lisäveroprosentti. N:M -yhteydet puretaan teknisellä kohteella, jossa on vain kohteet yhdistävät avaimet. Joskus tämä tekninen kohde voi muodostua aidoksi kohteeksi, jolloin se saa omia tietoja. Esimerkiksi MYYJÄ- ja TUOTE-kohteen välille tuleva kohde KAUPPA. 1:1 -suhde voi olla myös merkki normalisointivirheestä. Varsinkin siinä tapauksessa, että molemmilla kohteilla on sama yksilöivä avain ja kenties samat suhteetkin. Mieti tarkkaan onko kyseessä kaksi kohdetta vai yhden kohteen ominaisuudet jaettuna kahteen eri joukkoon.
7 DB2-YTR 7 (16) Denormalisointi Denormalisointi voidaan jakaa karkeasti kolmeen tyyppiin Tiedon monistaminen moneen tauluun Summatun tiedon käyttö Kohteiden yhdistäminen Tiedon monistaminen on syytä turvata triggereillä heti kun ne ovat tiedonhallintaohjelmiston piirteenä mukana. Tätä ennen on tehtävä ohjelma, joka tarkastaa tiedon eheyden (esimerkiksi asiakkaan nimen muutos pitää muistaa päivittää kaikkiin tauluihin joihin tieto on monistettu). Vaikka triggerit ovatkin käytössä, voidaan triggereillä suojattu tiedon eheys saada rikkoutumaan esimerkiksi LOADajolla tai tekemällä taululle RECOVER TO COPY tai RECOVER TO RBA. Summatun tiedon käyttämisessä on ehdottoman tärkeää, että lähdetiedot ovat jossain tallessa, peräkkäistiedostossa ellei taulussa. On tehtävä ohjelma joka tarkastaa, että summatut tiedot ovat oikein (huomaa peruutukset). Tämänkin denormalisoinnin käyttö vaatii oikeastaan triggereiden käyttöä. Mutta mikään ei pelasta siltä, että lähdetietoa ei saa hukata. Kohteiden yhdistämistä ei pidä tehdä tapahtumakantaan. Kohteita yhdistämällä menetetään kaikki SQL:n keinot käsitellä tietoa. Esimerkiksi taulusta, jossa sarakkeet ovat MATKUSTAJA1, MATKUSTAJA2,, MATKUSTAJAN, on tietyn matkustajan hakeminen SQL:llä erittäin hankalaa. I/On määrän vähennys ei ole syy kohteiden yhdistelyyn: I/Ota voidaan vähentää monella muullakin tavalla, teknisen suunnittelun keinoin. Jos kaikista varoituksista huolimatta kuitenkin päädyt tähän ratkaisuun, tee ensimmäiseksi suunnitelma ratkaisun purkamiseksi. Jos tällaista oikein toimivaa purkuratkaisua ei pystytä tekemään, ei pidä missään tapauksessa myöskään denormalisoida. Tietokanta elää ikuisesti. Sovellus sen päällä voi muuttua tai vaihtua, mutta jos tietokanta on suunniteltu oikein, se ei muutu. Uusia kohteita voi tulla ja uusia tietoja, mutta perusrakenne säilyy. Teknisiä ratkaisuja voidaan muuttaa, mutta malli on "ikuinen".
8 DB2-YTR 8 (16) Viite-eheydet Viite-eheys voidaan määritellä aina kun yhteys kahden kohteen välillä on 1:N tai 1:NC (ehdollinen yhteys). Jos yhteys on ehdollinen molempiin suuntiin 1C:NC, on ainoa mahdollinen poistosääntö SET NULL. Viite-eheys kannattaa määritellä aina kun se on mahdollinen. Lapsitauluun määritellään viiteavain (foreign key) ja viiteavain hakemisto, joka on samanlainen, tai jonka alkuosa on samanlainen, kuin isä-taulun avain (parent key). Viite-eheyttä ei kuitenkaan pidä määritellä parametri-tyyppisen taulun ja datataulun välille, koska RECOVERY-kokonaisuuksiin ei ole syytä ottaa mukaan turhia tauluja, esimerkiksi parametri-taulun muita lapsitauluja. Standardit Käytä nimeämisessä standardia. Varsinkin tietojen nimien, muotojen ja pituuksien pitää olla samanlaiset joka paikassa. Ellei ympäristössäsi ole käytössä tietohakemistoa tai standardeja, pidä huoli että ainakin sovelluksen sisällä käytetään samoja määrittelyjä. Jokainen tieto on potentiaalinen yleinen tieto (= sitä käytetään useammassa kuin yhdessä sovelluksessa) ja siksi kannattaa miettiä sille kuvaava nimi sekä sellainen muoto ja pituus, jotka sopivat sen kaikkiin mahdollisiin käyttötapoihin. Tiedonhallintajärjestelmissä on tavallisesti käytössä hyvinkin pitkät nimet (DB2 18 merkkiä), jolloin on turha typistää nimiä 8 merkin lyhennyksiksi, joita kukaan ei ymmärrä (esimerkiksi TPPTKKD, onko se joku koodi ja jos niin mikä?) Tietojen samanmuotoisuus takaa yhdistettävyyden. Jos asiakastunnus on toisissa kohteissa CHAR 11 ja toisissa kohteissa CHAR 15 ja vielä jossain DEC 11, 0, niin millä nämä tiedot voi yhdistää. Näiden tietojen yhdistäminen voi olla vaikeaa. Näiden standardien kehittäminen ja käyttäminen vaatii vaivannäköä, mutta maksaa itsensä nopeasti takaisin kehitystyössä.
9 DB2-YTR 9 (16) Tietokannan fyysinen suunnittelu Perusmäärittelyt DATABASE Määrittele sovelluksen yhteenkuuluvat taulutilat samaan tietokantaan. TABLESPACE TABLE Määrittele taulutilaan yksi taulu, koska monet toiminnot tapahtuvat taulutilatasolla. Määrittele taulutila segmentoiduksi tai partitioiduksi. Älä määrittele simple-taulutiloja, koska niiden tekniset ominaisuudet eivät ole hyviä ja ne saattavat myöhemmissä versioissa poistua käytöstä. Harkitse surrogaatti-avainten käyttöä, koska ne vähentävät avaimen päivitystarvetta lyhentävät avainta Määrittele perusavain (valvoo kohde-eheyttä) Huomioi rivin sarakkeiden määrittelyssä kiinteämittaiset rivit - määrittele vierekkäin ne sarakkeet, joissa tieto on eniten muuttuvaa (lokille kirjoitus ensimmäisestä muutoksesta viimeiseen) vaihtuvamittaiset rivit (tauluun määritelty VARCHAR-sarakkeita) - määrittele loppuun ne sarakkeet, joiden tieto on muuttuvaa FIELDPROC-exitin käyttö - tarkista, että toimii tarkoitetulla tavalla (varsinkin lajittelu) Määrittele viiteyhteydet älä määrittele yhteyksiä tietokannasta toiseen, jos et ole varma vaikutuksista älä määrittele viiteyhteyksiä koodi- ja data-taulujen välille (koodien sallitut arvot kannattaa tarkistaa CHECK CONSTRAINT -säännöillä. Kooditauluilla ei myöskään yleensä ole RECOVERY-tarvetta) Määrittele CHECK-säännöt sääntöjen ei ole todettu aiheuttavan merkittävää lisäkuormaa mieti etukäteen sääntöjen muuttumisesta aiheutuvat vaikutukset ja suunnittele jatkotoimenpiteet Mieti tarvittavat leimasarakkeet mikä on sarakkeiden käyttötarkoitus (esimerkiksi päivityksen valvonta, selvitys) Aseta taululle WITH RESTRICT ON DROP -vipu (myös testiympäristöissä), jotta vahingossa tapahtuvilta taulumääritysten tuhoamisilta vältytään.
10 DB2-YTR 10 (16) COLUMN Mieti NULL-arvon tarpeellisuus kullekin sarakkeelle. Mieti päivämäärien alku- yms. arvot. Esimerkiksi arvot ' ja ' voivat osoittautua ongelmallisiksi replikoinnissa toiseen relaatiotietokantajärjestelmään (esimerkiksi SQL Server) ja joidenkin ohjelmointikielien (esimerkiksi Java) kanssa. Näiden päivämäärien sijaan tulisi käyttää NULL-arvoa. CHAR/VARCHAR-päätös riippuu myös siitä, missä ympäristössä ja millä kielellä saraketta käytetään. Käytä vaihtuvamittaisia sarakkeita silloin, kun vaihtuvamittaisuudella on merkitystä. Perinteisessä sovellusympäristössä perinteisillä kielillä (esimerkiksi Cobol) ohjelmoitaessa pituuden vaihtelun pitää olla suuri ennen kuin vaihtuvamittaisuuden hyödyt voittavat ylläpidon vaivat. Dynaamisen SQL:n ympäristöissä tiedon muokkaus on vaikeampaa ja niissä vaihtelevan mittaiset tiedot pitäisi myös määritellä vaihtuvamittaisiksi: Virtanen, Ville Velmeri Virtanen, Ville Velmeri COMMENTS, LABELS INDEX VIEW Suosi kommentointia, jolloin DB2-katalogi palvelee paremmin myös tietohakemistotyyppisesti. Päätä C-hakemisto huomioi partitiointitarve (partitioiva avain aina C-avain) huomioi eräkäsittelyn järjestystarve (eräkäsittelyn oltava peräkkäiskäsittelyä) huomioi keskeisin selausjärjestys huomioi, että partitioivan hakemiston muutokset (sarakkeen lisäys, Uniquemääritys yms.) vaativat taulutilan droppaamisen Määrittele hakemisto aina Unique-määreellä, jos hakemistorivit ovat yksikäsitteisiä. Muista UNIQUE WHERE NOT NULL -mahdollisuus silloin kun hakemistosarakkeelle on NULL-arvo mahdollinen. Suunnittele hakemistosarakkeiden järjestys hakutarpeiden pohjalta ASC, DESC (esimerkiksi Pvm, Jno -tiedoista yleensä uusimmat kiinnostavimpia) Muista aina määritellä viiteavainhakemistot, koska ilman sitä isärivin poistaminen aiheuttaa aina TS Scanin lapsitauluun. Vältä VARCHAR-saraketta hakemistosarakkeena. VARCHAR-sarake on hakemistossa aina maksimipituisena älä määrittele VARCHAR-saraketta Unique-hakemistoon, koska syntyy helposti tupla-arvoja (ns. space-lipsahdukset) Vältä loppuun kasvavaa hakemistoa, vaikka indeksi ei enää pidäkään lukkoja eikä varaa pelkkiä puolikkaita sivuja. Huomioi NULL-arvojen käyttäytyminen ASC- ja DESC-indekseissä. ASCjärjestyksessä NULL-arvo on viimeisenä ja DESC-järjestyksessä ensimmäisenä.
11 DB2-YTR 11 (16) Suosi moduulikohtaisia näkymiä tietoriippumattomuuden ja ylläpidettävyyden takia. Luettele näkymän sarakkeet käytön mukaiseen (käyttäjän haluamaan) järjestykseen (teknisen suunnittelun tuloksena sarakkeet ovat taulussa siinä järjestyksessä kuin fyysisesti on parasta). Laita näkymän WHERE-osaan vain rajoittavat ehdot, jolloin muutos ei välttämättä vaikuta ohjelmaan. Käytä WITH CHECK - optionia niiden näkymien kanssa, joiden kautta voi päivittää. Tekninen suunnittelu Lukitukset Partitiointi Lukituskoko ANY on DB2:n oletus, mutta DB2 valitsee tavallisesti PAGE-lukitustason. Jos lukkoja tulee paljon niin syntyy lukituksen eskalointi, jolloin lukitus nousee TABLESPACE-tasoiseksi. PAGE-lukituksessa eskalointia ei tapahdu. Jos lukkoja tulee liikaa niin suoritus keskeytyy. TABLESPACE/TABLE-lukituksessa kyseiseen kohteeseen ei ole yhtäaikaista pääsyä ROW-rivilukitus kasvattaa yhtäaikaisten lukkojen määrää moninkertaiseksi. Rivilukitus ei ole ratkaisu deadlock-ongelmiin, vaan ne on ratkaistava ohjelmansuunnittelulla (päivitysjärjestys). Rivilukituksella samanaikaisuus lisääntyy ja timeoutit vähenevät. Käsittely pitäisi pystyä hajauttamaan tasaisesti avaimen mukaan, jotta kuumia sivuja ei pääse syntymään. Valitse partitioiva tekijä huolellisesti, koska C-hakemisto määritellään tämän mukaan ja partitioivan tekijän muuttaminen on hankalaa. Partitioitujen taulutilojen partitioimattomat hakemistot saattavat kasvaa yllättävän suuriksi isojen hakemistojen (tyypillisesti partitioidun taulutilan partitioimaton hakemisto) luonnissa työtila saattaa loppua. Luo hakemisto tällöin DEFER YES ja REBUILD INDEX -menettelyllä. Huomioi tilasuunnittelu (mitä pystytään muuttamaan, jos joku partitio alkaa kasvaa odottamattomasti) versiossa 6 on mahdollista muuttaa partitiorajoja (Limit Key) ALTERkomennolla huomioi, että uusia partitioita ei saa määriteltyä lisää (harkitse tyhjien partitioiden määrittelyä väliin) Huomioi, että samanaikaisesti aukiolevien tiedostojen määrä kasvaa.
12 DB2-YTR 12 (16) Käytettävyys 24 tuntia Yleistä 24-tunnin ympäristössä on muistettava, että puhumme aina noin 24-tunnin ympäristöstä. Rajoituksia syntyy koneen huoltokatkoista ja DB2:n katkoista. Sovellusten 24-tunnin käytettävyyteen liittyy myös muiden järjestelmien katkot, kuten CICS. SYSPLEX- ja Data Sharing -ympäristöissä toimittaessa katkojen tarve vähenee entisestään. Mahdolliset RECOVERY-tilanteet aiheuttavat aina katkon. LOAD-ajot ovat käytännössä mahdottomia 24-tunnin ympäristössä. Kannat on pyrittävä suunnittelemaan siten, että katkot kohdistuvat osaan kannasta tai taulutilasta. Voimme siis pyrkiä lähes 24-tunnin/7-päivää viikossa käytettävyyteen. Mietittäessä 24-tunnin ympäristöjen rakentamista, on myös pidettävä mielessä, mitä lähempänä 24-tunnin ympäristöä olemme, sitä kalliimpia ja monimutkaisempia järjestelmiä rakennamme. Nämä tosiasiat on tehtävä selviksi sovellusten tilaajalle. Looginen suunnittelu 24-tunnin ympäristö on otettava huomioon heti suunnittelun alkuvaiheessa, jälkeenpäin sen toteuttaminen on työlästä. Yleensä 24-tunnin vaatimuksessa on vain pieni osa dataa, joka on todella tarpeen olla käytettävissä vuorokauden ympäri. Kantoja suunniteltaessa olisi hyvä lähtökohta erottaa toisistaan todellinen 24-tunnin data ja muu data. Pyritään pitämään 24-tunnin tietoja sisältävät taulut, taulujen lukumäärä mahdollisimman pieninä. Joissain tilanteissa voidaan muu data siirtää vastaaviin historiatauluihin, joita voidaan vapaasti käsitellä ja siivota yöaikaan. Historiataulujen käyttö on suositeltavaa, jos dataan ei kohdistu enää varsinaista käsittelyä. Historiointiin voi käyttää arkistointia, sillä vastausaikavaatimus historiatiedoille ei yleensä ole heti. Koko kanta kaikkine yksityiskohtaisine tietoineen ei aina tarvitse olla 24-tuntia käytössä. Voidaan rakentaa yön tarpeita varten oma versionsa sovelluksesta. Tekninen suunnittelu Kantojen kopiointi hoidetaan aina shrlevel change muodossa ja perään ajetaan QUIESCE. Kopiointi hoidetaan sovelluksen kannalta mahdollisimman hiljaiseen aikaan. RUNSTATS-ajot voidaan myös ajaa shrlevel change optiolla, jolloin samanaikainen käsittely on mahdollista. 24:n tunnin taulujen suunnittelussa partitiointi on oleellinen asia, jotta pystytään käyttämään hyväksi partitioiden rinnakkaiskäsittelyä. ONLINE REORG voi lyhentää kannan huoltokatkoja. Voidaan tehdä aputauluja, joiden avulla tietyt taulut voidaan ottaa pois 24-tunnin ympäristöstä ja hoitaa eräajoina yöllä. Kannattaa hyödyntää huoltokatkoaikoja erätarpeisiin. Nämä ratkaisut monimutkaistavat jonkin verran sovellusta, mutta helpottavat huomattavasti 24-tunnin vaatimuksen toteuttamista
13 DB2-YTR 13 (16) Tilasuunnittelu Vapaan tilan määrä taulutila ei saa kasvaa loppuun (lukitukset kasaantuvat; lukko-odotukset, läpimenoajat ja deadlockien määrä kasvavat) lisäysten ja päivitysten hajauduttava tasaisesti (organisointitarve vähenee) käytä FREEPAGE=0 (jos et käytä niin muista, että ellei prefetchin triggersivulla käydä, joudutaan I/O:ta odottamaan; jos trigger-sivu on tyhjä, sillä ei koskaan käydä) ja satsaa enemmän PCTFREE-arvojen suunnitteluun Tiivistys (Compress) käytä HW-pakkausta voit harkita tiivistämättä jättämistä, jos lisäyksiä/päivityksiä paljon tarkkaile tiivistysprosenttia ja FARINDREF sekä NEARINDREF -arvojen nousua, koska tiivistyshakemisto (Dictionary) menee helposti huonoon kuntoon jos tieto aiotaan tiivistää, ei VARCHAR-tietomuotoa kannata käyttää tilansäästämiseksi
14 DB2-YTR 14 (16) Sovellussuunnittelu Tietotarpeen WHERE-ehdon ja ORDER BY -määreen tulisi kulkea saman hakemiston kautta (huomioi, että hakupolut voivat muuttua tilastotietojen muuttuessa!). Käsittelyjärjestyksellä pystyt välttämään deadlockeja. Viite-eheysmääritykset määräävät pitkälti päivitysjärjestyksen ja jos niitä ei käytetä niin käsittelyjärjestys on suunniteltava ja sovittava asia. Muista hakupolkujen tarkistusten (Explain) sekä CPU- ja vastausaikojen merkitys välttämättöminä tarkistuspisteinä. Näkymän (VIEW) monipuolista käyttöä suositellaan Tietojen samanlainen talletustapa eli mikäli tieto ei "täytä" koko kenttää, millä muu osa täytetään. Esimerkiksi tieto on määritelty CHAR(20) ja jossain tapauksessa tieto onkin vain kuusi merkkiä pitkä ; talletetaanko kuusi merkkiä ja 14 tyhjää vai päinvastoin?
15 DB2-YTR 15 (16) Tietokannan hoito Hoitosuunnitelma Määrittele perusperiaatteet vastuut henkilöitävä varmistuskopiot - suunnittele RECOVERY-kokonaisuudet (esimerkiksi QUIESCEpisteet) - kopioita pitää ottaa (koko RECOVERY-kokonaisuus kerralla tai ainakin QUIESCE) - määrittele varmistuskopioiden ottotiheys ja -laajuus (full/partial) statistiikka - RUNSTATS-ajoja pitää ajaa - ajotiheys määriteltävä - muista monen eri sarakkeen käyttömahdollisuus (first + keycard) LOAD- ja REORG-ajojen jälkeiset toimenpiteet - COPY- ja QUIESCE-ajot (tällöin kopio ei estä käyttöä, palautukset täytyy tehdä aina RBA:han, ei kopioon). - RUNSTATS- ja CHECK-ajot Organisointiajot voi tehdä ONLINE REORG -ajona huomioi levytilan tarve aja organisointi hiljaisimpaan mahdolliseen aikaan (ONLINE REORG) jos organisointi perustuu tilastotietoihin, muista ajaa RUNSTATS-ajo organisoinnin jälkeen Indeksien organisointi huonossa järjestyksessä olevan indeksin peräkkäiskäsittely vie enemmän aikaa kuin hyvässä järjestyksessä olevan lisäykset nopeutuvat, kun sivuilla on tyhjää tilaa (eikä tarvitse tehdä page splittejä) Tarkkaile indeksin tasojen lukumäärää tilankäyttö- ja I/O-mielessä
16 DB2-YTR 16 (16) Palautussuunnitelmat Seuranta "Normaali" palautussuunnitelma määrittele toimenpiteet, jotka tehdään esimerkiksi levyrikon yhteydessä Eräajovirheen (ohjelma, syöttöaineisto) aiheuttama palautustarve kannassa on oltava riittävästi tietoa, jonka avulla peruutus voidaan tehdä (rivin valintakriteeri ei saa muuttua ajossa tai muuttuneet rivit on löydettävä aukottomasti muun tiedon, esimerkiksi muutosaikaleiman, avulla) Mittarien kehittäminen seurattavia asioita varten tilankäyttö statistiikkatiedot puuttuvat (viiteavain) hakemistot puuttuvat varmistuskopiot (taulutilat, joita ei varmisteta) saantipolut lukitukset vastaus-/cpu-ajat
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
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
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
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
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ä
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
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
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
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...
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
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...
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
TIETOKANTOJEN PERUSTEET MARKKU SUNI
TIETOKANTOJEN PERUSTEET MARKKU SUNI SQL - KIELI TIETOJEN MUOKKAUS MARKKU SUNI Tarkastellaan tauluissa olevien tietojen muokkausta muokkauskäskyjä: INSERT UPDATE DELETE Kysymys kuuluu: Voiko tietoja muokata
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
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
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...
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...
TIETOKANTOJEN PERUSTEET OSIO 8 MARKKU SUNI
TIETOKANTOJEN PERUSTEET OSIO 8 MARKKU SUNI Tarkastellaan Loogista tietokannan suunnittelua vaihe 2 Taulujen määrittely loogisen tietomallin perusteella 2 Suunnittele ja tarkista taulut joka loogisesta
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
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
Denormalisointia turvallisesti. Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso
Denormalisointia turvallisesti Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso Timo Raitalaakso Senior Database Specialist Solita Oy 2001- - 2001 Tampereen Teknillinen korkeakoulu Tietokannat
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
SELECT-lauseen perusmuoto
SQL: Tiedonhaku SELECT-lauseen perusmuoto SELECT FROM WHERE ; määrittää ne sarakkeet, joiden halutaan näkyvän kyselyn vastauksessa sisältää
3. Taulujen määrittely ja muuttaminen
3. Taulujen määrittely ja muuttaminen DDL: Taulujen luonti, muutos ja poisto DML: taulujen tietojen ylläpito Tapahtumien (transaktioiden) hallinta Näkymät, synonyymit ja muut tietokantaobjektit Taulujen
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
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...
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...
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ö
Tietokantakurssit / TKTL
Tietokantakurssit / TKTL Tietokantojen perusteet - tietokannan käyttö: SQL, sovellukset Tietokannan hallinta - tietokannanhallintajärjestelmän ominaisuuksia: tallennusrakenteet kyselyjen toteutus tapahtumien
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,
HAAGA-HELIA Heti-09 1 (14) ICT05: Tiedonhallinta ja Tietokannnat O.Virkki Transaktionkäsittely
HAAGA-HELIA Heti-09 1 (14) Transaktionkäsittely Transaktion / Tapahtuman hallinta... 2 Taustaa... 3 Tapahtuman käsite... 5 ACID-ominaisuudet... 7 Samanaikaisuuden hallinta... 8 Lukitukset... 9 Toipuminen...
HELIA 1 (14) Outi Virkki Tiedonhallinta
HELIA 1 (14) Luento Transaktion / Tapahtuman hallinta... 2 Taustaa... 3 Tapahtuman käsite... 5 ACID-ominaisuudet... 7 Samanaikaisuuden hallinta... 8 Lukitukset... 9 Toipuminen... 10 Loki-tiedosto... 11
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
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
3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN
3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN DDL: TAULUJEN LUONTI, MUUTOS JA POISTO DML: TAULUJEN TIETOJEN YLLÄPITO TAPAHTUMIEN (TRANSAKTIOIDEN) HALLINTA NÄKYMÄT, SYNONYYMIT JA MUUT TIETOKANTAOBJEKTIT TAULUJEN
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 25.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 25.2.2009 1 / 34 Syötteessä useita lukuja samalla rivillä Seuraavassa esimerkissä käyttäjä antaa useita lukuja samalla
DOORSin Spreadsheet export/import
DOORSin Spreadsheet export/import 17.10.2006 SoftQA Oy http/www.softqa.fi/ Pekka Mäkinen Pekka.Makinen@softqa.fi Tietojen siirto DOORSista ja DOORSiin Yhteistyökumppaneilla ei välttämättä ole käytössä
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
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,
HELIA 1 (15) Outi Virkki Tietokantasuunnittelu
HELIA 1 (15) Luento 2.6 Käyttöoikeuksista ja suojauksesta... 2 Suojausten suunnittelu... 3 Käyttäjätunnukset... 4 Tunnuksen luominen... 5 Tunnuksen muuttaminen... 6 Tunnuksen poistaminen... 6 Oikeudet
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
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
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
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
TIETOKANNAN NORMALISOINTI JA NORMAALIMUODOT
TIETOKANNAN NORMALISOINTI JA NORMAALIMUODOT A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin
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
17 BUDJETOINTI. Asiakaskohtainen Budjetti. 17.1 Ylläpito-ohjelma. Dafo Versio 10 BUDJETOINTI. Käyttöohje. BudgCust. 17.1.1 Yleistä
17 Asiakaskohtainen Budjetti 17.1 Ylläpito-ohjelma 17.1.1 Yleistä BudgCust Ohjelmalla avataan järjestelmään asiakaskohtaisia budjetteja, jotka annetaan kuukausitasolla (oletus). 17.1.2 Parametrit Ohjelmaa
Fyysinen suunnittelu
Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Fyysinen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luvusta 9 Jouni
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,
Written by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36
!!!!! Relaatiotietokannat ovat vallanneet markkinat tietokantojen osalta. Flat file on jäänyt siinä kehityksessä jalkoihin. Mutta sillä on kuitenkin tiettyjä etuja, joten ei se ole täysin kuollut. Flat
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
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
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
HELIA 1 (16) Outi Virkki Tietokantasuunnittelu
HELIA 1 (16) Luento 3.2 Suorituskyvyn optimointi jatkuu...... 2 Tietojen tallennusratkaisut... 2 Tiedon tallennuksen yksiköitä... 3 Loogiset... 3 Fyysiset... 3 Tallennusmäärittelyt Oraclessa... 5 Loogiset
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
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
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,
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
Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2
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)
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 20.3.2018 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2018 Luento 3 Ti 20.3.2018
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ö...
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
Tikon ostolaskujen käsittely
Toukokuu 2013 1 (7) 6.3.0 Copyright Aditro 2013 Toukokuu 2013 2 (7) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen
Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:
Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Microsoft SQL käyttö Yleistä VisualStudiosta Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen: - sovellushallintaan -
Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:
Linux-harjoitus 6 Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,
TT00AA12-2016 - Ohjelmoinnin jatko (TT10S1ECD)
TT00AA12-2016 - Ohjelmoinnin jatko (TT10S1ECD) Ohjelmointikäytännöt 21/3/11 Mikko Vuorinen Metropolia Ammattikorkeakoulu 1 Sisältö 1) Mitä on hyvä koodi? 2) Ohjelmointikäytäntöjen merkitys? 3) Koodin asettelu
Algoritmit 1. Luento 7 Ti Timo Männikkö
Algoritmit 1 Luento 7 Ti 31.1.2017 Timo Männikkö Luento 7 Järjestetty binääripuu Binääripuiden termejä Binääripuiden operaatiot Solmun haku, lisäys, poisto Algoritmit 1 Kevät 2017 Luento 7 Ti 31.1.2017
Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun.
StorageIT 2006 varmuuskopiointiohjelman asennusohje. Hyvä asiakkaamme! Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun. Ennen asennuksen aloittamista Varmista, että
PALKKA-AINEISTON SIIRTOTIEDOSTO
Sivu 1(6) PALKKA-AINEISTON SIIRTOTIEDOSTO Erittelytason palkka-aineiston siirtotiedostolla tuodaan Procountorin palkanlaskentaan tiedot maksettavista palkoista ja niihin liittyvistä dimensioinneista. Siirtotiedosto
Muuttujien määrittely
Tarja Heikkilä Muuttujien määrittely Määrittele muuttujat SPSS-ohjelmaan lomakkeen kysymyksistä. Harjoitusta varten lomakkeeseen on muokattu kysymyksiä kahdesta opiskelijoiden tekemästä Joupiskan rinneravintolaa
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,
Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.
TIETOKANTA MERIKOTKIEN SEURANTAAN Käyttöohje Versiohistoria: Versio Päivämäärä Kuvaus Tekijä 1.0 11.12.2007 Ensimmäinen luonnos Janne Piippo 2.0 13.12.2007 Virallinen verio Janne Piippo HELSINGIN YLIOPISTO
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
FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien
Monen taulun kyselyt FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: SELECT FROM Tuloksena on taululistassa lueteltujen taulujen rivien karteesinen
Esimerkkiprojekti. Mallivastauksen löydät Wroxin www-sivuilta. Kenttä Tyyppi Max.pituus Rajoitukset/Kommentit
Liite E - Esimerkkiprojekti E Esimerkkiprojekti Olet lukenut koko kirjan. Olet sulattanut kaiken tekstin, Nyt on aika soveltaa oppimiasi uusia asioita pienen, mutta täydellisesti muotoiltuun, projektiin.
SQL:N PERUSTEET MARKKU SUNI
SQL:N PERUSTEET MARKKU SUNI Relaatiomallisen tietokannan käsittely Tietojen saanti, talletus ja päivitys tapahtuu SQL-kielellä Yhtä operaatiota sanotaan kyselyksi (query) Kyselyjä voidaan laittaa peräkkäin
TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO
TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO JOUNI HUOTARI 2005-2010 OLAP-OHJETEKSTIT KOPIOITU MICROSOFTIN OHJATUN OLAP-KUUTION TEKO-OHJEESTA ESIMERKIN KUVAUS JA OLAP-MÄÄRITELMÄ
HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki
HELIA TIKO-05 1 (17) SQL / DML 4 Alikyselyt...2 Joukko-operaatiot...7 Yhdiste, unioni...8 Leikkaus...9 Erotus... 10 Tietokannan datan muokkaus... 11 Lisäys... 11 Yhden rivin lisääminen... 12 Useamman rivin
Algoritmit 2. Luento 6 To Timo Männikkö
Algoritmit 2 Luento 6 To 28.3.2019 Timo Männikkö Luento 6 B-puun operaatiot Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2019 Luento 6 To 28.3.2019 2/30 B-puu 40 60 80 130 90 100
Action Request System
Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 21.3.2017 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2017 Luento 3 Ti 21.3.2017
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)
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
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
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)
RADAR - RANDOM DATA GENERATOR
YLEISKUVAUS Radar on sovellus, jolla voi luoda näennäisen oikeaa satunnaisdataa testaus-, demo - ja muihin tarkoituksiin. TIEDUSTELUT Juha Levonen 050 372 5797 juha.levonen@kantapeikko.fi Osa datasta generoidaan
Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.
2. Taulukot 2.1 Sisältö Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.2 Yleistä
Sisältö. 2. Taulukot. Yleistä. Yleistä
Sisältö 2. Taulukot Yleistä. Esittely ja luominen. Alkioiden käsittely. Kaksiulotteinen taulukko. Taulukko operaation parametrina. Taulukko ja HelloWorld-ohjelma. Taulukko paluuarvona. 2.1 2.2 Yleistä
SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN
SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN Usein tarvitaan käyttäjän käsin syöttämiä lukuja eri tarkoituksiin. Tällaisia ovat mm. budjetti-, ennuste-, tavoite- ym. luvut. Lukuja syötetään eri kohteille,
Tikon ostolaskujen käsittely
Toukokuu 2014 1 (8) Toukokuu 2014 2 (8) Sisällysluettelo 1. Käyttäjäasetukset... 3 2. Yleiset parametrit... 3 3. Kierrätysasetukset... 3 4. palvelimen tiedot... 4 5. lähetyksen aktivointi... 5 6. Eräajot
FYYSINEN SUUNNITTELU
IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU JA IIO30220 DATABASE MANAGEMENT / TIETOKANNAN HALLINTA FYYSINEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI,
Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä
Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta Hajautettu tietokanta Jokainen hajautettu tietokanta muodostaa oman kokonaisuutensa Loogisesti yhtenäinen data on hajautettu tietokantoihin (eri
Tietorakenteet, laskuharjoitus 7, ratkaisuja
Tietorakenteet, laskuharjoitus, ratkaisuja. Seuraava kuvasarja näyttää B + -puun muutokset lisäysten jälkeen. Avaimet ja 5 mahtuvat lehtisolmuihin, joten niiden lisäys ei muuta puun rakennetta. Avain 9
Asiakastietojen tuominen toisesta tietokannasta etaika-ohjelmistoon. Kuinka yhdistän tietoja eri asiakastietokantojen välillä
Asiakastietojen tuominen toisesta tietokannasta etaika-ohjelmistoon Kuinka yhdistän tietoja eri asiakastietokantojen välillä Aloitus Asiakastietoja voidaan tuoda ulkoisesta lähteestä CSV-tiedostona (Excel)
DOORS Word DOORS 29.04.2004. SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi
DOORS Word DOORS 29.04.2004 SoftQA Pekka Mäkinen Pekka.Makinen@softqa.fi Tietojen siirto DOORSista ja DOORSiin Yhteistyökumppaneilla ei välttämättä ole käytössä Telelogic DOORS -ohjelmistoa, jolloin vaatimusten
1 Kannat ja kannanvaihto
1 Kannat ja kannanvaihto 1.1 Koordinaattivektori Oletetaan, että V on K-vektoriavaruus, jolla on kanta S = (v 1, v 2,..., v n ). Avaruuden V vektori v voidaan kirjoittaa kannan vektorien lineaarikombinaationa:
Kirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina
Kirjasto Kevät 2001 Auvinen Annemari Niemi Anu Harjoitustyö 7.4.2001 Sisällysluettelo 1. Yleiskuvaus... 3 2. Vaatimukset... 3 2.1. Toiminnalliset... 3 2.1.1. Sisäänkirjautuminen... 3 2.1.2. Nimikkeiden
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 17.2.2010 T-106.1208 Ohjelmoinnin perusteet Y 17.2.2010 1 / 41 Sanakirja Monissa sovelluksissa on tallennettava rakenteeseen avain arvo-pareja. Myöhemmin rakenteesta
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 toistuva tieto vie tilaa ylläpito muodostuu hankalaksi ylläpito-operaatioilla voi