Citat:
Ursprungligen postat av Linuus
Tar tillbaka det jag sa...hade visst fel!
Mixtrade lite med mina INDEX och nu verkar faktiskt min VIEW gå att använda utan längre väntetider.
Tack för det 
|
Vid ett par tusen bör det inte ge några problem, men det är inte effektivt. Din första lösning med denormalisering är desto effektivare. Nosnajs query är enklaste och effektivaste sättet att uppdatera den. Men om man har väldigt många rader är det prestandamässigt bättre att dela upp den i X queries med ranges (ej en för varje brand) och köra dem med liten tidsintervall emellan.
Att spara denormaliserad data gör inte att man inte sparar och får nästan all nytta av normaliserade datan. Den stora nackdelen du får är att uppdatera den denormaliserade datan manuellt vilket ger en liten liten overhead vid skrivning. Att inte spara denormaliserad data ger däremot i många fall, liksom ditt, en rejäl overhead vid läsning. Skapar man en vy får man allt för ofta ännu mer overhead vid varje skrivning om den cachas då hela vyn invalideras med skrivning till någon tabell den beror på. Alternativt cachas inget och du får rejält med overhead vid varje läsning då du får läsa mer data, oavsett hur väl din indexering är genomgången.
I ditt fall går säkerligen din lösning bra - men jag ville ändå inflika med detta då jag tyckte din första lösning var rätt väg att gå.