Adatbázis fejlesztés

Egy jó mobil applikációnak szüksége van a helyes működéséhez adatokra, az adatokat tároló adatbázisra és az adatbázist leíró adatbázis sémára ill. struktúrára és az adatok közti esetleges relációkra. Ezzel tesszük le az alapokat, ha az adatbázis nem megfelelően kerül megtervezésre, a későbbiekben problémát okozhat. Ez egy nagyon fontos lépés, jól át kell gondolni és a jövőbeli bővíthetőség lehetőségét is szem előtt kell tartani.

Az adatok tárolására különböző elven működő adatbázis rendszerek léteznek, a feladat és környezet ismeretében a legalkalmasabb kerül kiválasztásra. WEB-es környezetben többnyire valamilyen relációs adatbázist (MySQL / MariaDB), Android eszközökön pedig SQLite vagy Realm típusú adatbázisra szokott esni a választásom. IOT eszközök esetében -ahol az erőforrások meglehetősen korlátosak-, pedig szimpla kulcs-érték párokat preferálom.

Az adatok optimálisan a típusuknak megfelelő módon kerülnek eltárolásra (számot számként, szöveget szövegként, dátumot dátumként, stb.). A megfelelő indexelés és kapcsolatok felépítése is szükséges a gyors és hatékony működéshez. Ezek alapvető dolgok, de sajnos nem mindenkinek. Találkoztam már olyan adatbázissal, amit állítólag hozzáértő és profi fejlesztők hoztak létre, de az adatbázis méretének növekedése mellett a szerver terhelése exponenciálisan emelkedett. A szerver számítási teljesítményét és tárolási kapacitását - jóformán a végtelenségig - lehet bővíteni (persze ezzel az anyagi vonzata is emelkedik), de ha optimalizálunk, akkor később jutunk el oda, hogy kikerülhetetlen legyen a bővítés.