Probleme beim Design der Tabellenstruktur
Ein Tischstrukturdesign, ich weiß nicht, wie ich das machen soll, bitte fragen Sie:
Es gibt unten ein Modul mit 6 verschiedenen Tabellentypen, die alle 5 bis 6 Felder gemeinsam haben. (Jede Tabelle enthält mehr als 30 Millionen Daten)
1. Erstellen Sie eine neue Mastertabelle, trennen Sie diese 5 Felder und fügen Sie eine Protokolltyp-ID hinzu, um 6 Tabellen (dritte Normalform) zu betreiben und gemeinsame Abfragen durchzuführen.
<code>优点:可以方便更新共同字段、统计数据 缺点:数据多了,联合查询是个问题 </code>
2. 6 separate Tische
<code>优点:(查询单表不用联合、插入也方便一些) 缺点:统计和更新共同字段状态、以及做报表什么之类的都需要 一次性去操作6个表 </code>
Welche Methode sollte besser sein oder gibt es andere Vorschläge?
Vielen Dank!
Antwortinhalt:
Ein Tischstrukturdesign, ich weiß nicht, wie ich das machen soll, bitte fragen Sie:
Es gibt unten ein Modul mit 6 verschiedenen Tabellentypen, die alle 5 bis 6 Felder gemeinsam haben. (Jede Tabelle enthält mehr als 30 Millionen Daten)
1. Erstellen Sie eine neue Mastertabelle, trennen Sie diese 5 Felder und fügen Sie eine Protokolltyp-ID hinzu, um 6 Tabellen (dritte Normalform) zu betreiben und gemeinsame Abfragen durchzuführen.
<code>优点:可以方便更新共同字段、统计数据 缺点:数据多了,联合查询是个问题 </code>
2. 6 separate Tische
<code>优点:(查询单表不用联合、插入也方便一些) 缺点:统计和更新共同字段状态、以及做报表什么之类的都需要 一次性去操作6个表 </code>
Welche Methode sollte besser sein oder gibt es andere Vorschläge?
Vielen Dank!
Wenn es so viele Mengen gibt,
Bauen Sie es in eine Tabelle ein und übertragen Sie die Daten gleichzeitig an es. Lesen Sie es.
Aktualisieren Sie die Operationstabelle und synchronisieren Sie gleichzeitig die aktualisierten Daten . zu es
Die Frage ist nicht ganz klar.
Welche Beziehung besteht zwischen den sechs Tabellen? Warum erfordert die statistische Aktualisierung gemeinsamer Felder die gleichzeitige Bedienung von 6 Tabellen?
Wie sieht es jetzt aus, wie ist die Leistung und welche Art von Abfrage- und Aktualisierungsanweisungen wird es geben?
Tatsächlich können Sie erwägen, die Daten in Tabellen aufzuteilen, wenn sie 30 Millionen erreichen.
Die Aufteilung in Tabellen ist unvermeidlich, wenn die Datenmenge groß ist und die Aufteilungsmethode nicht schlecht ist. Wenn Sie die Notwendigkeit eines regelmäßigen Abrufs berücksichtigen müssen, können Sie die Bedingungen für den regelmäßigen Abruf in Betracht ziehen B. Speicheraufteilung, kann die Struktur die Statistik beschleunigen. Andere Methoden mit relativ kleinen Suchvorgängen können nur wenige Male durchsucht werden.
Angesichts der Tatsache, dass die Datenmenge im zweistelligen Millionenbereich liegt, können Sie darüber nachdenken, regelmäßig temporäre Statistiktabellen zu erstellen, um den Datenbankdruck zu verringern und die Abfragestatistiken zu beschleunigen.
Um welche Art von Szenariodaten handelt es sich? Bei der Erstellung von Geschäftsstatistiken wird empfohlen, diese in separaten Tabellen zu verarbeiten. Manchmal ist es nicht unbedingt erforderlich, das kartesische Produkt für eine große Anzahl von Tabellen durchzuführen, um das Problem zu lösen

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

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

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

PHP eignet sich für Webentwicklungs- und Content -Management -Systeme, und Python eignet sich für Datenwissenschafts-, maschinelles Lernen- und Automatisierungsskripte. 1.PHP hat eine gute Leistung beim Erstellen von schnellen und skalierbaren Websites und Anwendungen und wird üblicherweise in CMS wie WordPress verwendet. 2. Python hat sich in den Bereichen Datenwissenschaft und maschinelles Lernen mit reichen Bibliotheken wie Numpy und TensorFlow übertrifft.

Die Hauptaufgabe von MySQL in Webanwendungen besteht darin, Daten zu speichern und zu verwalten. 1.Mysql verarbeitet effizient Benutzerinformationen, Produktkataloge, Transaktionsunterlagen und andere Daten. 2. Durch die SQL -Abfrage können Entwickler Informationen aus der Datenbank extrahieren, um dynamische Inhalte zu generieren. 3.Mysql arbeitet basierend auf dem Client-Server-Modell, um eine akzeptable Abfragegeschwindigkeit sicherzustellen.

PhPhas significantantyPactedWebDevelopmentAndendendsbeyondit.1) iTpowersMAjorPlatforms-LikewordpressandExcelsInDatabaseInteractions.2) php'SadaptabilityAllowStoscaleForLargeApplicationsfraMe-Linien-Linien-Linien-Linienkripte

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.

Laravel ist ein PHP -Framework zum einfachen Aufbau von Webanwendungen. Es bietet eine Reihe leistungsstarker Funktionen, darunter: Installation: Installieren Sie die Laravel CLI weltweit mit Komponisten und erstellen Sie Anwendungen im Projektverzeichnis. Routing: Definieren Sie die Beziehung zwischen der URL und dem Handler in Routen/Web.php. Ansicht: Erstellen Sie eine Ansicht in Ressourcen/Ansichten, um die Benutzeroberfläche der Anwendung zu rendern. Datenbankintegration: Bietet eine Out-of-the-Box-Integration in Datenbanken wie MySQL und verwendet Migration, um Tabellen zu erstellen und zu ändern. Modell und Controller: Das Modell repräsentiert die Datenbankentität und die Controller -Prozesse HTTP -Anforderungen.

Bei der Entwicklung einer kleinen Anwendung stieß ich auf ein kniffliges Problem: die Notwendigkeit, eine leichte Datenbankbetriebsbibliothek schnell zu integrieren. Nachdem ich mehrere Bibliotheken ausprobiert hatte, stellte ich fest, dass sie entweder zu viel Funktionalität haben oder nicht sehr kompatibel sind. Schließlich fand ich Minii/DB, eine vereinfachte Version basierend auf YII2, die mein Problem perfekt löste.
