Ich arbeite an einem Projekt mit einer großen Menge an Daten von der köstlichen Website. Die verfügbaren Daten sind "Datum, Benutzer-ID, URL, Tags" (für jedes Lesezeichen).
Ich habe meine Datenbank auf eine 3NF normalisiert, und aufgrund der Art der Abfragen, die wir in Kombination verwenden wollten, kam ich auf 6 Tabellen ... Das Design sieht jedoch gut aus, jetzt, da eine große Menge an Daten ist in der Datenbank, die meisten Abfragen müssen mindestens 2 Tabellen zusammenkommen, um die Antwort zu bekommen, manchmal 3 oder 4. Zuerst hatten wir keine Leistungsprobleme, weil für das Testen von Angelegenheiten wir nicht zu viele Daten hinzugefügt hatten zur Datenbank. Nun, da wir viele Daten haben, ist es sehr zeitaufwändig, extrem große Tabellen zu verbinden. Für unser Projekt, das in Echtzeit sein muss, ist das ein Desaster.
Ich habe mich gefragt, wie große Unternehmen diese Probleme lösen. Es sieht so aus, als würde die Normalisierung von Tabellen die Komplexität erhöhen, aber wie verwaltet die große Firma große Datenmengen in ihren Datenbanken, verwenden sie nicht die Normalisierung?
Danke.
Da Sie gefragt haben, wie sich große Unternehmen (im Allgemeinen) damit beschäftigen:
Sie haben normalerweise einen dba (Datenbankadministrator), der die Datenbank, die das Unternehmen verwendet, lebt und atmet.
Das bedeutet, dass sie Leute haben, die alles wissen, um die Tabellen optimal zu entwerfen, die Abfragen / Indizes / OS / Server zu profilieren und zu optimieren, um zu wissen, welche Firmware-Version des RAID-Controllers Probleme für die Datenbank verursachen kann >
Sie sprechen nicht viel darüber, welche Art von Optimierung Sie vorgenommen haben, z. B.
Tags und Links mysql database performance database-design