NoSQL ja Relaatiotietokannat

Hellurei

Kuten olemme kurssin aikana oppineet, on olemassa perinteisiä relaatiotietokantoja ja NoSQL tietokantoja. Sana NoSQL ei tarkoita, että SQL periaatteista olisi täysin luovuttu vaan sanojen tulkinta voisi olla Not only SQL. Sen tehtävä on laajentaa tietokanta malleja nykypäivän monirakenteisen ja monimutkaisen datan vaatimuksiin.

Relaatiotietokannat perustuvat tauluihin ja niiden välisiin loogisiin yhteyksiin. Loogiseen yhdistämiseen käytetään Primary – ja Foreing key tunnuksia. NoSQL tietokannat taas voivat olla hyvinkin monimutkaisia ja ne perustuvat yleensä useisiin solmuihin ja niidenvälisiin suhteisiin.

Suurin ero relaatiotietkantojen ja NoSQL tietokantojen välillä onkin asioiden suhteiden ja suhteiden ominaisuuksien käsittelyssä ja käyttämisessä. NoSQL se on helppo relaatiotietokannalla ei. Relaatiotietokantaa kannattaa kuitenkin käyttää edelleen monissa tapauksissa alle on listattu erilaisia syitä miksi jompaakumpaa kannattaa käyttää.

Relaatiotietokantaa kannattaa käyttää, jos:

Olet luomassa pienen käyttäjämäärän ei kovin monimutkaista ohjelmaa, joka muokkautuu ajan kanssa. (tätä varten koko relaatiotietokannata on luotu)

Datan duplikaattien määrä on suuri ilman, että teet suurta määrää datan normalisointia. (Kun dataa pitää normalisoida tarvitaan join operaatioita ja, kun tarvitaan joineja, niin relaatiotiekanta on paras ratkaisu)

Kun et näe rahallista hyötyä siirtyä pois hyväksi todetusta teknologiasta.

On olemassa jokin valmis ohjelma, joka jo puhuu SQL kieltä.

Relaatiotietokantaa ei kannata käyttää jos:

Datan uudelleen käyttö on epätodennäköistä, kun ohjelmat ovat hyvin itsenäisiä ja koko ajan muuttuvia.

Datan normalisointi ei ole tarpeen.

http://www.dbms2.com/2011/05/29/when-to-use-relational-database-management-system/

NoSQL kannattaa käyttää jos:

Jos relaatiomallinen tietokanta ei pysty hallitsemaan käyttäjä liikennettä yhtä tehokkaasti kuin NoSQL tietokanta.

Jos data tulee pieninä erinä pitkän ajan kuluessa, ja taulujen määrä jota tarvitaan pitämään tieto normaalimuotoisena kasvaa suhteessa koko datan kokoon.

NoSQL mahdollistaa järjestelmän horisontaalisen kasvatuksen helpommin kuin relaationmallinen tietokanta.

Sinulla on paljon tiedon vaihtoa (esim. tuotteista tykkäämistä), jonka ei tarvitse säilyä pitkään.

http://blogs.shephertz.com/2013/06/20/a-developers-dilemma-when-to-use-nosql/

-Harri

Advertisements

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out / Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out / Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out / Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out / Muuta )

Muodostetaan yhteyttä palveluun %s