sql >> Database teknologi >  >> RDS >> Mysql

Hvad er en bedre strategi til lagring af logdata i en database?

Alt andet lige kan mindre usammenhængende tabeller have en ydeevnefordel, især når de er skrivetunge (som tabel relateret til logs sandsynligvis vil være) -- de fleste DB-mekanismer er bedre indstillet til for det meste læst, sjældent skrevet tabeller. Med hensyn til skrivning (og opdatering af eventuelle indekser, du muligvis skal vedligeholde), er små usammenhængende tabeller en klar gevinst, især hvis der er nogen samtidighed (afhængigt af hvilken motor du bruger til dine tabeller, selvfølgelig - det er ret vigtigt overvejelse i mysql!-).

Med hensyn til læsning afhænger det hele af dit forespørgselsmønster - hvilke forespørgsler har du brug for, og hvor ofte. I visse tilfælde for et brugsmønster, som du nævner, kan der være en vis ydeevnefordel ved at duplikere visse oplysninger - f.eks. hvis du ofte har brug for en opdateret løbende total af en brugers krediteringer eller debiteringer, samt detaljerede reviderbare logfiler over, hvordan den løbende total blev til, kan det være at holde en (logisk overflødig) tabel over løbende totaler efter brugere. berettiget (samt de pænt adskilte "log-tabeller" om de forskellige kilder til kreditering og debet).



  1. ved at bruge CASE i WHERE-sætningen

  2. Fejlfinding af Microsoft SQL Server-fejl 18456

  3. Sådan installeres MySQL 8 på Ubuntu

  4. Kan den samme kolonne have primær nøgle &fremmednøgle begrænsning til en anden kolonne