sql >> Database >  >> RDS >> Mysql

Kan relationele database horizontaal schalen

Het is mogelijk, maar vergt veel onderhoud, Uitleg -

Verticaal schalen van gegevens (synoniem voor Normalisatie in SQL-databases) wordt aangeduid als het opsplitsen van gegevens in meerdere tabellen om de ruimteredundantie te verminderen. Voorbeeld van gebruikerstabel -

Horizontaal schalen van gegevens (synoniem voor sharding) wordt het splitsen van rijen in meerdere tabellen genoemd om de tijd die nodig is om gegevens op te halen te verminderen. Voorbeeld van gebruikerstabel -

Belangrijk om hier op te merken is zoals we kunnen zien, worden tabellen in SQL-databases genormaliseerd in meerdere tabellen met gerelateerde gegevens. Als u gegevens van een dergelijke tabel op meerdere machines wilt sharden, moet u gerelateerde genormaliseerde gegevens dienovereenkomstig sharden, wat op zijn beurt de onderhoudsinspanningen zou vergroten. Zoals in het bovenstaande voorbeeld van een SQL-database,

Als u enkele rijen met klantgegevens naar een andere machine verplaatst (aangeduid als sharding), moet u ook de gerelateerde ordergegevens naar dezelfde machine verplaatsen, wat een lastige taak zou zijn in het geval van meerdere gerelateerde tabellen.

Het is handig voor NOSQL-databases om te sharden omdat ze een platte tabelstructuur volgen (gegevens worden opgeslagen in geaggregeerde vorm in plaats van in genormaliseerde vorm).



  1. php-mysql-versie conflicteert met Mysql-server

  2. Hoe bepaal ik de laatste dag van de vorige maand met PostgreSQL?

  3. Docker - Hoe kan de opdracht psql in de postgres-container worden uitgevoerd?

  4. SQL Server - Verwijder alle niet-afdrukbare ASCII-tekens