codeenterpriseService

Suchindizes aufbauen und pflegen

Ein Suchindex ist das Verzeichnis, über das die Datenbank einen Treffer direkt nachschlägt, statt alle Zeilen durchzugehen. Ohne diese Indizes bringt das Plugin keinen Gewinn — deshalb ist der Aufbau der eine Schritt, den du je Bereich einmal machst.

Du findest die Übersicht in den Plugin-Einstellungen im Bereich Suchindizes.

Was du dort siehst

Je Bereich — Bestellungen, Produkte, Kunden — steht eine Zeile pro Index. Nicht mit technischem Namen, sondern mit dem, was er schnell auffindbar macht:

| Bereich | Indizes |
|---|---|
| Bestellungen | Kundenname, Firma und E-Mail · Rechnungs- und Lieferadresse · Kundennummer · E-Mail-Adresse |
| Produkte | Produktname · EAN · Herstellernummer |
| Kunden | Kundenname und Firma · Adressen · Kundennummer |

Über der Liste steht der Zustand des ganzen Bereichs samt Zähler, etwa »⚡ Schnell 4 von 4«. Jede Zeile trägt zusätzlich ihr eigenes Symbol:

| Symbol | Bedeutung |
|---|---|
| ⚡ Schnell | Der Index ist aufgebaut, die Suche findet diese Felder direkt. |
| ✓ Wird mitgesucht | Der Index fehlt noch; die Suche findet diese Felder trotzdem, braucht aber mehr Zeit. |
| ⚠ Bremst die Suche aus | Der Index fehlt noch; solange er fehlt, fällt jede Suche in diesem Bereich auf die langsame Standard-Suche zurück. |

Der Unterschied zwischen ✓ und ⚠ ist der wichtige: ✓ kostet nur dieses eine Feld etwas Zeit. ⚠ zieht den ganzen Bereich auf die Standard-Suche zurück — dort lohnt sich der Aufbau also am meisten.

Indizes aufbauen

Klicke im gewünschten Bereich auf Indizes aufbauen. Unter den Schaltflächen steht jeweils, was der Klick bewirkt und warum er gerade inaktiv ist — zum Beispiel »Alle 4 Indizes sind aufgebaut — deshalb ist »Indizes aufbauen« inaktiv.«

Der Aufbau läuft im Hintergrund über die Message-Queue. Das ist Absicht: Das Anlegen eines Index auf einer großen Tabelle dauert, und dein Shop soll währenddessen erreichbar bleiben. Du kannst die Seite verlassen; die Anzeige aktualisiert sich von selbst und meldet »Indizes aufgebaut«, sobald der Bereich vollständig ist.

Wähle für den ersten Aufbau ein ruhiges Zeitfenster — bei großen Tabellen belastet er die Datenbank spürbar. Genau deshalb legt das Plugin die Indizes nicht schon bei der Installation an.

Indizes entfernen

Indizes entfernen entfernt die Indizes des gewählten Bereichs. Seit Version 7.0.2 läuft das — wie der Aufbau — im Hintergrund über die Message-Queue, statt den Klick bis zum Abschluss zu blockieren. Du kannst die Seite verlassen; die Anzeige aktualisiert sich von selbst und meldet »Indizes entfernt«, sobald der Bereich leer ist.

Deine Daten sind davon nicht betroffen — entfernt wird nur das Verzeichnis, nicht der Inhalt. Die Suche fällt danach auf die Standard-Suche zurück, findet also weiterhin alles, nur langsamer. Planst du, das Plugin auf einem großen Katalog zu deinstallieren, entferne die Indizes am besten vorher — mehr dazu unter Plugin installieren und aktivieren.

Über die Konsole

Hast du Konsolenzugriff, geht alles auch dort — ohne Worker und ohne Wartezeit in der Oberfläche:

# Zeigt an, welche Indizes vorhanden sind und welche fehlen
bin/console coe:admin-search:index

# Legt alle fehlenden Indizes an
bin/console coe:admin-search:index --create

# Entfernt alle vorhandenen Indizes
bin/console coe:admin-search:index --drop

# Stößt die Wartung an (siehe unten)
bin/console coe:admin-search:index --optimize

Der Befehl ist wiederholbar: Was schon existiert, wird übersprungen. Ohne Angabe einer Option zeigt er nur den Zustand an und verändert nichts.

Automatische Wartung

Volltext-Indizes sammeln über die Zeit Ballast an: Gelöschte Datensätze bleiben zunächst als Altlast im Index stehen — etwa bei DSGVO-Löschungen oder wenn du regelmäßig Gastkonten bereinigst. Mit der Zeit bremst das die Suche wieder aus. OPTIMIZE TABLE räumt das auf.

Seit Version 7.0.2 ist diese Wartung optional und standardmäßig aus: Auf großen Tabellen baut OPTIMIZE TABLE die komplette Tabelle neu auf, das kostet zusätzlichen Festplattenplatz und einen kurzen Schreibstopp — nichts, das automatisch und unbemerkt im Hintergrund laufen sollte. Möchtest du die wöchentliche Wartung trotzdem automatisch, schalte Geplante Optimierung aktivieren in den Plugin-Einstellungen unter Suchindizes ein.

Unabhängig vom Schalter kannst du die Wartung jederzeit manuell anstoßen — etwa direkt nach einer großen Löschaktion — mit bin/console coe:admin-search:index --optimize.

Du brauchst mehr als ein Plugin?

Deine eigene Shopware-Abteilung zum Festpreis.

codeenterprise – Shopware Premium Extension PartnerWirf deine Aufgabe rein — im Schnitt ist sie in 72 Stunden erledigt. Ohne Angebotsschleife, ohne Stundenzettel, ohne Meeting-Zwang. Und wenn's nicht mehr passt: jederzeit kündbar.

Jetzt freien Slot sichern