Fysiek datamodellering implementeert het logische model in daadwerkelijke tabellen en legt de nadruk op opslagruimte-efficiëntie, partitionering en indexontwerp voor prestatieoptimalisatie.
Slow queries, indexen en caches worden gebruikt om prestatieproblemen op te lossen en, indien nodig, wordt de tabelstructuur gewijzigd door middel van denormalisatie.
Normalisatie kan leiden tot een verlies aan leesprestaties ten gunste van schrijfgemak. Denormalisatie moet daarom met zorg worden uitgevoerd nadat het probleem is vastgesteld.
Als logisch datamodellering de taak was om ideale tabellen te creëren die geschikt zijn voor relationele databases, omvat fysiek datamodellering het creëren van die ideale tabellen tot daadwerkelijke gebruikte tabellen, en daarnaast het efficiënte gebruik van opslagruimte, het ontwerp van objectpartities en het ontwerp van optimale indexen om prestaties te verbeteren en te optimaliseren.
De manier om slow queries te vinden die bottlenecks veroorzaken tijdens de serviceoperatie verschilt per type DBMS, enslow querymoet worden gezocht met behulp van dit trefwoord als zoekterm.
Overwegingen voor prestaties
Slow Query (Slow Query) vinden
Een slow query is een query die niet binnen een bepaalde tijd kan worden uitgevoerd wanneer een DBMS een query uitvoert die van een gebruiker is ontvangen.
Zoek naar slow queries die bottlenecks veroorzaken, bepaal het probleem en los het op.
Index (Index)
Indexen verbeteren de leesprestaties voor rijen aanzienlijk.
Maar ze verlagen de schrijfprestaties en gebruiken meer opslagruimte.
Cache (Cache)
Een manier om de belasting van de database op applicatieniveau te verminderen.
Het is een methode waarbij de respons op dezelfde invoeraanvraag wordt opgeslagen in de opslagruimte en wordt geretourneerd.
Als het probleem met de prestaties zelfs met de bovenstaande methoden niet wordt opgelost, wordt een proces uitgevoerd dat denormalisatie of anti-normalisatie wordt genoemd.
De structuur van de tabel wordt geopereerd en gecorrigeerd.
Trade-off van normalisatie
Normalisatie is als het opgeven van leesprestaties voor het gemak van schrijfbewerkingen. Na normalisatie moet u een query schrijven om de gegevens van de in meerdere tabellen gesplitste tabellen te joinen.
Maar normalisatie leidt niet altijd tot slechtere prestaties, dus u moet het probleem zorgvuldig identificeren en controleren voordat u denormalisatie uitvoert.
De onderstaande link is een goede artikel overdenormalisatiedat we in de toekomst zullen behandelen.
Het eerste wat u moet weten is dat u denormalisatie moet uitvoeren nadat u normalisatie heeft uitgevoerd. Het is niet altijd goed om vanaf het begin een niet-genormaliseerde tabel te hebben.
Aangezien het voorlopig geen noodzakelijke kennis is, zal ik het alleen onthouden.