Iso tietokanta

Mara_

Jos pitää tallentaa Helsingin, Vantaa ja Espoon asukkaiden nimi ja puhelintiedot tietokantaan, ja haku tapahtuu nimen perusteella ja paikkakunta on aina etukäteen tiedossa. Niin kannattako tallentaa kaikki tiedot samaan tietokantaan, vai tehdä kolme tietokantaa, erikseen Helsinkiläisille, Espoolaisille ja Vantaalaisille?

Haussa voi tietenkin helposti erottaa paikkakunnat, mutta entäs suorituskyvyn kannalta? Jos kaikki on samassa tietokannassa niin pitää enemmän dataa lukea puskuriin, vai onko sillä suurtakin merkitystä?

Rivejä tietokannassa tulee olemaan < 1mil, ja tietokanta on MySQL

3

379

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • tohlo

      Sanoisin että ehdottomasti kaikki kannattaa laittaa samaan tietokantaan. Ei muutaman sadan tuhannen rivin lisäys paljoa hauissa lisää tee, kunhan taulurakenne ja indeksit on muuten laitettu järkevästi tehostamaan käyttöä. Koko Suomen väestökin todennäköisesti kannattaa laittaa yhteen ja samaan tietokantaan (helpottaa mm. siinäkin vaiheessa kun ihmiset muuttavat paikasta toiseen).

      Samoin käyttöjärjestelmäalusta välimuisteineen tuskin enää nykyisin vaikuttaa niin paljoa kuin ennen. Wintoosissa ja Linuxeissa ym. on systeemin puolesta välimuisteja, joiden seurauksena levyltäluvut ovat niin nopeita kuin ne nyt ylipäätään on mahdollista saada.

      Ennen kaikkea siis taulujen kenttien tyypit, viite-eheydet ja indeksit kannattaa laittaa kuntoon.

    • The Rat

      Taulu (ei siis tietokanta) alkaa olla "iso" kun rivejä on useita kymmeniä miljoonia.

      Tietokannan kokoa mitataan usein sen kuluttamina tavuina. Itse pidän rajana jotain viittä gigatavua, jossa vaiheessa kanta alkaa olla iso - olettaen että siihen on tallennettu vain perustietoista tavaraa (ei esim. kuvia). Tuokin toimii vielä varsin nopesti ihan peruspalvelimella kunhan muistia riittää.

      Tuollainen alle miljoonan rivin taulu ei ole mikään ongelma. Indeksit vain kuntoon (paikkakuntaa ei minusta kannata indeksoida, nimi riittää - siis sukunimi varmaan?)

    • rmac

      "Haussa voi tietenkin helposti erottaa paikkakunnat, mutta entäs suorituskyvyn kannalta? Jos kaikki on samassa tietokannassa niin pitää enemmän dataa lukea puskuriin, vai onko sillä suurtakin merkitystä? "

      SQL:n nopeuden kannalta yksi WHERE on aika vähämerkityksinen kunhan query optimizer toimii. Kaupungin hakemiseen voi olla parempi käyttää valikon listindexiä ja TINYINT -tyyppiä kuin stringiä - tämänkin voi testata käytännössä onko sillä merkitystä. Jos SQL on yhtään monimutkaisempaa kannattaa lausekkeet käydä huolellisesti läpi kantaa vastaan ja katsoa mikä haut tuntuvat raskailta.

      Isossa taulussa kannattaa käydä läpi tietokantamoottorin asetukset (ja varmasti ymmärtää mitä mikäkin parametri tarkoittaa). Tietokantahan on siitä kätevä paikka varastoida dataa että overheadiä on aika vähän. Jos datatyypit on mietitty kunnolla ja sarakkeita ei ole paljon miljoonan rivin taulu ei välttämättä vie muistia muutamaa kymmentä megaa enemmän. Nyrkkisääntö tietokantaalustoissa muutenkin on, että koko kannan tulee mahtua muistiin. Sehän ei ole ongelma kun palvelimiin ladataan pari gigaa muistia jo ihan vain varmuuden vuoksi.

      Viimeisimpänä mutta ei vähäisimpänä pitää muistaa myös backup. Perinteisesti mySQL on ollut heikoimmillaan silloin kun puhutaan tavanomaisista DBMS -apuprosesseista kuten online backup, statistiikkojen päivitys, replikointi, synkronointi jne. Kantaa suunniteltaessa pitää siis myös katsoa miten online backup toimii ja toimiiko myös sen palauttaminen.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Takaisin ylös

    Luetuimmat keskustelut

    1. Kotkalainen Demari Riku Pirinen vangittu Saksassa lapsipornosta

      https://www.kymensanomat.fi/paikalliset/8081054 Kotkalainen Demari Riku Pirinen vangittu Saksassa lapsipornon hallussapi
      Kotka
      85
      2307
    2. Olen tosi outo....

      Päättelen palstajuttujen perusteella mitä mieltä minun kaipauksen kohde minusta on. Joskus kuvittelen tänne selkeitä tap
      Ikävä
      18
      2257
    3. Vanhalle ukon rähjälle

      Satutit mua niin paljon kun erottiin. Oletko todella niin itsekäs että kuvittelet että huolisin sut kaiken tapahtuneen
      Ikävä
      19
      1748
    4. Oletko sä luovuttanut

      Mun suhteeni
      Ikävä
      104
      1468
    5. Maisa on SALAKUVATTU huumepoliisinsa kanssa!

      https://www.seiska.fi/vain-seiskassa/ensimmainen-yhteiskuva-maisa-torpan-ja-poliisikullan-lahiorakkaus-roihuaa/1525663
      Kotimaiset julkkisjuorut
      91
      1430
    6. Hommaatko kinkkua jouluksi?

      Itse tein pakastimeen n. 3Kg:n murekkeen sienillä ja juustokuorrutuksella. Voihan se olla, että jonkun pienen, valmiin k
      Sinkut
      163
      1248
    7. Aatteleppa ite!

      Jos ei oltaisikaan nyt NATOssa, olisimme puolueettomana sivustakatsojia ja elelisimme tyytyväisenä rauhassa maassamme.
      Maailman menoa
      257
      1042
    8. Mitä sanoisit

      Ihastukselle, jos näkisitte?
      Tunteet
      63
      953
    9. Onko se ikä

      Alkanut haitata?
      Ikävä
      78
      919
    10. Omalääkäri hallituksen utopia?

      Suurissa kaupungeissa ja etelässä moinen onnistunee. Suuressa osassa Suomea on taas paljon keikkalääkäreitä. Mitenkäs ha
      Maailman menoa
      174
      903
    Aihe