Use Cases wie LLMs (Large Language Models), NLP (Natural Language Processing) in interaktiven Systemen, semantische Suche in multimedialen Daten oder Ähnlichkeitssuche in Recommender Systemen erfordern das effiziente Abspeichern und Abfragen von langen, reellwertigen Vektoren.

Da herkömmliche (relationale) Datenbanken bei der Bewältigung dieser Aufgaben an ihre Grenzen stoßen, sind in den letzten Jahren spezielle Vektordatenbanken auf den Markt gekommen.

Im theoretischen Teil werden nach einer Einführung in die Kernkonzepte von Vektordatenbanken, unterschiedliche Formen der Ähnlichkeitsberechnung (z.B. Euklidische Distanz und Kosinusähnlichkeit) von Vektoren vorgestellt und bewertet. Anschließend wird die Suche in Vektordatenbanken beschrieben, wobei neben dem klassischen k-NN Verfahren (k Nearest Neighbors) auch der ANN Ansatz (Approximate Nearest Neighbors) vorgestellt wird. Da das zur Ähnlichkeitsberechnung notwendige Vergleichen von Vektoren aufwändig ist, müssen große Data Sets indexiert werden. Hierfür gibt es verschiedene Ansätze, von denen insb. HNSW ((Hierarchical) Navigable Small World) detailliert beschrieben und erläutert wird.

Im praktischen Teil des Vortrags sollen zwei konkrete Lösungen vorgestellt werden. Zum einen soll mit Pinecone eine reine Vektordatenbank vorgestellt werden, zum anderen soll das Arbeiten mit Vektoren in Oracle als relationaler Datenbank behandelt werden.