Citat:
Ursprungligen postat av Clarence
Jag har prestanda-testat ett par databaser som redan i MySQL har en dokument-lik struktur pga dess denormalisering och fått helt annorlunda resultat. Minnet räckte inte till varken med innodb eller mongodb då databasen är ca 60gb och med mongodb hamnade den väl över 100gb.
Sen var det svårt att utnyttja all CPU trots att svarstiderna steg rejält trots tillräckligt med minne för att bli CPU-bound. Sedan har QPS:en alltid legat ca 50% lägre. Största problemet är förmodligen att jag inte försökte sätta upp en instans per CPU core då det var tungt med writes och reads. Men då kommer man dit igen, mongodb ska vara lätt att skala. Men tungt med både write och read gör det svårt att skala vertikalt vilket nu för tiden är väldigt lätt att göra med innodb.
Angående data-integrtiteten finns det knappt möjligheter att upptäcka problemen. Dels det grundläggande att du helt saknar constraints utöver unika index. Men sedan att disk-skrivningen kanske inte sker alls och det saknas information om varför eftersom den inte kör någon integritetskontroll, journalling eller fsync - det finns ingen som helst skyddsmekanism som de klassika databas-systemen har överflöd av. Hell, ett elavbrott kan korrumpera din databas så att den inte ens går att reparera med lite otur, med tur förlorar du bara 100 random inserts i ditt kluster. Back to backup.
Jag vill inte säga att mongodb är ett dåligt val. Det finns dock väldigt många nackdelar som man bör vara medveten om - om man väljer det som en primär databas för ett större projekt.
|
Konstigt att du hade så stora problem med MySQL.. om det är tungt med read/write, vad körde/kör du för disksystem?