Hirdetés

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

  • Keem1

    addikt

    Helló emberek, iránymutatást szeretnék kérni. Mivel IoT rendszerről (Raspberry Pi) van szó, minden megspórolt millisec számít.

    Adott egy már jól működő service, de ami még debug módban megy, ezért rengeteget loggol file-ba (egyelőre kell is, az alapján csiszolom), viszont minden nap végén a log file-t kiürítené, tartalmát SQLite adattáblába zsuppolná (keresés, kiértékelések miatt). Sajnos egyelőre vannak logbejegyzések, amiket bent hagynánk a fileban, és nem lenne jó naponta újra és újra beírni az adatbázisba, ezért egyszerűen tárolunk ott egy MD5 hasht is (vizsgálva, hogy a hash bent van-e már az adatbázisban). A helyzetet "bonyolítja", hogy tranzakcióval megy a beírás (napi 200-1000 log tranzakció nélküli beírása [csak az adatbázisművelet] 1-2 sec, tranzakcióval 40-80 ms).

    Hogy lehet a legjobban, legelegánsabban megoldani?
    - letárolás előtt a hash értékek kiolvasása egy tömmbe/listába programozottan (C#)?
    - INSERT helyett SELECT(?) + INSERT annak csekkolására, hogy már bent van-e a hash, a db-re bízva? Ha igen, itt kérnék iránymutatást, fogalmam sincs, ez miképp kivitelezhető egy tranzakció belsejében, a COMMIT parancsot megelőzően.

    Az első pont fizikailag készen van, működik is, csak nem tudom, ez így mennyire vehető jó megoldásnak egy IoT rendszernél.

    Javaslatot szeretnék kérni! :R

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