webentwicklung-frage-antwort-db.com.de

Richtige Methode zum Speichern einer großen Anzahl von benutzerdefinierten Post-Feldern

Auf einem der Standorte meines Netzwerks mit mehreren Standorten; Ich erstelle einen benutzerdefinierten Beitragstyp "Ereignisse". Jeder Beitrag unter "Ereignisse" enthält etwa 30-50 benutzerdefinierte Beitragsfelder, da die Ersteller von Ereignissen viele ereignisbezogene Daten eingeben müssen.

Ich habe festgestellt, dass WP mehrere Zeilen erstellt, um benutzerdefinierte Post-Felder zu speichern. und das bedeutet, dass in jedem unserer 'Events'-Posts ~ 100 (oder vielleicht mehr?) Zeilen in die Datenbank eingefügt werden.

Wir rechnen jetzt damit, eine große Anzahl dieser "Events" -Postings zu erstellen. Alles wird über das Front-End von unseren Benutzern ausgefüllt. Ich spreche von zehntausenden von Benutzern erstellten Ereignissen, von denen jedes viele benutzerdefinierte Felddaten enthält.

Ich dachte, ein besserer Plan wäre, alle benutzerdefinierten Felddaten als JSON-Zeichenfolge zu codieren und sie in der Datenbank als nur ein benutzerdefiniertes Feld zu speichern. Dadurch wird nur ein Eintrag pro Ereignis in der Datenbank erstellt.

So weit, ist es gut.

Das Problem: Ich frage mich, was passieren würde, wenn wir eine große Anzahl von Ereignissen haben, und wir müssen sie basierend auf benutzerdefinierten Post-Feldern durchsuchen. Ist es effizient, in jSON-Zeichenfolgen (Text) zu suchen oder nur eine große Anzahl von Zeilen zu durchsuchen?.

Warten auf Ihre Antworten, danke!

4
TheBigK

Sie können sie als JSON oder als serialisierte Zeichenfolgen codieren (letztere können Sie mit Funktionen ausführen, die bereits in Wordpress integriert sind). Mit beiden Optionen können Sie die Anzahl der Datenbankzeilen verringern.

Beide Optionen beeinträchtigen jedoch auch erheblich Ihre Fähigkeit, die Daten zu durchsuchen oder in Zukunft auf andere Weise sinnvoll damit umzugehen.

Es ist egal, ob Sie eine große Anzahl von Zeilen in Ihrer Datenbank haben.

Wenn Ihre Site die Größe erreicht, bei derein Problem darstellt, muss Ihre Hardware entsprechend erweitert werden. Sie werden Ihren Server viel mehr belasten, indem Sie verschlüsselte Daten in einer Zeile verarbeiten (oder esoterische Abfragen durchführen, um die Daten abzurufen), als wenn die benutzerdefinierten Felder alle in ihren eigenen Zeilen wären.

Wordpress kann mit vielen Daten umgehen - lass es :)

3
Tim Malone