sql >> Databasteknik >  >> RDS >> Mysql

Hur många rader är "för många" för en MySQL-tabell?

Jag håller med klennepette och Brian - med ett par varningar.

Om dina data i sig är relationella och föremål för frågor som fungerar bra med SQL, bör du kunna skala till hundratals miljoner poster utan exotiska hårdvarukrav.

Du kommer att behöva investera i indexering, sökning av frågor och att göra en och annan uppoffring av relationsmodellen för snabbhetens intresse. Du bör åtminstone nicka till prestanda när du designar tabeller – föredrar till exempel heltal framför strängar för nycklar.

Om du däremot har dokumentcentrerade krav, behöver fritextsökning eller har många hierarkiska relationer kan du behöva leta igen.

Om du behöver ACID-transaktioner kan du stöta på skalbarhetsproblem tidigare än om du inte bryr dig om transaktioner (även om det fortfarande är osannolikt att det påverkar dig i praktiken); om du har långvariga eller komplexa transaktioner minskar din skalbarhet ganska snabbt.

Jag skulle rekommendera att bygga projektet från grunden med krav på skalbarhet i åtanke. Vad jag har gjort tidigare är att skapa en testmiljö fylld med miljontals poster (jag använde DBMonster, men inte säker på om det fortfarande finns kvar), och regelbundet testa pågående kod mot denna databas med hjälp av belastningstestverktyg som Jmeter.



  1. binärt filinnehåll som visas i php print_r men inte sparat i mysql

  2. Hur kontrollerar jag om MySQL returnerar null/tom?

  3. Hur man ändrar databaslösenordet

  4. Förstå vikten av minnesinställning i SQL Server