2012. június 18., hétfő

database

Egy csipetnyi szakma:

Vicces amikor a sok mindenre tartott SQL adatbázisról megtudom, hogy nem mindig annyira menő. Nagy adatbázisban gyors, random elérésnél például elvérzik csúnyán. Mi a teendő ekkor? Például HBase használata. Itt az újdonság, hogy ez nem egy relációs adatbázis. A táblák sorokból épünek fel és a tábla sorainak mindegyike rendelkezik kulccsal. Minden sornak lehet bármennyi* oszlopa. A sorok rendezve vannak tárolva.

*:biztosan van egy maximum szám

Egy példával próbálom szemléltetni a különbséget:

Van egy adatbázisunk 4 kutyáról. Nagyon egyszerűen csak a kutya nevét, fajtáját és színét tároljuk. De mivel  elképzelhető hogy a jövőben a tulajdonságokat bővtjük (pl súlyt is tárolni akarjuk), így SQL-ben 2 táblát használunk, és ezeket összekapcsoljuk egy kapcsolat táblával.

SQL-es megoldás:
nevek tábla (a nem  'C' betűs nevek is itt lennének tárolva)

tulajdonságok tábla
kapcsolat tábla

Azaz a négy kutya:
Charly: barna-fehér Jack Russell
Charlys: arany színű Labrador
Charlysc: fekete Jack Russell
Charly4: barna Vizsla


HBase megoldás ugyanezen adatok tárolására:
Sok bejegyzésnél ez mondjuk a tábla mely a 'C'-betűs neveket tartalmazza és van külön minden betűnek egy másik

Nincsenek megjegyzések:

Megjegyzés küldése