sql >> Databasteknik >  >> RDS >> Mysql

mysql - Skapa rader kontra kolumnprestanda

Jag tror att fördelen med att lagra som fler rader (dvs normaliseras) beror på design och underhållsöverväganden inför förändringar.

Dessutom, om de 140 kolumnerna har samma betydelse eller om de skiljer sig från experiment till experiment – ​​modellera data korrekt enligt normaliseringsregler – dvs hur är data relaterad till en kandidatnyckel.

När det gäller prestanda, om alla kolumner används, gör det väldigt liten skillnad. Ibland kan en pivot/unpivot-operation vara dyr över en stor mängd data, men det gör liten skillnad på ett enda nyckelåtkomstmönster. Ibland kan en pivot i databasen göra din frontend-kod mycket enklare och backend-koden mer flexibel inför förändringar.

Om du har många NULLs kan det vara möjligt att eliminera rader i en normaliserad design och detta skulle spara utrymme. Jag vet inte om MySQL har stöd för ett sparsamt bordskoncept, vilket skulle kunna spela in där.



  1. Hur undviker man reparation med Keycache?

  2. Hur kan jag se frågor som körs mot Oracle?

  3. Hämta räkningsdata från Firebase som MySQL

  4. Hur man lägger till 1 till värdet av en kolumn i en befintlig rad i mysql