# Einführung in MyScale

MyScale ist eine cloudbasierte Datenbank, die speziell für KI-Anwendungen und -Lösungen optimiert ist. Sie basiert auf der Open-Source-Datenbank ClickHouse und ermöglicht uns die effektive Verwaltung großer Datenmengen für die Entwicklung robuster KI-Anwendungen. Einige der wichtigsten Vorteile der Verwendung von MyScale sind:

  • Für KI-Anwendungen entwickelt: Verwaltet und unterstützt die analytische Verarbeitung strukturierter und vektorisierter Daten auf einer einzigen Plattform.
  • Für hohe Leistung entwickelt: Modernste OLAP-Datenbankarchitektur zur Durchführung von Operationen auf vektorisierten Daten mit unglaublicher Geschwindigkeit.
  • Für universelle Zugänglichkeit entwickelt: SQL ist die einzige Programmiersprache, die zur Interaktion mit MyScale benötigt wird.

Im Vergleich zu anderen Produkten/Plattformen mit benutzerdefinierten APIs ist MyScale einfacher zu bedienen und daher für eine große Programmierergemeinschaft geeignet.

MyScale beseitigt die Notwendigkeit mehrerer kostenintensiver Data-Warehousing-Produkte mit unterschiedlichen Abfragesprachen durch kostengünstige Unterstützung für das Datenmanagement, hervorragende lineare Skalierbarkeit und Standard-SQL-Unterstützung. Mit einer einzigen Schnittstelle kann eine SQL-Abfrage gleichzeitig und schnell verschiedene Datenmodalitäten nutzen, um komplexe KI-Anforderungen zu bewältigen, die sonst mehr Schritte und Zeit erfordern würden.

# Schlüsselkonzepte

MyScale ist in der Lage, schnelle und präzise Abfragen über verschiedene Datenmodalitäten hinweg durchzuführen, basierend auf den folgenden Schlüsselkonzepten.

# Ähnlichkeitsmetriken

Es gibt zwei verschiedene Ansätze zur Messung der semantischen Ähnlichkeit zwischen zwei Datenobjekten:

  • Unimodal (Bild-Bild oder Text-Text): Unimodale Ähnlichkeit misst die semantische Ähnlichkeit zwischen Objekten desselben Datentyps.
  • Multimodal (Bild-Text): Multimodale Ähnlichkeit misst die semantische Ähnlichkeit zwischen Objekten unterschiedlicher Datentypen.

Die semantische Ähnlichkeit zwischen zwei Datenobjekten kann durch eine Punktzahl, die als Ähnlichkeitsmetrik bezeichnet wird, dargestellt werden. Die Wahl einer guten Ähnlichkeitsmetrik zur Darstellung der semantischen Ähnlichkeiten in einer großen Datenbank von Objekten ist entscheidend für die Leistung der Datenklassifizierung und -clustering in MyScale.

Die Wahl einer guten Ähnlichkeitsmetrik zur Darstellung der semantischen Ähnlichkeiten in einer großen Datenbank von Objekten ist für die Leistung der Datenklassifizierung und -clustering in MyScale unerlässlich. Drei der beliebteren Metriken sind:

  • Euklidischer Abstand (L2): L2 wird häufig in Computer-Vision-Anwendungen (CV) verwendet.
  • Inneres Produkt (IP): IP wird am häufigsten in Natural Language Processing (NLP)-Anwendungen verwendet.
  • Kosinus-Ähnlichkeit: Im Gegensatz zu IP, das die "Größe" und "Winkel" berücksichtigt, die als Vektoren zwischen zwei Objekten dargestellt werden, vergleicht die Kosinus-Ähnlichkeit nur die Unterschiede in den "Winkeln" bei normalisierten Daten.

# Suchalgorithmen

Ein Einbettungsvektor (oder Vektor) ist eine numerische Darstellung eines Objekts, Konzepts oder einer Entität in einem mehrdimensionalen Raum. Er wird häufig verwendet, um Natural Language Processing (NLP)-Texte, IoT-Sensordaten, Fotos aus sozialen Medien, biologische und chemische Strukturen oder andere Datenobjekte so darzustellen, dass ihre semantischen Beziehungen und zusätzlichen Kontextinformationen erfasst werden.

Einbettungen sind darauf ausgelegt, bedeutungsvolle Merkmale oder Eigenschaften der Daten in einem niedrigdimensionalen Raum zu erfassen, was es maschinellen Lernalgorithmen erleichtert, die Daten zu verarbeiten und zu analysieren.

TIP

Moderne Einbettungstechniken werden verwendet, um unstrukturierte Daten in Vektoren umzuwandeln und hochdimensionale Daten in eine kompaktere und strukturiertere Form zu bringen.

Um die semantische Ähnlichkeit zwischen zwei Objekten zu vergleichen, geben Sie der MyScale-Datenbank einen Abfragevektor. MyScale verwendet dann Suchalgorithmen wie Approximate Nearest Neighbor (ANN), um schnell und präzise eine Liste ähnlicher Vektoren zum Abfragevektor zurückzugeben.

# Verwendung von SQL mit MyScale

Im Gegensatz zu proprietären Vektordatenbanken wie Pinecone, Milvus, Qdrant und Weaviate basiert MyScale auf der Open-Source-SQL-kompatiblen Datenbank ClickHouse. Dafür gibt es mehrere Gründe, darunter:

  • Wir können unseren Benutzern eine funktionsreiche Datenbank zur Verfügung stellen, indem wir von ClickHouses ausgereiftem Codebase und Ökosystem profitieren.
  • SQL wird weit verbreitet zur Verwaltung relationaler Datenbanken verwendet. Mit der SQL-Unterstützung von MyScale können Entwickler und Datenanalysten ihr vorhandenes Wissen und ihre Fähigkeiten nutzen, was die Integration und Verwendung erleichtert.
  • SQL unterstützt eine Vielzahl von Funktionen zur Datenmanipulation, Abfrage und Berichterstellung. Daher können Benutzer mit MyScale komplexe Abfragen durchführen und Daten auf viele verschiedene Arten analysieren, da es vollständig mit SQL kompatibel ist.
  • Da MyScale auf ClickHouse aufbaut, bietet es nicht nur schnelle und skalierbare Leistung für die Vektorsuche, sondern auch für die gefilterte Vektorsuche und komplexe SQL plus Vektorabfragen, wie das Verbinden von Vektorsuchergebnissen mit einer anderen Tabelle.

# Warum ist das wichtig?

Mit dem exponentiellen Wachstum komplexer Daten werden zukunftssichere Lösungen benötigt, die mit neuen Datenmodalitäten, Datenbankgrößen und Herausforderungen bei der Beantwortung von Abfragen umgehen können. Dies ist wichtig, darf jedoch nicht auf Kosten der Rechenleistung und der Integration zwischen verschiedenen Datenmodalitäten geschehen.

Neben traditionellen Datenformaten kann MyScale auch zukünftige Datenmodalitäten verarbeiten. In MyScale ist die Kombination von traditionellen strukturierten Daten mit Vektorsuchergebnissen in SQL ein leistungsstarker Ansatz, um komplexe KI-bezogene Fragen zu bewältigen und gleichzeitig die Leistung zu erhalten.

Lesen Sie weiter, um herauszufinden, wie MyScale funktioniert und wie Sie es in Ihre Lösung integrieren können.