Die erste Frage nach dem Entwurf der Datenbank- und Tabellenpartitionierung ist, wie der Routing-Schlüssel ausgewählt und wie der Schlüssel weitergeleitet wird. Routing-Schlüssel sollten in jeder Tabelle vorhanden und eindeutig sein. Die Routing-Strategie sollte versuchen, sicherzustellen, dass die Daten gleichmäßig verteilt werden.
Wenn Sie eine große Datenmenge archivieren, können Sie die Zeit als Routing-Schlüssel wählen. Erstellen Sie beispielsweise jeden Monat oder jedes Quartal eine Tabelle, indem Sie den Erstellungszeitpunkt der Daten als Routing-Schlüssel verwenden. Durch die Verwendung der Zeit als Routing-Strategie nach dem Sharding von Datenbanken und Tabellen kann eine Datenarchivierung erreicht werden. Der historische Datenzugriffsverkehr ist gering und der Datenverkehr wird an die neueste Datenbanktabelle gesendet.
Sie können auch den geschäftsbezogenen Routing-Schlüssel entwerfen. Dadurch wird sichergestellt, dass die Ressourcen jeder Datenbank den Datenverkehr gut vertragen.
Aus Benutzersicht muss die Take-Away-Bestellplattform nach der Aufteilung in Datenbanken und Tabellen die Echtzeitanzeige des Status bestellter Take-Away-Bestellungen unterstützen und Szenarien zur Verfolgung von Bestellinformationen. Händler müssen Bestellinformationen abfragen, die Qualität von Gerichten anhand von Bestellungen analysieren und Geschäftsentscheidungen treffen.
Benutzer Verbraucher = C-Seite Händler Geschäft = B-Seite
Nach dem Der Benutzer gibt eine Bestellung auf. Bestellungen fallen möglicherweise in verschiedene Tabellen, und Sie müssen bei der Abfrage möglicherweise mehrere Tabellen abfragen.
Wenn die Reihenfolge beim Erstellen zufällig in eine bestimmte Tabelle eingefügt wird oder Sie es nicht wissen In welche Tabelle eingefügt werden soll, Abfrage Bei der Bestellung müssen Sie alle Tabellen abfragen, um die Genauigkeit der Abfrage sicherzustellen.
Wenn beim Einfügen einer Bestellung bestimmte Regeln gelten, wird diese gemäß dieser Regel in die Datenbank eingefügt. Bei der Abfrage werden auch die entsprechenden Regeln ausgeführt, um die entsprechende Tabelle abzufragen. Dies reduziert die Komplexität von Datenoperationen. Sowohl Benutzer als auch Händler können beim Abfragen von Daten dieselbe Routing-Strategie verfolgen, was durch den Entwurf einer Routing-Strategie erreicht werden kann.
Gemäß dem Routing im vorherigen Abschnitt Für die Richtlinienanalyse müssen Sie nun einen Routing-Schlüssel auswählen. Der Client ermöglicht das Speichern der Daten derselben Benutzer-ID in einer festen Tabelle, sodass die Benutzer-ID als Routing-Schlüssel ausgewählt werden kann.
Im Fall einer einzelnen Datenbank gibt der Benutzer eine Bestellung auf, generiert eine Bestellung, verwendet die Benutzer-ID als Routing-Schlüssel, nimmt den Hash-Wert der Benutzer-ID und moduliert dann die Anzahl der Tabellen Rufen Sie die entsprechende Tabelle ab, die weitergeleitet werden muss, und schreiben Sie dann die Daten.
Bei mehreren Bibliotheken und mehreren Tabellen müssen Sie zuerst die entsprechende Bibliothek und dann die entsprechende Tabelle finden. Routing-Strategie für mehrere Datenbanken und mehrere Tabellen: Benutzer gibt Bestellungen auf -> Bestellungen generieren - > Routing-Strategie: Modulieren Sie die Anzahl der Datenbanken basierend auf dem Hash-Wert der Benutzer-ID, um die entsprechende Datenbank zu finden -> Teilen Sie den Hash-Wert des Benutzers ID durch das Paar Die Anzahl der Tabellen, und modulieren Sie dann die Anzahl der Tabellen, um die entsprechende Tabelle zu finden.
Der entscheidende Punkt beim Entwurf einer Routing-Strategie besteht darin, entsprechend dem spezifischen Geschäftsszenario zu entwerfen und den Routing-Schlüssel als Hash-Wert-Modul basierend auf dem zu verwenden Spezifisches Geschäftsszenario.
Für die Händler-B-Seite ist ein separater Tabellensatz vorgesehen (C-Seite und B-Seite sind unabhängig).
Die Benutzerperspektive verwendet user_id als Routingschlüssel und die Händlerperspektive verwendet die Händler-ID als Routingschlüssel. Wie leiten Händler Daten über Routing-Schlüssel weiter? Wenn Sie eine Bestellung aufgeben, sendet Youhu die Bestellnummer Ihres Teamkollegen an MQ. Der Händler kann diese MQ nutzen, dann die Bestellinformationen basierend auf der Bestellnummer abrufen und die Bestellinformationen dann in die Datenbanktabelle des Händlers einfügen. Die Routing-Richtlinie des Händlers ist dieselbe wie die Routing-Richtlinie des Benutzers.
Vollständiges Datenflussdiagramm für Kunde und Händler:
# 🎜🎜#
Das obige ist der detaillierte Inhalt vonBeispielanalyse des Routing-Strategiedesigns nach MySQL-Datenbank- und Tabellenpartitionierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!