Tietokantojen perusteet syksy 2020

Harjoitustyön tehtävä 3

Tee ohjelma, jonka avulla voidaan suorittaa tietokannan tehokkuustesti. Tehokkuustestin osat ovat: Toteuta ohjelma niin, että kaikki rivit lisätään saman transaktion sisällä (esimerkiksi alussa komento BEGIN ja lopussa komento COMMIT), jotta rivien lisääminen ei vie liikaa aikaa.

Suorita ohjelman avulla kolme testiä seuraavasti:

  1. Tauluun ei lisätä kyselyitä tehostavaa indeksiä.
  2. Tauluun lisätään kyselyitä tehostava indeksi ennen rivien lisäämistä.
  3. Tauluun lisätään kyselyitä tehostava indeksi ennen kyselyiden suoritusta.
Ilmoita jokaisesta testistä rivien lisäämiseen ja kyselyiden suoritukseen kuluva aika sekä tietokantatiedoston koko testin jälkeen. Miten voit selittää testin tulokset?

Voit käyttää ajan mittaamiseen esimerkiksi Javassa metodia System.nanoTime ja Pythonissa moduulin time funktiota time.

Varmista ennen varsinaisia testejä, että kyselysi antavat järkeviä tuloksia: indeksin tulisi nopeuttaa kyselyjä merkittävästi testeissä 2 ja 3. Älä kuitenkaan tulosta varsinaisissa testeissä mitään muuta kuin ajankäyttö, jotta tulostaminen ei vääristä testin tulosta.

Testi 1

Rivien lisäämiseen kuluva aika: sekuntia

Kyselyiden suoritukseen kuluva aika: sekuntia

Tietokantatiedoston koko testin lopuksi: megatavua

Testi 2

Rivien lisäämiseen kuluva aika: sekuntia

Kyselyiden suoritukseen kuluva aika: sekuntia

Tietokantatiedoston koko testin lopuksi: megatavua

Testi 3

Rivien lisäämiseen kuluva aika: sekuntia

Kyselyiden suoritukseen kuluva aika: sekuntia

Tietokantatiedoston koko testin lopuksi: megatavua

Miten selität testin tulokset?

Testiohjelman lähdekoodi

The deadline for this task has passed but you can still check your answers


Return to task list