2026‐03‐02 Community Board (Kitodo.Production) - kitodo/kitodo-production GitHub Wiki
Teilnehmende: André Hohmann (P), Anja Piller, Armin Möller, Christoph Bartmann, Kerstin Wendt (M), Lole Westedt, Matthias Kissler, Nils Reichert, Thomas Low (Gast)
TOP 1 Auswertung Einschätzung Thomas Low
Vorstellung der Ergebnisse der Einschätzung von Thomas Low bezüglich der Umsetzung der Suche in Kitodo.Production durch Datenbanksuche oder Suchmaschine.
- Es stehen drei Möglichkeiten zur Verfügung, um die Suche zu implementieren:
- Weg 1: Verbessern des aktuellen Stands durch Scroll-API
- Weg 2: Rückkehr zur Suche ausschließlich über den Suchindex (bzw. OpenSearch)
- Weg 3: Suche ausschließlich über die Datenbank
- Einschätzung der bestehenden Suchfunktionen
- Für Oder-Verknüpfung existiert keine spezifische Syntax
- Dies ist jedoch nicht ausschlaggebend für Entscheidung einer der drei Wege
- Es müsste gut dokumentiert sein, dass es benötigt wird, um zu vermeiden, dass die Funktion „aus Versehen“ verloren geht
- Anforderungen sollten dauerhaft verfügbar und auffindbar sein
- Auf diese sollte man referenzieren können
- Es ist derzeit schwierig, die Anordnungen aus den Issues, PR, … abzuleiten
- Auch „einfache“ Anforderungen müssen verfügbar sein
- Für Oder-Verknüpfung existiert keine spezifische Syntax
- Präferenz der Anwender eher zur exakten Suche anstatt zu Suchmaschinen-Feature
- Erweiterte Suchfunktionen werden bisher nicht angewendet
- Es muss berücksichtigt werden, ob auch in Zukunft keine Suchmaschinen-Feature benötigt werden
- Bewertung von Suchmaschinen-Funktionen für Kitodo.Production
- Skalierbarkeit für viele, lange Texte:
- In Kitodo.Production nicht notwendig
- Skalierbare Relevanzberechnung:
- In Kitodo.Production nicht notwendig
- In Datenbanken nur rudimentär vorhanden
- Autovervollständigung
- In Kitodo.Production gegebenenfalls sinnvoll;
- kann auch mit Datenbanksuche realisiert werden
- Extraktion von relevanten Textstellen:
- Eher Anwendung für OCR
- In Kitodo.Production nicht notwendig
- Gewichtung verschiedener Merkmale
- In Kitodo.Production nicht notwendig
- Unscharfe Suche
- In Kitodo.Production gegebenenfalls sinnvoll
- Zum Beispiel ein falscher/fehlender Buchstabe
- Vektor-(KI)-Suche
- In Kitodo.Production gegebenenfalls sinnvoll
- Skalierbarkeit für viele, lange Texte:
- Weitere spezifische Suchen
- Exakte Suchen/Filter -> Datenbanksuche möglich
- In Kitodo.Production entsprechen Kommentare am ehesten einem OCR-Text:
- Derzeit nur exakte Suche in Kommentaren möglich
- In MariaDB ist nur eine rudimentäre Volltextsuche möglich
- Einschätzung Community Board:
- Es wird überwiegend die Anwendung der exakten Suche benötigt
- Aspekt der Reihenfolge der Filter-Kriterien
- Die Einschränkungen (nur abgeschlossene Vorgänge) werden erst nach der Suche angewendet; daher ist die Suche nicht schneller, als nach allen Vorgängen
- Entkoppeln Berechnung und Anzeige von Treffern
- Wenn möglich, sollte in Kitodo.Production die Berechnung der Treffer von der Anzeige der Treffer entkoppelt werden
- Berechnung der Anzahl der Treffer
- Berechnung der Anzahl der Trefferseiten
- -> Die Anzeige der ersten 100 Vorgänge wird sofort angezeigt
- Wenn möglich, sollte in Kitodo.Production die Berechnung der Treffer von der Anzeige der Treffer entkoppelt werden
- Spezifische Themen/Fragen
- Aktualisierung der Trefferlisten
- In Elasticsearch ist es möglich, einen Snapshot zu erstellen, so dass die Trefferlisten gleich bleiben, auch wenn andere Personen Vorgänge modifizieren
- Das ist in Kitodo.Production nicht notwendig
- In Elasticsearch ist es möglich, einen Snapshot zu erstellen, so dass die Trefferlisten gleich bleiben, auch wenn andere Personen Vorgänge modifizieren
- Frage Christoph
- Tokenisierung (Signaturen)
- Low: In Datenbanken wird es vermutlich nicht funktionieren
- Low: Alternative wäre doppelte Wildcard-Suche – vermutlich kein Unterschied der Performance von Datenbank und Elasticsearch
- Derzeit keine explizite *-Suche (Trunkierung) möglich – wird automatisch angewendet
- Ansonsten könnte man die *-Suche manuell durchführen, so dass jeder entscheiden kann, wie gesucht wird
- Anwendungsfall Signatur
- Leerzeichen soll nicht getrennt werden
- Tokenisierung (Signaturen)
- Aktualisierung der Trefferlisten
- Fazit
- Die Anwendung der Datenbanksuche ist ein konsequenter Schritt; es wäre sinnvoll, die Datenbanksuche zumindest testweise zu implementieren
- Weg 1 ist nicht zu empfehlen
- Ohne Elasticsearch werden viele administrative Aufgaben entfallen
- Es müssten ansonsten zum Beispiel Versions-Updates durchgeführt werden, obwohl Elasticsearch nicht angewendet wird
- Weg 2:
- Man müsste auch für diesen Weg weitere Anforderungen erheben
- Vor Einführung der HibernateSearch war Elasticsearch nicht ideal eingebunden
- Weg 3:
- Nachteile
- Mit Hibernate können nicht alle Datenbanken unterstützt werden
- Lösungen müssten für einzelne Datenbanken programmiert und bei allen Tests berücksichtigt werden
- Gegebenenfalls 2-3 Sekunden Wartezeit
- Mit Hibernate können nicht alle Datenbanken unterstützt werden
- Nachteile
- Weg 1 ist nicht zu empfehlen
- Christoph: Auch auf Basis der Datenbank sind spätere Optimierungen nicht grundsätzlich ausgeschlossen:
- Zum Beispiel: Vorgangsstatus (aktiv/inaktiv) und weitere Informationen könnten mit in der der Volltextspalte indexiert werden um die Geschwindigkeit der Abfragen zu erhöhen
- Die Anwendung der Datenbanksuche ist ein konsequenter Schritt; es wäre sinnvoll, die Datenbanksuche zumindest testweise zu implementieren
Einschätzungen
- Anja
- Können Verbesserungspotentiale im Rahmen einer Masterarbeit ermittelt werden?
- Kerstin: Eher darauf verzichten, weil weitere Anforderungen auch ausgewertet werden müssten – statt dessen eher eine Lösung implementieren und dann Lücken ermitteln
- Können Verbesserungspotentiale im Rahmen einer Masterarbeit ermittelt werden?
- Christoph
- Beide Lösungen wären möglich
- Nur kleinere Anpassungen notwendig wie Signatursuche (doppelte Wildcard)
- Es wäre besser, wenn die Wildcard explizit angewendet werden muss (Zum Beispiel mit *), um die Performance einschätzen zu können (bisher wird immer rechts trunkiert)
- Gesamt
- Das Community Board empfiehlt den Weg 3 für eine Test-Umsetzung
- Mögliche Nachteile werden in Kauf genommen
- Bisher ist in Kitodo.Production schon fast eine Datenbanksuche umgesetzt
- Die weitere Untersuchung sollte in der Technikrunde besprochen und geprüft werden
- Komplizierte Suchen
- Suchen auf großen Datenmengen
- Kerstin Wendt erstellt Terminumfrage für Techniker-Runde
TOP 2 Nächstes Treffen
Nächstes CB 2026-04-14 10:00-11:30:
- Protokoll: Anja Piller
- Moderation und Protokollentwurf: André Hohmann