imx.Search: der neue ad-hoc Index-Update-Service

Datum: 3. Dezember 2014
Autor*in: Marc Kurzmann


Bisher war es bei imx.Search so, dass Änderungen in den Contents aus den Produkten nur nach einer kompletten Neu-Indizierung im Index verfügbar waren – üblicherweise über Nacht. Was für einen reinen Volltext-Suchmaschineneinsatz von imx.Search vielleicht noch akzeptabel ist, wenn Suchbegriffe mit einem Tag Verspätung gefunden werden, so ist es bei der Verwendung als Filter-Suchmaschine, so wie es mittlerweile bei allen unseren neueren und größeren Portalen geschieht, eher lästig, dass die Daten nicht gleich auffindbar sind, weil insbesondere auch keine saubere Portal-Prüfung direkt nach Eingabe möglich wird.

imx.Search unterstützt ab Version 3.6.0 (17.11.2014) den neuen ad-hoc Index-Update-Service. Die Funktionsweise ist wie folgt:

  • Änderungen aus den Produkten wird imxSearch über einen Service-Aufruf mitgeteilt: http://[imxsearch]/[lang]/imxsearch?method=scheduledUpdate&connectorId=…&objectId=…&lang=…
    Der Parameter lang ist optional; falls er weggelassen wird, wird auf die unterstützten Sprachen des [lang]-cores zurückgegriffen. Der connectorId ist imx.Search-Instanz individuell, typsicherweise z.B. imxtools2, imxcms etc.
  • imx.Search fügt diese Änderungsinformation in seine Update-Queue ein.
  • Alle 3 Minuten wird ein Schedule-Job in imx.Search gestartet, der die nächsten 100 Änderungs-Einträge aus der Queue entnimmt, die geänderten Objekte aus den entsprechenden Content-Quellen (Produkten) erneut abfragt und in den Index zurückschreibt. Ein Änderungs-Eintrag muss mindestens 30 Sekunden alt sein, damit er für den Schedule-Job berücksichtigt wird.
  • Die Queue erfasst max. 5000 Einträge. Alle Änderungsmitteilungen, während einer vollen Queue werden ignoriert. Das soll verhindern, dass bei riesigen Massenupdates der ad-hoc Index-Update für viele Stunden blockiert ist. Bei riesigen Imports ist es sinnvoll, den Ad-hoc-Update-Service zu blockieren und danach die Blockade wieder aufzuheben. Dazu gibt es den Service
    http://[imxsearch]/[lang]/imxsearch?method=scheduler&run=[true/false]
    Idealerweise finden solche Massenimports vor einem frischen Komplett-Index-Lauf statt.

Warum der Scheduler?

Der Scheduler sorgt dafür, dass sich durch Massenänderungen nicht plötzlich das ganze System aufschaukelt und dann unter der Last zusammenbricht. Bei Massen-Änderungen wie es sie z.B. bei Imports gibt, füllt sich zwar schnell die Queue, diese wird dann aber peau-a-peau in sog. „Chunks“ (100er-Einheiten) abgearbeitet, was die Spitzenlast deutlich reduziert. Dadurch, dass bei Massen-Änderungen die Queue schnell über die Chunk-Größe steigen kann, kann es passieren, dass in solchen Fällen ein Update im Index erst zu einem späteren Zeitpunkt und nicht schon beim nächsten Schedule-Job-Lauf durchgeführt wird.

Zur Aktivierung des neuen Ad-hoc-Index-Update-Services sind zwei Dinge zu tun
1. Update auf die neue imx.Search-Version >= 3.6.0
2. Aktivierung über die Konfiguration in den Produkten (imx.Tools, imx.EventManager, imx.CMS)

Hier läuft der neue Ad-hoc-Index-Update-Service bereits:

  • NÖW
  • byTM (Anbindung imx.Tools)
  • weitere Projekte werden nach und nach folgen [wenn es hier Wünsche zur Priorisierung gibt, dann teilt es mir bitte mit].

Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


„Wir sind Open-Data ready.“

Autor*in: Christine Pfleger


Projekte   //   Technologie


Beim Thema Datenmanagement in Destinationen zählt der Tourismusverband Mecklenburg-Vorpommern e.V. (TMV) zu den Vorreitern. Ein Gespräch mit Carsten Pescht über die Anforderungen an ein Datenmanagement-System – und was die imx.Platform für die Destination leistet.


Beitrag lesen
06
OKT
20

Styling von Checkboxen und Radiobuttons

Autor*in: Benjamin Hofmann


Technologie   //   User Experience & Design


Wieder einmal ein Linktipp: Customizing web forms with CSS3 and WebKit Leider funktionieren diese Styles, so wie sie im Artikel dargestellt werden, nur in WebKit-basierten Browsern, also im Safari, Chrome oder den Standard-Browsern von Android und iOS. Aber wenn diese Styles nicht angewandt werden können springt der jeweilige Browser auf die normale Darstellung zurück, wie …


Beitrag lesen
23
FEB
12

imx.Platform News: Datenqualität, automatische Regionszuordnung und Referenzlisten für Touren & Veranstaltungen

Autor*in: Ina Fuchshuber


infomax   //   Technologie


imx.Platform
imx.Platform - das Datenmanagement-System von infomax

Was rührt sich in der imx.Platform-Entwicklung? Wir wollen Ihnen zukünftig wieder regelmäßig Einblick geben in neue Features und Optimierungen Ihrer imx.Platform – hier auf unserem Blog, sowie per Email. Ankündigung imx.Platform 3: Werden Sie Beta-User der überarbeiteten Medienverwaltung! Danke für Ihr Feedback über die letzten Wochen! Wir überarbeiten derzeit die Medienverwaltung und erste Kunden nutzen …


Beitrag lesen
17
AUG
22

Fancybox: JS-Fehler mit jQuery 1.9+

Autor*in: Stefan Oswald


Technologie


Die letzte freie Version von Fancybox (1.3.4) beinhaltet eine Inkompatibilität mit jQuery ab Version 1.9, da dort die Unterstützung für jQuery.browser eingestellt worden ist. Darauf will das Fancybox-Script aber zugreifen. Das hat zur Folge, dass es auf der Konsole des verwendeten Browsers zu einer Fehlermeldung kommt und dass ggf. sonstiger JavaScript Code auf der Seite …


Beitrag lesen
25
MRZ
14