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