Puuhakemistoista flash-levyllä
|
|
- Kauko Heikkilä
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 Puuhakemistoista flash-levyllä Antti Tikka Espoo Seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
2 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty/Section Matemaattis-luonnontieteellinen tdk Tekijä Författare Author Antti Tikka Työn nimi Arbetets titel Title Puuhakemistoista flash-levyllä Laitos Institution Department Tietojenkäsittelytieteen laitos Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art Level Seminaari Aika Datum Month and year Sivumäärä Sidoantal Number of pages 7 Tiivistelmä Referat Abstract Suuret flash-levyt ovat tulleet houkuttelevaksi vaihtoehdoksi magneettisille kovalevyille johtuen niiden nopeasta hajaluvusta, pienestä virrankulutuksesta ja muista ominaisuuksista. Kuitenkin kirjoitukset, erityisesti hajakirjoitukset ovat huomattavasti hitaampia johtuen siitä, että levyllä oleva vanha tieto on pyyhittävä pois ennen kuin sen tilalle voidaan kirjoittaa uutta tietoa. Tästä johtuen kovalevyillä käytettävät B+-puut eivät sovellu käytettäväksi flash-levyillä. Tässä kirjoituksessa esitellään FD-puu, hakemistorakenne, joka on suunniteltu erityisesti flashlevyä varten. Tämä tietorakenne sisältää pienen B+-puun ja useita järjestettyjä taulukoita. FDpuuta käyttämällä pystytään vähentämään hajakirjoitusten määrää hakemista kuitenkaan hidastamatta. Kirjoituksessa osoitetaan teoreettisesti ja kokeellisesti, että FD-puu voittaa flashlevyä käytettäessä muut puutietorakenteet sekä haku- että kirjoitusvaltaisilla kuormilla. ACM B.3, H.2.2, E.1 Avainsanat Nyckelord Keywords tietokanta, flash, puu, hakemisto, tietorakenne Säilytyspaikka Förvaringställe Where deposited Muita tietoja Övriga uppgifter Additional information
3 Sisältö 1 Johdanto FD-puun rakenne Haku FD-puusta Lisäys FD-puuhun Poisto ja päivitys FD-puussa Testituloksia Yhteenveto... 7
4 1 1 Johdanto Flash-muistit tai SSD-levyt ovat tulleet uudeksi pysyvän tallennuksen vaihtoehdoksi perinteisen kovalevyn rinnalle. Flash-muistien etuja ovat tiedon nopea hajasaanti, alhainen virrankulutus ja erinomainen iskunkestävyys. Lisäksi flash-muistien kapasiteetti kaksinkertaistuu joka vuosi. Hiljattain on arveltu, että flash-muistit voivat syrjäyttää kovalevyt ja antaa paremman suorituskyvyn tietokantapalvelimissa. Puuhakemisto ovat yleisin tietokannoissa käytetty tiedonhakumenetelmä. Tässä kirjoituksessa tarkastellaan miten puuhakemisto tulisi toteuttaa flash-muisteja varten, jotta flash-muistin ominaisuuksista saataisiin mahdollisimman suuri hyöty [YBQ09]. Kovalevyillä tietosivun lukemiseen tai kirjoittamiseen kuluva aika koostuu pääasiassa hakuvarren siirrosta ja levyn pyörähdysviiveestä. Flash-muisteja käytettäessä aikaa ei kulu osien liikutteluun. Tämän vuoksi tiedon hajasaanti on noin 100 kertaa nopeampaa kuin kovalevyillä. Flash-muistit ovat kuitenkin EEPROM-tyyppisiä (electrically-erasable programmable read-only memory) mikä tarkoittaa, että flash-muisteja käytettäessä uutta tietoa ei voida kirjoittaa vanhan päälle vaan vanhat tiedot on ensin tyhjennettävä iso lohko kerrallaan. Näin ollen jokainen kirjoitusoperaatio voi vaatia ison lohkon tyhjentämistä. Lohkon tyhjentäminen flash-muistista on erityisen hidasta. Tästä johtuen tiedon kirjoittaminen hajanaisiin paikkoihin on noin 100 kertaa hitaampaa kuin lukeminen. Kuten taulukosta 1 näkyy Samsung 32 GB flash-muisti suorittaa sekunnissa 3100 hajalukua, mutta vain 25 hajakirjoitusta. Vaikka viime aikoina on valmistettu tehokkaampia flash-muisteja kuten Intel exreme, niiden hajakirjoitus on kuitenkin noin 10 kertaa hitaampaa hajalukuun nähden. Samsung 32 GB SSD Intel extreme 32/64 GB SSD Seagate 7200 RPM SATA kovalevy Hajaluku Hajakirjoitus Taulukko 1. SSD- ja kovalevyjen luku- ja kirjoitusnopeudet (operaatiota/sekunti). Tässä kirjoituksessa esitellään FD-puu, jossa tietojen päivitystä on pyritty tehostamaan hakemista kuitenkaan hidastamatta. Tämä on puuhakemisto, jossa on otettu huomioon flash-muistien eritysominaisuudet. Tehostaminen saadaan aikaan tietorakenteella, jossa kirjoittaminen tapahtuu harvoin ja suurissa peräkkäisiä tietueita käsittävissä erissä. FD-puu koostuu pienestä B+-puusta, jota kutsutaan pääpuuksi (head tree) ja muutamasta tasosta järjestettyjä taulukoita (sorted run) pääpuun alla. Uudet tietueet lisätään pääpuuhun, josta ne ajoittain siirretään alempien tasojen järjestettyihin taulukoihin.
5 2 Luvussa 2 esitellään FD-puun rakenne. Luvuissa 3, 4 ja 5 tarkastellaan tietojen hakua, lisäystä, poistoa ja päivitystä FD-puussa. Luvussa 6 esitellään testituloksia ja vertaillaan erityyppisten puiden tehokkuutta erilaisissa tilanteissa. Luvussa 7 esitetään yhteenveto kirjoituksesta. 2 FD-puun rakenne FD-puu koostuu useista tasoista, joista käytetään merkintöjä L 0, L 1, jne. Ylin taso L 0 on B+-puu, jota kutsutaan pääpuuksi. Muut tasot L 1 :stä alaspäin ovat järjestettyjä taulukoita, jotka on tallennettu fyysisesti peräkkäisille sivuille. Kuvassa 1 on esitetty esimerkki FD-puun rakenteesta. Kuvan puussa on kolme tasoa, pääpuu ja kaksi järjestettyä taulukkoa. Pääpuun lehtisivuilta viitataan alemman tason järjestetyn taulukon sivuille. Kultakin järjestetyn taulukon ei-lehtisivuilta viitataan alemmalla tasolla olevaan järjestettyyn taulukkoon. Kuva 1. Esimerkki FD-puun rakenteesta. Jokaisella FD-puun tasolla on kiinteä kapasiteetti, joka kasvaa eksponentiaalisesti puuta alaspäin edettäessä. Päivitykset tehdään ensin pääpuuhun ja myöhemmin siirretään alemmilla tasoilla oleviin järjestettyihin taulukoihin. Koska pääpuu mahtuu kokonaan keskusmuistiin, flash-levylle ei ole yleensä tarpeen kirjoittaa yksittäisten FD-puuhun tehtävien päivitysten yhteydessä. Pääpuun koko valitaan siten, että se mahtuu yhteen flash-levyltä kerralla tyhjennettävään lohkoon. FD-puuta voidaan päivittää keskusmuistista flash-levylle suurissa useita fyysisesti peräkkäisiä sivuja sisältävissä lohkoissa, mikä on tehokasta flash-levyn ominaisuuksista johtuen. FD-puussa on kahdenlaisia tietueita: hakemistotietueita (index entry) ja aitoja (fence). Hakemistotietue sisältää kolme kenttää avaimen, monikkotunnisteen ja tyypin, jota käytetään apuna tietueiden poistamisprosessissa. Aita on osoitin FD-puun alemman tason sivulle. Siinä on kolme kenttää: avain, sivutunniste ja tyyppi. Aidat jaetaan edelleen ulkoisiin ja sisäisiin aitoihin.
6 3 o Ulkoinen aita (external fence). Ulkoisen aidan avaimeksi otetaan suurimman tietueen avain viitattavalta alemman tason sivulta. Esimerkiksi kuvassa 1 näkyvän sivun f tietue 46 on ulkoinen aita. o Sisäinen aita (internal fence). Jos kahden vierekkäisen ulkoisen aidan väliin jää tietueita vähintään yhden sivun verran, sisäisiä aitoja lisätään kunkin väliin jäävän sivun viimeiseksi tietueeksi. Sisäisen aidan avaimen arvo otetaan viittaavan sivun viimeisestä hakemistotietueesta. Kuvan 1 sivun f tietue 53 on sisäinen aita, joka viittaa sivulle n. Tämän aidan avulla voidaan välttää sivun g lukeminen kun haetaan avaimia väliltä Kullakin FD-puun tasolla aidat ja hakemistotietueet järjestetään avainten arvojen mukaan nousevaan järjestykseen. Ulkoisten aitojen määrä kullakin tasolla on yhtä suuri kuin sivujen määrä alemmalla tasolla. Sisäisiä aitoja on enintään yksi per sivu. 3 Haku FD-puusta Haettaessa yksittäistä arvoa tai arvoväliä FD-puusta, kaikki tasot käydään läpi ylhäältä alaspäin. Ensin haetaan pääpuusta samoin kuin mistä tahansa B+-puusta. Seuraavaksi edetään kaikki järjestettyjen taulukoiden tasot läpi yksi kerrallaan. Yksittäisen sivun sisällä käytetään binäärihakua ensimmäisen tietueen löytämiseksi. Tämän jälkeen sivua selataan tietue kerrallaan ja ehdot täyttävät tietueet lisätään tulosjoukkoon. Sitten siirrytään aidan sivutunnisteen perusteella alemman tason sivulle. Kuvassa 2 on esitetty esimerkki avaimen 48 hakemisesta FD-puusta. Kuva 2. Esimerkki avaimen 48 hausta FD-puusta.. Haku FD-puusta ei välttämättä ole hitaampi kuin B+-puusta. Vaikka FD-puu voikin olla korkeampi kuin samankokoinen B+-puu, FD-puussa on kaksi hakua tehostavaa ominaisuutta. Ensinnäkin FDpuun sivut ovat täynnä tietueita ja yhden tason tietueet sijaitsevat muistissa fyysisesti peräkkäin. Kun taas B+-puussa sivut ovat yleensä noin 70 % täynnä. Toiseksi FD-puussa ei ole
7 4 vanhenemisongelmaa kuten B+-puussa, jossa lehtisivujen sijainnit hajaantuvat fyysisesti suurelle alueelle kun päivityksiä on tehty suuri määrä. 4 Lisäys FD-puuhun Uutta tietuetta lisättäessä tietue lisätään ensin pääpuuhun L 0. Jos tietueiden määrä pääpuussa ylittää sen kapasiteetin, siirretään L 0 tason tietueet L 1 tasolle lomittamalla tasot keskenään. Yleisesti ottaen lomitusoperaatio suoritetaan kahdelle vierekkäiselle tasolle aina kun niistä pienempi ylittää kapasiteettinsa. Operaatiossa selataan molempien tasojen tietueet järjestyksessä ja yhdistetään ne yhdeksi järjestetyksi taulukoksi peräkkäisille sivuille. Uusi järjestetty taulukko L i sisältää kaikki alemman tason hakemistotietueet sekä kaikki ylemmän tason L i-1 hakemistotietueet ja ulkoiset aidat. Uusia sisäisiä aitoja lisätään uuteen järjestettyyn taulukkoon tarpeen mukaan. Lomitusoperaation yhteydessä lomitusta ylemmät tasot päivitetään ulkoisten aitojen osalta. Näin ollen tasojen L i -1 ja L i lomittamisessa on päivitettävä tasot L 0 :sta L i :hin. eli i + 1 tasoa. Jos kahden tason lomituksessa syntyvä uusi taso L i ylittää kapasiteettinsa, tasot L i ja L i+1 lomitetaan myös. Lomittamista jatketaan kunnes lomituksen tuloksena saatava taso ei ylitä kapasiteettiaan. 5 Poisto ja päivitys FD-puussa Tietueen poistaminen FD-puusta tehdään lisäämällä puuhun erityinen suodintietue. Tällöin poistettavasta tietueesta tulee ns. haamutietue ja se jätetään puuhun sellaisenaan. Tarkastellaan nyt poistamisprosessia. Ensin FD-puusta haetaan poistettavat tietueet. Seuraavaksi puuhun lisätään suodintietueet, joiden avaimet ja monikkotunnisteet vastaavat poistettavia tietueita. Uusien tietueiden lisäyksellä yksinkertaisen poistamisen sijaan pystytään vähentämään pienten hajakirjoitusten määrää. Koska poistamisessa lisättävät suodintietueet tekevät poistettavista tietueista haamutietueita, hauissa saataviin hakutuloksiin tulee näitä molempia tyyppejä. Näin ollen hakutuloksista on poistettava suodintietueet ja näiden avainten ja monikkotunnisteiden arvoja vastaavat haamutietueet. Lomitusoperaatiossa suodintietueet ja haamutietueet siirretään muiden tietueiden mukana alemmille tasoille. Kun suodintietueet ja niitä vastaavat haamutietueet lomituksen yhteydessä kohtaavat toisensa samalla tasolla, ne jätetään tallentamatta uuteen järjestettyyn taulukkoon. Näin ollen suodin- ja haamutietueet lopulta poistetaan kokonaan. Kuvassa 3 on esitys poistamisprosessin eri vaiheista. Suodintietueet on merkitty siinä yhtenäisellä alleviivauksella ja haamutietueet katkonaisella alleviivauksella. Kuvassa 2(a) poistetaan
8 5 hakemistotietueet 37 tasolta L 0, 45 tasolta L 2 ja toinen 16 tasolta L 2. Koska tietue 37 on pääpuussa L 0, se poistetaan suoraan tasolta L 0. Suodintietueet 45 ja 16 lisätään pääpuuhun. Kun tasot L 0 ja L 1 lomitetaan kuten kuvassa 2(b) näytetään, suodintietue 45 kohtaa haamutietueensa ja molemmat tietueet jätetään tallentamatta. Kun tasot L 1 ja L 2 lomitetaan kuten kuvassa 2(c) on esitetty, suodintietue 16 ja sitä vastaava haamutietue jätetään pois. Huomattakoon, että ensimmäinen 16 tietue jää indeksiin lomituksen jälkeen. Kuva 3. Esimerkki tietueiden poistamisesta FD-puusta. Päivitysoperaatio eli olemassa olevan tietueen arvon muuttaminen toteutetaan FD-puussa poistamalla vanhaa arvoa vastaava tietue ja lisäämällä uusi tietue uudella arvolla. 6 Testituloksia Tarkastellaan nyt testaustuloksia, ja verrataan FD-puun suorituskykyä B+-puuhun, LSM-puuhun, BFTL:ään, joka on flash-muistia varten kehitetty B+-puun variaatio. Testit on ajettu PC:llä, jossa on Intel QuadCore CPU 2,4 GHz, Windows XP, 2 GB keskusmuistia ja 32 GB Samsung NAND flashlevy. Hakemistotietueet sisältävät 4-tavuisen avaimen ja toisen 4-tavuisen kentän, jossa on tyyppi ja monikkotunniste. Avainten arvot ovat tasaisesti jakautuneet. Sivun kooksi on asetettu 2 KB, joka on fyysinen sivun koko flash-muistissa. Käytössä on LRU-puskurinhallitsin, jotta viimeisimpinä käytetyt sivut saataisiin välimuistiin. Puskurin kooksi on asetettu 8 MB. Käyttöjärjestelmän puskurointi on kytketty pois päältä häiriöiden minimoimiseksi. Kuvassa 3 on esitetty haun tehokkuus neljälle erityyppiselle puuhakemistolle, kun hakemiston kokoa on muunneltu. Neljästä eri puutyypistä BFTL on hitain, koska se vaatii useiden hajanaisten sivujen lukemista puusolmun käsittelemiseksi. B+-puu ja FD-puu ovat parhaita ja ne suoriutuvat melko samalla tavalla hakemiston koosta riippumatta. FD-puu on hiukan nopeampi kuin B+-puu, koska järjestettyjen taulukoiden sivut ovat täysiä ja tallennettuna fyysisesti peräkkäin. LSM-puu on hitaampi kuin B+-puu tai FD-puu, koska yksittäinen haku LSM-puusta vaatii hakemista useasta eri B+-puusta.
9 6 Kuva 3. Haun tehokkuus hakemiston koon funktiona. Kuvassa 4 on esitetty lisäysoperaation tehokkuus neljälle erityyppiselle puuhakemistolle kun hakemiston kokoa on muunneltu. Neljästä erityyppisestä hakemistosta lisäysoperaatio on hitain B+puussa ja nopein LSM-puussa. Lisäysoperaation tehokkuus FD-puussa on hiukan hitaampi kuin LSM-puussa. Tämä johtuu siitä, että FD-puussa on enemmän aputietueita (esim. aitoja) kuin LSMpuussa. Kuitenkin LSM-puu ja FD-puu ovat kertaluokkaa nopeampia kuin B+-puu ja BFTL. Kuva 4. Lisäysoperaation tehokkuus hakemiston koon funktiona. Kuvassa 5 on esitetty neljän erityyppisen puuhakemiston kokonaistehokkuus kahdella eri työkuormalla. Kaikki neljä indeksiä sisältävät 10 9 tietuetta. Niiden koot ovat noin 8 GB. Pystyakselilla on keskimääräinen operaation suoritukseen kuluva aika. Kuvassa vaaka-akselilla näkyvä W-search simuloi hakuvaltaista työkuormaa. Se sisältää 80 % hakuja, 10 % lisäyksiä, 5 % päivityksiä ja 5 % poistoja. Kuvassa vaaka-akselilla oleva W-update simuloi päivitysvaltaista työkuormaa. Se sisältää 20 % hakuja, 40 % lisäyksiä, 20 % poistoja ja 20 % päivityksiä. W-search-
10 7 kuormalla flash-levyä käytettäessä FD-puu on 15.8X, 2.3X, 5.2X nopeampi kuin B+-puu, LSM-puu ja BFTL. W-update-kuormalla flash-levyä käytettäessä FD-puu on 61.4X, 1.7X, 4.9X nopeampi kuin B+-puu, LSM-puu ja BFTL. Kuva 5. Kahden eri kuormitustavan kokonaissuorituskyky. 7 Yhteenveto B+-puut on suunniteltu kovalevyä varten eivätkä näin ollen sovellu käytettäväksi flash-levyllä. FDpuu on suunniteltu erityisesti flash-levyä varten. Tämä puutietorakenne hyödyntää flash-muistin erityispiirteitä nopeita hajalukuja ja vähentämällä hitaiden hajakirjoitusten määrää. Kirjoituksessa esitellyt teoreettiset ja kokeelliset tutkimukset osoittavat, että FD-puussa yhdistyvät haun ja lisäysten kannalta parhaat piirteet muista puuhakemistoista ja, että se voittaa nämä puuhakemistorakenteet suorituskyvyltään sekä haku- että päivityspainotteisilla kuormilla. Lähteet YBQ09 Yinan, L., Bingsheng, H., Qiong, L., Ke, Y., Tree indexing on flash disks. ICDE 2009
arvostelija OSDA ja UDDI palveluhakemistoina.
Hyväksymispäivä Arvosana arvostelija OSDA ja UDDI palveluhakemistoina. HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty/Section Laitos Institution
LisätiedotMEMS-muisti relaatiotietokannoissa
MEMS-muisti relaatiotietokannoissa Antti Tikka Espoo 28.2.2009 Seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto
LisätiedotSelainpelien pelimoottorit
Selainpelien pelimoottorit Teemu Salminen Helsinki 28.10.2017 Seminaaritutkielma Helsingin yliopisto Tietojenkäsittelytiede ! 1 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta
LisätiedotTyön laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages
Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos Institution Department Tekijä Författare Author Työn nimi Arbetets titel Title Oppiaine Läroämne Subject Työn laji Arbetets art Level Aika Datum Month
LisätiedotPro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg
Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA Karoliina Ljungberg 16.04.2009 Ohjaajat: Ari Venäläinen, Jouni Räisänen
LisätiedotAika/Datum Month and year Kesäkuu 2012
Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos/Institution Department Filosofian, historian, kulttuurin ja taiteiden tutkimuksen laitos Humanistinen tiedekunta Tekijä/Författare Author Veera Lahtinen
Lisätiedotoheishakemistoja 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ätiedotPN-puu. Helsinki Seminaari: Tietokannat nyt HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
PN-puu Erno Härkönen Helsinki 24.10.2006 Seminaari: Tietokannat nyt HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto
Lisätiedot! #! %! & #!!!!! ()) +
! #! %! & #!!!!! ()) + Tiedekunta/Osasto Fakultet/Sektion Faculty Humanistinen tiedekunta Laitos Institution Department Taiteiden tutkimuksen laitos Tekijä Författare Author Matti Pesonen Työn nimi Arbetets
LisätiedotKoht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa
Kohtdialogia? Organisaationtoimintaympäristönteemojenhallinta dynaamisessajulkisuudessatarkastelussatoiminta sosiaalisessamediassa SatuMariaPusa Helsinginyliopisto Valtiotieteellinentiedekunta Sosiaalitieteidenlaitos
LisätiedotHakemistorakenteet. R & G Chapter Tietokannan hallinta, kevät 2006, Jan 1
Hakemistorakenteet R & G Chapter 10 16.02.06 Tietokannan hallinta, kevät 2006, Jan 1 Hakemistotyypeistä Hakemistomerkintä sisältää hakemistoavaimen (indexing key) muodostusperustan määrittelemänä tietueesta
LisätiedotD B. Harvat hakemistot. Harvat hakemistot
Harvassa hakemistossa on ei ole hakemistomerkintöjä jokaista tietuetta kohden vaan yksi merkintä jotain isompaa kokonaisuutta esimerkiksi sivua tai sivujoukkoa (esim. saman uran sivut) kohti Harvan hakemiston
LisätiedotHakemistotyypeistä. Hakemistorakenteet. Hakemiston toteutuksesta. Hakemiston toteutuksesta
Hakemistotyypeistä Hakemistorakenteet R & G Chapter 10 Hakemistomerkintä sisältää hakemistoavaimen (indexing key) muodostusperustan määrittelemänä tietueesta tai tietuejoukosta tuotettu tunnus yleensä
LisätiedotLuento 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ätiedotMaailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan
Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan Pro gradu -tutkielma 31.1.2012 Helsingin yliopisto Humanistinen tiedekunta Filosofian, historian,
LisätiedotLuonnontieteiden popularisointi ja sen ideologia
Luonnontieteiden popularisointi ja sen ideologia Tapauksina Reino Tuokko ja Helsingin Sanomat 1960-luvulla Ahto Apajalahti Helsingin yliopisto Humanistinen tiedekunta Suomen ja Pohjoismaiden historia Pro
LisätiedotKatsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin
INSTITUUTIOTTALOUSKASVUNEDELLYTYKSENÄ KatsauskorruptionvaikutuksestaVenäjänalueelliseentalouskasvuunjasuoriin ulkomaisiininvestointeihin2000 2010 AshekMohamedTarikHossain HelsinginYliopisto Valtiotieteellinentiedekunta
LisätiedotAlgoritmit 2. Luento 6 Ke Timo Männikkö
Algoritmit 2 Luento 6 Ke 29.3.2017 Timo Männikkö Luento 6 B-puun operaatiot B-puun muunnelmia Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2017 Luento 6 Ke 29.3.2017 2/31 B-puu
LisätiedotHajautusrakenteet. R&G Chapter Tietokannan hallinta, kevät 2006, Jan 1
Hajautusrakenteet R&G Chapter 11 16.02.06 Tietokannan hallinta, kevät 2006, Jan 1 Hajautukseen perustuvat tiedostorakenteet Hajautukseen perustuvissa tiedostorakenteissa on tavoitteena yksittäisen tietueen
LisätiedotAlgoritmit 1. Luento 6 Ke Timo Männikkö
Algoritmit 1 Luento 6 Ke 25.1.2017 Timo Männikkö Luento 6 Järjestetty lista Listan toteutus dynaamisesti Linkitetyn listan operaatiot Vaihtoehtoisia listarakenteita Puurakenteet Binääripuu Järjestetty
LisätiedotKuva 1: J+-puun rakenne [HXS09].
Johdanto Tietotekniikka on kehittynyt viime vuosikymmenten aikana nopeata vauhtia. Tämä on näkynyt niin tietokoneiden tehoissa kuin myös hinnoissa. Myös tietokoneiden keskusmuistit ovat kasvaneet ja ovat
LisätiedotD B. Levykön rakenne. pyöriviä levyjä ura. lohko. Hakuvarsi. sektori. luku-/kirjoituspää
Levyn rakenne Levykössä (disk drive) on useita samankeskisiä levyjä (disk) Levyissä on magneettinen pinta (disk surface) kummallakin puolella levyä Levyllä on osoitettavissa olevia uria (track), muutamasta
LisätiedotAlgoritmit 2. Luento 5 Ti Timo Männikkö
Algoritmit 2 Luento 5 Ti 26.3.2019 Timo Männikkö Luento 5 Puurakenteet B-puu B-puun korkeus B-puun operaatiot B-puun muunnelmia Algoritmit 2 Kevät 2019 Luento 5 Ti 26.3.2019 2/34 B-puu B-puut ovat tasapainoisia
LisätiedotAlgoritmit 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
LisätiedotTiedostorakenteet. R&G Chapter Tietokannan hallinta, kevät 2006, Jan 1
Tiedostorakenteet R&G Chapter 9 16.02.06 Tietokannan hallinta, kevät 2006, Jan 1 Tiedostorakenteet Tiedostojen tehokkuutta yhtä kyselyä kohti arvioidaan usein tarvittavien levyhakujen määrällä. kuten levykäsittelyn
LisätiedotHallintomallit Suomen valtionhallinnon tietohallintostrategioissa
Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa Lauri Eloranta Helsingin yliopisto Valtiotieteellinen tiedekunta Viestintä Pro gradu -tutkielma, 2014 Hallintomallit)Suomen)valtionhallinnon)tietohallintostrategioissa
LisätiedotHajautusrakenteet. Hajautukseen perustuvat tiedostorakenteet. Hajautukseen perustuvat tiedostorakenteet. Hajautukseen perustuvat tiedostorakenteet
Hajautusrakenteet R&G Chapter Hajautukseen perustuvissa tiedostorakenteissa on tavoitteena yksittäisen tietueen nopea haku. Tähän pyritään siten, että tietueen sijoituspaikan eli solun (cell, bucket) osoite
LisätiedotTiedekunta/Osasto Fakultet/Sektion Faculty Valtiotieteellinen tiedekunta
Tiedekunta/Osasto Fakultet/Sektion Faculty Valtiotieteellinen tiedekunta Laitos Institution Department Politiikan ja talouden tutkimuksen laitos Tekijä Författare Author Virta, Mikko Antero Työn nimi Arbetets
LisätiedotAlgoritmit 2. Luento 4 To Timo Männikkö
Algoritmit 2 Luento 4 To 21.3.2019 Timo Männikkö Luento 4 Hajautus Yhteentörmäysten käsittely Avoin osoitteenmuodostus Hajautusfunktiot Puurakenteet Solmujen läpikäynti Algoritmit 2 Kevät 2019 Luento 4
LisätiedotAlgoritmit 1. Luento 5 Ti Timo Männikkö
Algoritmit 1 Luento 5 Ti 24.1.2017 Timo Männikkö Luento 5 Järjestetty lista Järjestetyn listan operaatiot Listan toteutus taulukolla Binäärihaku Binäärihaun vaativuus Algoritmit 1 Kevät 2017 Luento 5 Ti
Lisätiedot58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen)
58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen) 1. Avaimet 1, 2, 3 ja 4 mahtuvat samaan lehtisolmuun. Tässä tapauksessa puussa on vain yksi solmu, joka on samaan aikaan juurisolmu
LisätiedotTKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto
Indeksin luonti ja hävitys TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto Komentoa ei ole standardoitu ja niinpä sen muoto vaihtelee järjestelmäkohtaisesti Indeksi voidaan
Lisätiedot7. Tasapainoitetut hakupuut
7. Tasapainoitetut hakupuut Tässä luvussa jatketaan järjestetyn sanakirjan tarkastelua esittämällä kehittynyt puutietorakenne. Luvussa 7.1. esitetään monitiehakupuun käsite. Se on järjestetty puu, jonka
LisätiedotTietorakenteet, 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
LisätiedotLisätään avainarvo 6, joka mahtuu lehtitasolle:
Helsingin Yliopisto, Tietojenkäsittelytieteen laitos Tietokannan hallinta, kurssikoe 11.6.2004, J. Lindström Ratkaisuehdotuksia 1. Hakemistorakenteet, 15p. Tutkitaan tyhjää B+-puuta, jossa jokaiselle hakemistosivulle
LisätiedotLuku 8. Aluekyselyt. 8.1 Summataulukko
Luku 8 Aluekyselyt Aluekysely on tiettyä taulukon väliä koskeva kysely. Tyypillisiä aluekyselyitä ovat, mikä on taulukon välin lukujen summa tai pienin luku välillä. Esimerkiksi seuraavassa taulukossa
LisätiedotAlgoritmit 2. Luento 5 Ti Timo Männikkö
Algoritmit 2 Luento 5 Ti 28.3.2017 Timo Männikkö Luento 5 Puurakenteet B-puu B-puun korkeus B-puun operaatiot Algoritmit 2 Kevät 2017 Luento 5 Ti 28.3.2017 2/29 B-puu Algoritmit 2 Kevät 2017 Luento 5 Ti
LisätiedotAlgoritmit 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
LisätiedotB + -puut. Kerttu Pollari-Malmi
B + -puut Kerttu Pollari-Malmi Tämä monista on alunperin kirjoitettu sksn 2005 kurssille osittain Luukkaisen ja Nkäsen vanhojen luentokalvojen pohjalta. Maaliskuussa 2010 pseudokoodiesits on muutettu vastaamaan
LisätiedotD B. Tietokannan hallinta kertaus
TKHJ:n pääkomponentit metadata TKHJ:ssä Tiedostojen käsittely puskurien rooli tiedostokäsittelyssä levymuistin rakenne ja käsittely mistä tekijöistä hakuaika muodostuu jonotus jos useita samanaikaisia
LisätiedotAlgoritmit 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
LisätiedotSSD-tietoiset hakemistorakenteet
SSD-tietoiset hakemistorakenteet Peitsa Lähteenmäki Helsinki 9.3.2012 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet
Lisätiedotprivate TreeMap<String, Opiskelija> nimella; private TreeMap<String, Opiskelija> numerolla;
Tietorakenteet, laskuharjoitus 7, ratkaisuja 1. Opiskelijarekisteri-luokka saadaan toteutetuksi käyttämällä kahta tasapainotettua binäärihakupuuta. Toisen binäärihakupuun avaimina pidetään opiskelijoiden
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Merkintöjen tulkintoja *++Pstack->top = item *Pstack->top++ = item (*Pstack->top)++ *(Pstack++)->top = item *(++Pstack)->top = item Lisää pinon toteutuksia Dynaaminen taulukko
LisätiedotTIEDONHALLINTA - 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ätiedot1. a) Laadi suoraviivaisesti kyselyä vastaava optimoimaton kyselypuu.
Helsingin yliopisto, Tietojenkäsittelytieteen laitos Kyselykielet, s 2006, Harjoitus 5 (7.12.2006) Tietokannassa on tietoa tavaroista ja niiden toimittajista: Supplier(sid,sname,city,address,phone,etc);
LisätiedotAlgoritmit 2. Luento 2 Ke Timo Männikkö
Algoritmit 2 Luento 2 Ke 15.3.2017 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2017 Luento
LisätiedotTietokoneen muisti nyt ja tulevaisuudessa. Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu
Tietokoneen muisti nyt ja tulevaisuudessa Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu Yleisesti Muisti on yksi keskeisimmistä tietokoneen komponenteista Random Access Memory on yleistynyt
LisätiedotCT50A2602 Käyttöjärjestelmät Seminaarityö. Tietokoneen muisti nyt ja tulevaisuudessa
CT50A2602 Käyttöjärjestelmät Seminaarityö Tietokoneen muisti nyt ja tulevaisuudessa Jyrki Eurén Raimo Asikainen Janne Laitinen Teppo Lapinkoski Manu Toivanen Pasi Ruuth Johdanto Taustaa Työn taustana ryhmän
LisätiedotAlgoritmit 2. Luento 2 To Timo Männikkö
Algoritmit 2 Luento 2 To 14.3.2019 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2019 Luento
LisätiedotLisätään avainarvo 1, joka mahtuu lehtitasolle:
Helsingin Yliopisto, Tietojenkäsittelytieteen laitos Tietokannan hallinta, kurssikoe 14.5.2004, J. Lindström Ratkaisuehdotuksia 1. Hakemistorakenteet, 15p. Tutkitaan tyhjää B+-puuta, jossa jokaiselle hakemistosivulle
Lisätiedot3. Tietokannan hakemistorakenteet
3. Tietokannan hakemistorakenteet Tiedoston tietueiden haku voi perustua johonkin monesta saantipolusta (access path): - perustiedoston tiedostorakenne - hakemistot, joita voidaan tehdä käsittelytarpeiden
Lisätiedot3. Tietokannan hakemistorakenteet
3. Tietokannan hakemistorakenteet Tiedoston tietueiden haku voi perustua johonkin monesta saantipolusta (access path): - perustiedoston tiedostorakenne - hakemistot, joita voidaan tehdä käsittelytarpeiden
LisätiedotSisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto
Sisällys 18. bstraktit tietotyypit Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.1 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:
LisätiedotOppimateriaalin kokoaminen ja paketointi
Oppimateriaalin kokoaminen ja paketointi Pekka Simola Helsinki 14.4.2004 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto
Lisätiedotv 1 v 2 v 3 v 4 d lapsisolmua d 1 avainta lapsen v i alipuun avaimet k i 1 ja k i k 0 =, k d = Sisäsolmuissa vähint. yksi avain vähint.
Yleiset hakupuut 4 Monitiehakupuu: Binäärihakupuu 0 1 3 5 6 7 8 v k 1 k k 3 v v 3 v 4 k 1 k 3 k 1 k k k 3 d lapsisolmua d 1 avainta Yleinen hakupuu? Tietorakenteet, syksy 007 1 Esimerkki monitiehakupuusta
LisätiedotVÄLIMUISTITIETOISET PUSKURIT. Markus Montonen
VÄLIMUISTITIETOISET PUSKURIT Markus Montonen Sisällys 1. Johdanto 2. L1-välimuistin puskuroinnin ongelma ja ratkaisuehdotus 3. L1-välimuistin puskurioperaation kokeellinen tutkiminen 4. L2-välimuistin
Lisätiedot!"#$%&'$("#)*+,!!,"*--.$*#,&--#"*/".,,%0 1&'23456789::94752;&27455<:4;2;&,9:=>23?277<&8=@74;9&ABBCDABBE
!"#$%&'$("#)*+,!!,"*--.$*#,&--#"*/".,,%0 1&'23456789::94752;&2745523?27747544H9;&IG@&JG9?=&15=5H42>:9 '28
LisätiedotAlgoritmit 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
Lisätiedot24.9.2015. Työasema- ja palvelinarkkitehtuurit (IC130301) Apumuistit. Kiintolevyt. 5 opintopistettä. Petri Nuutinen
Työasema- ja palvelinarkkitehtuurit (IC130301) 5 opintopistettä Petri Nuutinen 5 opintopistettä Petri Nuutinen Apumuistit Tarvitaan ohjelmien ja dokumenttien tallentamiseen, kiintolevyjen varmuuskopiointiin,
LisätiedotDell Fluid Data TM solutions
Dell Fluid Data TM solutions Älykästä tallennuksen virtualisointia Dell Compellent Juha_Ekstrom@dell.com 2.11.2011 Virtualisointi & Älykkyys Virtualisointi tarkoittaa tietojenkäsittelyssä tekniikkaa, jolla
LisätiedotKANSILEHDEN MALLISIVU
Teknisiä ohjeita pro gradu -tutkielmalle Teologian osasto 12.11.2013 Tässä annettavat ohjeet ovat suosituksia. Viime kädessä seurataan tutkielman ohjaajan antamia ohjeita! Tutkielman kansilehdelle asetellaan
LisätiedotLiitosesimerkki 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ätiedotD B. Harvat hakemistot
Harvat hakemistot Harvassa hakemistossa on ei ole hakemistomerkintöjä jokaista tietuetta kohden vaan yksi merkintä jotain isompaa kokonaisuutta esimerkiksi sivua tai sivujoukkoa (esim. saman uran sivut)
Lisätiedot18. Abstraktit tietotyypit 18.1
18. Abstraktit tietotyypit 18.1 Sisällys Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:
LisätiedotPalvelutasosopimukset ja niiden asema IT-ulkoistuksissa
Hyväksymispäivä Arvosana Arvostelija Palvelutasosopimukset ja niiden asema IT-ulkoistuksissa Marko Lehtimäki Helsinki 12.5. 2009 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos i HELSINGIN YLIOPISTO
LisätiedotFyysinen suunnittelu
Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Fyysinen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luvusta 9 Jouni
LisätiedotEbrary-palvelun e-kirjojen lukeminen selaimessa
Ebrary-palvelun e-kirjojen lukeminen selaimessa Palaute: nelli @uef.fi Ohje päivitetty: 1.9.2016 / KM Lukuohjeita myös Ebraryn sivuilla: New Online Reader Yliopiston käyttöön hankitussa Ebrary-palvelussa
LisätiedotD B. B+ -puun tasapainotus poistossa. B+ -puun tasapainotus poistossa. Poistot. B+ -puun tasapainotus poistossa. B+ -puun tasapainotus poistossa
Poistot Alkuperäisen B+ -puun idean mukaisesti tasapainotusta tehdään myös poistossa 50 Jos datasivun täyttösuhde laskee alle puoleen ja sivun ja sen velisivun (sibling, saman isäsivun alla oleva vierussivu)
LisätiedotAlgoritmit 2. Luento 4 Ke Timo Männikkö
Algoritmit 2 Luento 4 Ke 22.3.2017 Timo Männikkö Luento 4 Hajautus Yhteentörmäysten käsittely Avoin osoitteenmuodostus Hajautusfunktiot Puurakenteet Solmujen läpikäynti Algoritmit 2 Kevät 2017 Luento 4
LisätiedotHelsingin yliopisto /TKTL Tietokannan hallinta Harri Laine 1 D B. Harvat hakemistot. Harvat hakemistot
Harvassa hakemistossa on ei ole hakemistomerkintöjä jokaista tietuetta kohden vaan yksi merkintä jotain isompaa kokonaisuutta esimerkiksi sivua tai sivujoukkoa (esim. saman uran sivut) kohti Harvan hakemiston
LisätiedotJokaisella 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ätiedotD 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ätiedotHelsingin 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ätiedotBinäärihaun vertailujärjestys
Järjestetyn sanakirjan tehokas toteutus: binäärihaku Binäärihaku (esimerkkikuassa aain = nimi) op Eea 5 op 5 op op 8 op 5 6 7 8 op Eea 5 op 5 op op 8 op 5 6 7 8 op Eea 5 op 5 op op 8 op 5 6 7 8 op Eea
LisätiedotHakupuut. tässä luvussa tarkastelemme puita tiedon tallennusrakenteina
Hakupuut tässä luvussa tarkastelemme puita tiedon tallennusrakenteina hakupuun avulla voidaan toteuttaa kaikki joukko-tietotyypin operaatiot (myös succ ja pred) pahimman tapauksen aikavaativuus on tavallisella
LisätiedotAVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta
AVL-puut eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta pohjana jo esitetyt binäärihakupuiden operaatiot tasapainotus vie pahimmillaan lisäajan lisäys- ja
LisätiedotLiitosesimerkki. Esim R1 R2 yhteinen attribuutti C. Vaihtoehdot
Esim yhteinen attribuutti C Liitosesimerkki T() = 10,000 riviä T() = 5,000 riviä S() = S() = 1/10 lohkoa Puskuritilaa = 101 lohkoa 1 2 Vaihtoehdot Sisäkkäiset silmukat Liitosjärjestys:, Liitosalgoritmit:
LisätiedotAlgoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
LisätiedotLaita tietokone testipenkkiin
KUINKA TIETOKONEESI PÄRJÄÄ UUSIMPIA MALLEJA VASTAAN? Suoritin Laita tietokone testipenkkiin 2D-grafiikka Passmark Performance Test tutkii tietokoneen suorituskykyä lukuisten testien avulla. Tämän jälkeen
LisätiedotUseaa tietolähdettä käyttävä klusterointi
Useaa tietolähdettä käyttävä klusterointi Mikko Heinonen Tiedon louhinnan seminaari, kevät 2008 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY
LisätiedotArkkitehtuurinen reflektio
Arkkitehtuurinen reflektio Toni Ruokolainen Toni.Ruokolainen@cs.helsinki.fi Helsinki 6.10.2003 Tiivistelmä HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET
Lisätiedotlähtokohta: kahden O(h) korkuisen keon yhdistäminen uudella juurella vie O(h) operaatiota vrt. RemoveMinElem() keossa
Kekolajittelu Prioriteettijonolla toteutettu keko InsertItem ja RemoveMinElem: O(log(n)) Lajittelu prioriteettijonolla: PriorityQueueSort(lajiteltava sekvenssi S) alusta prioriteettijono P while S.IsEmpty()
LisätiedotFYYSINEN 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ätiedotB-puu. 3.3 Dynaamiset hakemistorakenteet
Tietokannan hallinta 2 3. Tietokannan hakemistorakenteet 3.3 Dynaamiset hakemistorakenteet Käsitellyt hakemistot (hajautus, ISAM): hakemisto-osa on staattinen eli ei muutu muuten kuin uudelleenorganisoinnissa.
LisätiedotTieto- ja tallennusrakenteet
Tieto- ja tallennusrakenteet Sisältö Tyyppi, abstrakti tietotyyppi, abstraktin tietotyypin toteutus Tallennusrakenteet Taulukko Linkitetty rakenne Abstraktit tietotyypit Lista (Puu) (Viimeisellä viikolla)
Lisätiedotjotakin 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ätiedotKäsitellyt hakemistot (hajautus, ISAM): hakemisto-osa on staattinen eli ei muutu muuten kuin uudelleenorganisoinnissa.
Tietokannan hallinta 35 3. Tietokannan 3.3 Dynaamiset Käsitellyt hakemistot (hajautus, ISAM): hakemisto-osa on staattinen eli ei muutu muuten kuin uudelleenorganisoinnissa. Ajan mittaan epätasapainoa:
Lisätiedot4 Tehokkuus ja algoritmien suunnittelu
TIE-20100 Tietorakenteet ja algoritmit 52 4 Tehokkuus ja algoritmien suunnittelu Tässä luvussa pohditaan tehokkuuden käsitettä ja esitellään kurssilla käytetty kertaluokkanotaatio, jolla kuvataan algoritmin
LisätiedotNettiposti. Nettiposti käyttöohje
YKSIKÄÄN ASIAKAS EI OLE MEILLE LIIAN PIENI TAI MIKÄÄN HAASTE LIIAN SUURI. Nettiposti Nettiposti käyttöohje Tässä käyttöohjeessa kuvataan selainkäyttöisen Nettiposti sähköpostiohjelman toiminnot. Käyttöohje
LisätiedotMUISTIPIIRIT H. Honkanen
MUISTIPIIRIT H. Honkanen Puolijohdemuistit voidaan jaotella käyttötarkoituksensa mukaisesti: Puolijohdemuistit Luku- ja kirjoitusmuistit RAM, Random Access Memory - Käytetään ohjelman suorituksen aikaisen
LisätiedotAlgebralliset tietotyypit ym. TIEA341 Funktio ohjelmointi 1 Syksy 2005
Algebralliset tietotyypit ym. TIEA341 Funktio ohjelmointi 1 Syksy 2005 Tällä luennolla Algebralliset tietotyypit Hahmonsovitus (pattern matching) Primitiivirekursio Esimerkkinä binäärinen hakupuu Muistattehan...
LisätiedotYksitasoisia talletusrakenteita käytetään lähinnä datatietueiden talletukseen
Yksitasoiset talletusrakenteet Yksitasoisia talletusrakenteita käytetään lähinnä datatietueiden talletukseen järjestämätön peräkkäisrakenne (kasa, heap) järjestetty peräkkäisrakenne (sequential file) hajautusrakenne
LisätiedotSeminaari: HL7 versio 2
hyväksymispäivä arvosana arvostelija Seminaari: HL7 versio 2 Markus Koski Helsinki 29.9.2014 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF
LisätiedotTietokantarakenteet ja -algoritmit 3. harjoitus
Tietokantarakenteet ja -algoritmit 3. harjoitus Malliratkaisut 1. Analyysivaiheen alussa alustetaan aktiivisten transaktioiden taulu (tyhjä) ja päivitettyjen sivujen taulu (samoin tyhjä) tarkistuspisteestä.
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
LisätiedotPaikkatiedon hallinta ja analyysi 4. Paikkatiedon indeksointi
HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Paikkatiedon hallinta ja analyysi 4. Paikkatiedon indeksointi Antti Leino 29. maaliskuuta 2005 Tietojenkäsittelytieteen
LisätiedotHelsingin 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ätiedot58131 Tietorakenteet ja algoritmit (syksy 2015) Toinen välikoe, malliratkaisut
Tietorakenteet ja algoritmit (syksy 0) Toinen välikoe, malliratkaisut. (a) Alussa puu näyttää tältä: Lisätään 4: 4 Tasapaino rikkoutuu solmussa. Tehdään kaksoiskierto ensin oikealle solmusta ja sitten
LisätiedotHELIA 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
Lisätiedot