Jag står i begrepp att definiera om min databasstruktur för min hobbysite. Numera har jag tillgång till flera olika lagringsmetoder, speciellt till både MyISAM och InnnoDB. Genom att läsa i dokumentationen har jag hittat en del skillnader mellan dessa båda:
InnnoDB
+ Har Transaktionshantering
+ Har FOREIGN KEYS
- Tar mer plats
- Tar mer tid
MyISAM
- Saknar Transaktionshantering
- Saknar FOREIGN KEYS
+ Tar mindre plats
+ Snabbare
Är det någon som vet hur stora skillnaderna är i plats och snabbhet? Är de så stora att de motiverar fortsatt användning av MyISAM, trots att FOREIGN KEY saknas? Transaktionshanteringen som sådan är visserligen trevlig men inte jätteviktig för min hobbysite. Foreign keys skulle jag däremot bra gärna vilja ha.
MyISAM kan hämta antalet rader ifrån den inbyggda radräknaren, medan InnoDB måste göra en full tabellsökning/full indexsökning. Detta gäller dock endast SELECT COUNT(*) FROM table. Inte radräkningar med WHERE, dessa hanteras på liknande sätt i båda lagringsmotorerna.
Counter-tabeller brukar avhjälpa problemet för InnoDB, fast det är kanske inte alltför skojigt att trixa med på sin leksajt. :)
254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849