FAQ |
Kalender |
2017-02-16, 21:29 | #1 | ||
|
|||
Nykomling
|
Jag försöker hitta en optimal databasdesign för mitt projekt. Det är en mySQL databas med en php app som gör utökningarna mot databasen och redovisar resultatet i javascript-diagram.
Upplägget ser ut så här: 290 st kontor uppdelade i 25 län 1 st mysql databas 6 st tabeller med olika data (10 000 rader för varje kontor i varje tabell) 7 st kolumner i tabellerna 2,9 miljoner rader data i varje tabell Eftersom jag har så många rader data blir det långsamma sökningar i databasen. Hur ska man lägga upp databasen för att få en optimal design? Skulle det fungera att lägga upp varje kontor i en egen tabell så att jag får 290 st tabeller med bara 60000 rader i? Rent prestanda mässigt skulle det väl speeds upp sökningarna men problemet blir att man inte följer best practis när jag blandar olika data i samma tabell (de ligger nu i 6 st tabeller) Har ni någon bättre idé på upplägg? |
||
Svara med citat |
2017-02-17, 09:00 | #2 | ||
|
|||
Medlem
|
Vilka index är satta? Vad är det för sorts kolumner, mestadels nummer eller är det strängar? Hur söker ni i databasen?
|
||
Svara med citat |
2017-02-17, 09:37 | #3 | ||
|
|||
Supermoderator
|
Om du har lämpliga index borde inte dina queries bli långsamma då det inte är några extrema mängder data. Är det mycket fritextsökningar eller vad är det som går långsamt?
__________________
Full-stack developer, free for smaller assignments |
||
Svara med citat |
2017-02-26, 00:57 | #4 | ||
|
|||
Nykomling
|
Det är bara tal i databasen. Jag presenterar dock 5000 st värden i varje sökning så det är mycket data som visas samtidigt.
|
||
Svara med citat |
2017-02-26, 08:52 | #5 | ||
|
|||
Medlem
|
Läs på hur man indexerar. Gå igenom hur slutlig query ser ut och sätt indexar på i princip alla kolumner med join, samt where. Och är det flera "fasta" sökningar, kombinerar du flera fält till ett index för än snabbare resultat. I korthet.
|
||
Svara med citat |
Svara |
|
|