Erklärung der horizontalen und vertikalen Tabellenpartitionierung von MySQL

Erklärung der horizontalen und vertikalen Tabellenpartitionierung von MySQL

In meinem vorherigen Artikel habe ich gesagt, dass die Optimierung von MySQL-Anweisungen Einschränkungen hat. Bei der Optimierung von MySQL-Anweisungen dreht es sich um die Indexoptimierung. Wenn der Index in MySQL das Problem der langsamen Abfrage großer Datenmengen nicht lösen kann, wird eine horizontale und vertikale Tabellenpartitionierung angezeigt (ich dokumentiere nur mein Verständnis).

Horizontaler Tisch:

Wie in der Abbildung oben gezeigt: Die anderen drei Tabellen haben dieselbe Struktur, außer dass die Daten in diesen drei Tabellen separat gespeichert sind. Wenn Sie einfügen oder abfragen möchten, müssen Sie den Modul der ID nehmen und dann die Tabellennamen verketten, sodass ein vollständiger Tabellenname

Aber was ist, wenn ich die Namenstabelle oder die E-Mail trennen muss?

Dann müssen Sie MD5 zum Verschlüsseln verwenden, da die verschlüsselte MD5-Nummer hexadezimal ist, sodass Sie den Rest nehmen können. Die Idee ist dieselbe wie oben.

Vertikaler Tisch:

Warum ist eine vertikale Unterteilung notwendig?

Denn wenn eine Tabelle ein großes Feld enthält, das nicht angezeigt werden muss oder derzeit nicht benötigt wird, wird das große Feld bei der Abfrage basierend auf der ID oder anderen Indizes zusammen gefunden, auch wenn es nicht absichtlich abgefragt wird. Dies beeinträchtigt die Abfrageleistung erheblich. Daher wird eine vertikale Partitionierung verwendet.

Einzelheiten entnehmen Sie bitte der folgenden Abbildung:

Oben ist eine Idee der horizontalen und vertikalen Tabellenaufteilung. Bitte weisen Sie auf etwaige Mängel hin. Vielen Dank.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • So speichern Sie Text und Bilder in MySQL
  • Installation und Verwendung von MySQL unter Ubuntu (allgemeine Version)
  • Die Fallstricke, die auftreten, wenn nodejs synchron aufruft, um MySQL-Daten abzurufen
  • So fügen Sie MySQL Indizes hinzu
  • Alibaba Cloud ESC Server Docker-Bereitstellung von Single Node Mysql
  • Zusammenfassung der Unterschiede zwischen den MySQL-Speicher-Engines MyISAM und InnoDB
  • Mehrere Lösungen zum Vergessen des MySQL-Passworts
  • Erläuterung zur Optimierung der Tomcat+MySQL-Konfiguration mit hoher Parallelität
  • Warum verwendet der MySQL-Datenbankindex den B+-Baum?
  • Mehrere Möglichkeiten zum Speichern von Bildern in einer MySQL-Datenbank

<<:  So verwenden Sie natives JS zum Implementieren von Touch-Sliding-Überwachungsereignissen

>>:  So führen Sie den Top-Befehl im Batchmodus aus

Artikel empfehlen

Eine kurze Analyse, wie MySQL die Transaktionsisolierung implementiert

Inhaltsverzeichnis 1. Einleitung 2. RC- und RR-Is...

Spezifische Verwendung des Autoindex-Moduls in der Nginx-HTTP-Modulreihe

Die Hauptfunktion des Browsermoduls besteht darin...

Beispiel für die Bereitstellungsmethode „Forever+nginx“ einer Node-Site

Ich habe vor Kurzem den günstigsten Tencent-Cloud...

Detaillierte Erklärung, wie zwei Node.js-Prozesse kommunizieren

Inhaltsverzeichnis Vorwort Kommunikation zwischen...

Einführung in das Fokuselement document.activeELEment in JavaScript

Inhaltsverzeichnis 1. Der Fokus liegt standardmäß...

Ein QQ-Chatroom basierend auf vue.js

Inhaltsverzeichnis Einführung Nachfolgend sehen S...

Docker-Dateispeicherpfad, Port-Mapping-Betriebsmodus ändern

So erhalten Sie den Container-Startbefehl Der Con...

Wird die Tabelle durch ein Update in einer MySQL-Transaktion gesperrt?

Zwei Fälle: 1. Mit Index 2. Ohne Index Voraussetz...

Einige Fragen zu Hyperlinks

<br />Ich freue mich sehr, an dieser Folge d...