


Wie kann ich eine Tabelle mit 120 Millionen Datensätzen effizient aktualisieren?
Aktualisierungsstrategien für 120 Millionen Datensätze: Ein effizienter Ansatz
Das Aktualisieren einer Tabelle mit 120 Millionen Datensätzen kann eine entmutigende Aufgabe sein. Der standardmäßige Aktualisierungsansatz kann die Ressourcen erschöpfen und einen längeren Zeitraum in Anspruch nehmen. Um diese Herausforderung zu bewältigen, besteht eine effizientere Methode darin, eine SELECT-Anweisung zum Auffüllen einer separaten Tabelle zu verwenden.
Schritte zum Auffüllen einer Sekundärtabelle
Für Tabellen ohne Clustered-Index und während eines Zeitraums ohne gleichzeitiges DML können die folgenden Schritte angewendet werden:
- Klonen Sie die BaseTable: Verwenden Sie eine SELECT-Anweisung, um eine clone.BaseTable zu erstellen, die die Daten von dbo.BaseTable und eine neue INT-Spalte enthält, die auf -1 gesetzt ist.
- Klon korrigieren: Neu erstellen Indizes, Einschränkungen usw. in der Klontabelle.
- Austauschen Tabellen:Verwenden Sie ALTER SCHEMA ... TRANSFER, um die ursprünglichen und geklonten Tabellen auszutauschen.
- Bereinigung:Löschen Sie die alte Tabelle.
Für Tabellen Bei Clustered-Indizes oder anderen Komplexitäten ist ein detaillierterer Prozess erforderlich:
Detaillierter Prozess für Nicht einfache Szenarien
- BaseTable neu erstellen: Klonen Sie die Originaltabelle in ein Klonschema mit einem Clustered-Index, Identitätsspalten, berechneten Spalten und der neuen INT-Spalte.
- Einschränkungen ausschließen: Trigger, Fremdschlüsseleinschränkungen weglassen, Nicht gruppierte Indizes und Prüfbeschränkungen.
- Einfügung testen: Führen Sie einen kleinen Einfügevorgang durch, um die Funktionalität der geklonten Tabelle zu überprüfen.
- Klon abschneiden: Löschen Sie die Klontabelle.
- Masseneinfügung: Führen Sie eine Masseneinfügung durch in die Klontabelle im Massenprotokoll- oder einfachen Wiederherstellungsmodus.
- Einschränkungen neu erstellen: Alle nicht gruppierten Einschränkungen, Indizes, Trigger und Prüfeinschränkungen nacheinander neu erstellen.
- Schemaübertragung: Verschieben Sie die geklonte Tabelle in das DBO-Schema und die Originaltabelle in ein Backup Schema.
- True-Up-Vorgang: Führen Sie gegebenenfalls alle erforderlichen True-Up-Vorgänge durch.
Fazit
Durch die Verwendung dieses Select-and-Popule-Ansatzes wird es möglich, große Tabellen effizient zu aktualisieren. Diese Methode kann die für Tabellenaktualisierungen erforderliche Zeit erheblich reduzieren und ist somit eine praktikable Lösung für Tabellen mit einer beträchtlichen Anzahl von Datensätzen.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Tabelle mit 120 Millionen Datensätzen effizient aktualisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Speichernde Verfahren sind vorkompilierte SQL -Anweisungen in MySQL zur Verbesserung der Leistung und zur Vereinfachung komplexer Vorgänge. 1. Verbesserung der Leistung: Nach der ersten Zusammenstellung müssen nachfolgende Anrufe nicht neu kompiliert werden. 2. Die Sicherheit verbessern: Beschränken Sie den Zugriff auf die Datenentabelle durch Berechtigungssteuerung. 3. Vereinfachen Sie komplexe Operationen: Kombinieren Sie mehrere SQL -Anweisungen, um die Logik der Anwendungsschicht zu vereinfachen.

Das Arbeitsprinzip des MySQL -Abfrage -Cache besteht darin, die Ergebnisse der ausgewählten Abfrage zu speichern. Wenn dieselbe Abfrage erneut ausgeführt wird, werden die zwischengespeicherten Ergebnisse direkt zurückgegeben. 1) Abfrage -Cache verbessert die Leistung der Datenbank und findet zwischengespeicherte Ergebnisse durch Hash -Werte. 2) Einfache Konfiguration, setzen Sie in MySQL -Konfigurationsdatei query_cache_type und query_cache_size. 3) Verwenden Sie das Schlüsselwort SQL_NO_Cache, um den Cache spezifischer Abfragen zu deaktivieren. 4) In Hochfrequenz-Update-Umgebungen kann Abfrage-Cache Leistungs Engpässe verursachen und muss für die Verwendung durch Überwachung und Anpassung von Parametern optimiert werden.

Die Gründe, warum MySQL in verschiedenen Projekten häufig verwendet wird, umfassen: 1. Hochleistungs und Skalierbarkeit, die mehrere Speichermotoren unterstützen; 2. Einfach zu verwendende und pflegende, einfache Konfiguration und reichhaltige Werkzeuge; 3. Reiches Ökosystem, das eine große Anzahl von Community- und Drittanbietern anzieht; V.

Zu den Schritten für die Aktualisierung der MySQL -Datenbank gehören: 1. Sicherung der Datenbank, 2. Stoppen Sie den aktuellen MySQL -Dienst, 3. Installieren Sie die neue Version von MySQL, 14. Starten Sie die neue Version des MySQL -Dienstes, 5. Wiederherstellen Sie die Datenbank wieder her. Während des Upgrade -Prozesses sind Kompatibilitätsprobleme erforderlich, und erweiterte Tools wie Perconatoolkit können zum Testen und Optimieren verwendet werden.

Zu den MySQL-Backup-Richtlinien gehören logische Sicherungen, physische Sicherungen, inkrementelle Sicherungen, replikationsbasierte Backups und Cloud-Backups. 1. Logical Backup verwendet MySQldump, um die Datenbankstruktur und -daten zu exportieren, die für kleine Datenbanken und Versionsmigrationen geeignet sind. 2. Physische Sicherungen sind durch das Kopieren von Datendateien schnell und umfassend, erfordern jedoch eine Datenbankkonsistenz. 3. Incremental Backup verwendet eine binäre Protokollierung, um Änderungen aufzuzeichnen, was für große Datenbanken geeignet ist. V. 5. Cloud -Backups wie AmazonRDs bieten Automatisierungslösungen, aber Kosten und Kontrolle müssen berücksichtigt werden. Bei der Auswahl einer Richtlinie sollten Datenbankgröße, Ausfallzeittoleranz, Wiederherstellungszeit und Wiederherstellungspunktziele berücksichtigt werden.

MysqlclusteringenhancesDatabaserObustnessandScalabilityBydiTributingDataacrossmultiPlenodes

Das Optimieren von Datenbankschema -Design in MySQL kann die Leistung in den folgenden Schritten verbessern: 1. Indexoptimierung: Erstellen Sie Indizes für gemeinsame Abfragespalten, Ausgleich des Aufwand der Abfragen und Einfügen von Aktualisierungen. 2. Tabellenstrukturoptimierung: Redundieren Sie die Datenreduktion durch Normalisierung oder Anti-Normalisierung und verbessern Sie die Zugangseffizienz. 3. Datentypauswahl: Verwenden Sie geeignete Datentypen, z. B. int anstelle von VARCHAR, um den Speicherplatz zu reduzieren. 4. Partitionierung und Untertisch: Verwenden Sie für große Datenvolumina die Partitionierung und Untertabelle, um Daten zu dispergieren, um die Abfrage- und Wartungseffizienz zu verbessern.

TooptimizeMySQLperformance,followthesesteps:1)Implementproperindexingtospeedupqueries,2)UseEXPLAINtoanalyzeandoptimizequeryperformance,3)Adjustserverconfigurationsettingslikeinnodb_buffer_pool_sizeandmax_connections,4)Usepartitioningforlargetablestoi


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),
