Új hozzászólás Aktív témák

  • pittbaba

    aktív tag

    Sziasztok!

    Androidra fejlesztek BKV programot, ennek az adatbázisához kellene finomításhoz segítség, tipp nekem.
    A BKV kiadja a teljes menetrendet a Google GTFS adatbázis formátumban.
    Ebből készítek egy programmal egy SQLite adatbázisfájlt, amit az alkalmazás felhasznál az adatok kivételére.
    Ez egy 159Mb-os adatbázis file, egy telefonnak elég leterhelő, sajnos egy lekérdezés több perc jelenleg.

    Gps koordináták alapján próbálom kiszedni a user melyik megállóban áll, és milyen járatok haladnak át azon a megállón.
    Három táblát kell ehhez felhasználnom:
    stops táblában vannak a megálló nevei és a GPS koordináták
    stop_times táblában az időpontok vannak megadva, melyik percben melyik megállóban melyik járat megy(id)
    trips táblában vannak a trip id-hoz tartozó nevek.

    Egyértelmű, hogy a stop_times tábla nagyon nagy, úgy emlékszem, hogy 200 000 sor körül van, e miatt nagyon lassú lesz a lekérdezésem. JOIN-al összekapcsoltam a három táblát, az eredmény több perc után, de megérkezik helyesen egyébként.

    Hogy lehetne gyorsítani a lekérdezést?
    Az adatbázis feldarabolása nem jó, mert megállókra lehetne szétbontani, de az is 4000 fájlt jelentene, ami megint nem megoldás.

    Mivel létre kell hozni egy külön SQLite adatbázis fájlt, nehéz bármit is változtatni az eredeti formátumon, mivel a GTFS fájlok sima CSV formátumú fájlok, nem könnyű dolgozni velük.

    Milyen tippekkel tudtok segíteni?

    PH Konfigom: Gigabyte GA-H97M-D3H, i7 4790K,GTX 960, Seasonic SS-620GM

Új hozzászólás Aktív témák