Project Report

Insights

29.02.24

abaQon Project Report: Personensuche mit Elasticsearch

DAS PROJEKT

Eine grosse Schweizer Retailbank benötigte einen einfachen Suchdienst für Bankkunden, der sich nahtlos in verschiedene IT-Systeme integrieren lässt, z.B. in das Kreditantragssystem der Bank. Der Kreditsachbearbeiter sollte in einem einzigen Feld nach Vor- und Nachname, Adresse und Alter suchen können. Ausserdem sollte der Dienst in der Lage sein, die richtige Person zu finden, auch wenn der Name falsch geschrieben wurde, z.B. Akermann statt Ackermann.

UNSER BEITRAG

abaQon war für die Architektur und Implementierung des Suchdienstes verantwortlich. Als Suchmaschine wurde Elastic Search gewählt.  Elastic Search bietet eine schnelle und skalierbare Suche sowie eine an die Suche angepasste Relevanz, was für unseren Service von entscheidender Bedeutung war, um aussagekräftige Ergebnisse zu liefern, auch wenn keine perfekte Übereinstimmung gefunden werden konnte. Der von Confluent bereitgestellte Elastic Search Sink Connector wurde verwendet, um Personendaten aus dem Datenquellsystem Kafka der Bank in die Elastic Search Datenbank zu laden. Ein einfacher REST-Service wurde entwickelt, um die Anfragen und die Kommunikation zwischen dem Benutzer und dem Elastic Search Cluster abzuwickeln.

REALISIERTER MEHRWERT

Der Elastic Search Sink Connector ist in der Lage, innerhalb von Minuten über eine Million Personendokumente aus Kafka in den Elastic Search Cluster zu laden. Der Elastic Search Cluster selbst kann innerhalb von Millisekunden nach Personen auf Basis verschiedener Attribute suchen. Der REST-Service auf dem Solutionstack erleichtert die Integration des Suchdienstes in verschiedene Customer Journeys. Die drei Komponenten sind hochperformant und können unabhängig voneinander skaliert werden, wenn die Situation es erfordert. 

API-EntwicklungMicroservice-ArchitekturProject Report

Projektverantwortung

Fabian Burch

Fabian Burch, Consultant