Mit MindsDB ML-SQL Server können Entwickler Abläufe für Programme und Modelle in den Bereichen Künstliche Intelligenz (KI) und Machine Learning (ML) über SQL abwickeln. Dadurch lassen sich zum Beispiel Modelle als KI-Tabellen bereitstellen. Das ermöglicht beispielsweise umfassende Prognosen für komplexe Daten.
Mit der Open-Source-Lösung MindsDB ML-SQL-Server können Anwender Workflows für maschinelles Lernen über SQL abwickeln.
(Bild: https://github.com/mindsdb/mindsdb)
MindsDB ML-SQL-Server ist eine Open-Source-Lösung, mit der sich Workflows für maschinelles Lernen über SQL abwickeln lassen. ML-Modelle können dadurch zum Beispiel als Tabellen bereitgestellt werden. MindsDB ermöglicht es Benutzern, über eine SQL-ähnliche Schnittstelle Vorhersagen treffen zu können. Die Lösung soll es Entwicklern und Datenwissenschaftlern leicht machen, Modelle für maschinelles Lernen in Produktionsumgebungen zu erstellen und einzusetzen.
MindsDB unterstützt eine breite Palette von Modellen für maschinelles Lernen und kann mit gängigen Datenspeichersystemen wie MySQL und PostgreSQL integriert werden. Darüber hinaus bietet es eine webbasierte Benutzeroberfläche für die Verwaltung und Überwachung der eingesetzten Modelle.
MindsDB MS-SQL Server ermöglicht umfassende Abfragen für KI/ML-Modelle mit einer SQL-Syntax.
(Bild: T. Joos)
Ein großer Vorteil von MindsDB ist die Benutzerfreundlichkeit. Der Einstieg gelingt ohne tief greifende Kenntnisse in der Datenwissenschaft oder im Machine Learning. Mit MindsDB können Entwickler einfach Fragen an den Server stellen, anstatt komplexe Codezeilen zu schreiben. MindsDB unterstützt eine Vielzahl von Machine-Learning-Modellen, darunter Regression, Klassifizierung und NLP. Die webbasierte Benutzeroberfläche ermöglicht es Benutzern, ihre Modelle einfach zu verwalten und zu überwachen.
Ein weiterer Vorteil von MindsDB ist die Unterstützung für die Integration mit populären Datenspeichersystemen. Das erlaubt es Entwicklern, ihre bestehenden Datenbanken zu verwenden, um Machine-Learning-Modelle zu trainieren und Vorhersagen zu treffen. Trotz der einfachen Oberfläche bietet MindsDB die Möglichkeit, Machine-Learning-Modelle in Echtzeit zu trainieren und zu aktualisieren. Das erhöht die Flexibilität und Skalierbarkeit. Darüber hinaus können Entwickler ihre Modelle schnell an sich ändernde Anforderungen anpassen.
MindsDB in der Praxis
Um MindsDB ML-SQL-Server zu installieren, sollte die aktuelle Python-Version installiert sein. Die Installation kann mit „pip install mindsdb“ installiert werden. Nach der Installation kann der MindsDB-Server mit dem Befehl „mindsdb“ in der Befehlszeile gestartet werden. Wenn der Server gestartet ist, steht die MindsDB-API über eine HTTP-Schnittstelle zur Verfügung, um Machine-Learning-Modelle zu trainieren oder zu verwalten. Es besteht zudem die Möglichkeit, MindsDB in einer Docker-Umgebung zu installieren. Der Download kann zum Beispiel mit „docker pull mindsdb/mindsdb“ erfolgen. Über die Weboberfläche kann anschließend eine Abstraktion von ML-Modellen als KI-Tabellen genutzt werden. MindsDB ML SQL-Server bietet Vorhersagen über komplexe multivariate Zeitreihendaten mit hoher Kardinalität
Um ML-Modelle zu trainieren, sollte nach der Installation eine Verbindung mit den vorhandenen Datenbanken umgesetzt werden. Danach kann MindsBD automatisch mit einer einzigen SQL-Anweisung aus historischen Daten lernen. Parallel dazu können Entwickler ML-Modelle über JSON-AI in einen Predictor importieren. Die Vorhersagen werden mit SQL-Anweisungen umgesetzt und der Predictor wird als virtuelle KI-Tabellen dargestellt. Die Verknüpfung von ML-Modellen mit vorhandenen Daten ist genauso möglich, wie die Erkennung von Anomalien. Für eine höhere Leistung bietet MindsDB auch GPU-Unterstützung für das Training der Modelle. Die offene JSON-AI-Syntax zur Erstellung von Modellen und zum Einbringen von ML-Blöcken in einer deklarativen Weise ist standardmäßig integriert.
Diese Möglichkeiten bietet MindsDB ML SQL-Server für Entwickler und Datenwissenschaftler
MindsDB ML-SQL-Server kann in verschiedenen Szenarien verwendet werden. Beispiele dafür sind:
Vorhersage von Verkaufszahlen: Ein Machine-Learning-Modell wird trainiert, um die zukünftigen Verkaufszahlen eines Unternehmens vorherzusagen, indem historische Verkaufsdaten und andere relevante Faktoren wie Wetter, Feiertage und Werbekampagnen verwendet werden.
Anomalie-Erkennung: Anomalien in Daten wie Ausreißer oder ungewöhnliche Aktivitäten in einem Netzwerk erkennen.
Bilder automatisch kategorisieren oder beschriften, indem Beispielbilder und die entsprechenden Labels verwendet werden.
Texte automatisch kategorisieren oder klassifizieren, indem Beispieltexte und die entsprechenden Labels verwendet werden.
Emotionen in Texten erkennen, indem Beispieltexte und die entsprechenden Emotionen als Labels verwendet werden.
Wartungszeitpunkte von Geräten vorhersagen, indem historische Wartungsdaten und andere relevante Faktoren wie Betriebszeit, Fehlermeldungen und Umgebungsbedingungen verwendet werden.
Beispiel-Abfragen für die Möglichkeiten von MindsDB
Diese vielfältigen Szenarien sind durch die flexible Verwendung von SQL innerhalb von Modellen möglich. Ein Beispiel für die Syntax ist:
# Trainiere ein Modell mit dem Namen "housing_model" auf einer Tabelle namens "housing_data"
TRAIN MODEL housing_model ON housing_data
# Frage das Modell "housing_model" nach einer Vorhersage für das "price"-Attribut basierend auf den "sqft"- und "bedrooms"-Attributen
PREDICT price FROM housing_model WHERE sqft = 2000 AND bedrooms = 3
In diesem Beispiel wird zunächst ein Modell mit dem Namen „housing_model“ auf der Tabelle „housing_data“ trainiert. Anschließend wird das Modell verwendet, um eine Vorhersage für das „price"-Attribut basierend auf den Werten „sqft“ = 2000 und „bedrooms“ = 3 zu erhalten.
Ein weiteres Beispiel für die Verwendung von MindsDB ist:
# Erstelle eine Tabelle namens "sales_data" mit den Attributen "product", "region" und "sales"
CREATE TABLE sales_data (product VARCHAR, region VARCHAR, sales INT)
# Trainiere ein Modell mit dem Namen "sales_prediction" auf der Tabelle "sales_data"
TRAIN MODEL sales_prediction ON sales_data
# Frage das Modell "sales_prediction" nach einer Vorhersage für die "sales" basierend auf dem "product" und "region"
PREDICT sales FROM sales_prediction WHERE product = 'Shampoo' AND region = 'West'
In diesem Beispiel wird zunächst eine Tabelle namens „sales_data“ erstellt, welche die Attribute „product“, „region“ und „sales“ enthält. Dann werden Daten in die Tabelle eingefügt. Anschließend wird ein Modell mit dem Namen „sales_prediction“ auf dieser Tabelle trainiert. Schließlich wird das Modell verwendet, um eine Vorhersage für die „sales“ basierend auf dem „product“ = Shampoo und „region“ = West zu erhalten.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Die Beispiele zeigen die einfache Verwendung der Syntax, für das Erstellen von Analysen. Auf dem gleichen Weg lassen sich Abfragen auf Basis vorhandener Daten, zum Beispiel aus einer PostgreSQL-Datenbank erstellen:
# Verbinde mit einer PostgreSQL-Datenbank mit dem Namen "mydb" und dem Benutzernamen "myuser" und dem Passwort "mypassword"
CONNECT TO POSTGRESQL mydb USER myuser PASSWORD mypassword
# Frage die Tabelle "sales_data" aus der Datenbank "mydb" ab
SELECT * FROM mydb.sales_data
# Frage die Tabelle "sales_data" aus der Datenbank "mydb" nach allen Einträgen mit dem Wert "West" im Attribut "region" ab
SELECT * FROM mydb.sales_data WHERE region = 'West'
# Trainiere ein Modell mit dem Namen "sales_prediction" auf der Tabelle "sales_data" aus der Datenbank "mydb"
TRAIN MODEL sales_prediction ON mydb.sales_data
# Frage das Modell "sales_prediction" nach einer Vorhersage für die "sales" basierend auf dem "product" und "region"
PREDICT sales FROM sales_prediction WHERE product = 'Shampoo' AND region = 'West'
In diesem Beispiel wird zunächst eine Verbindung zu einer PostgreSQL-Datenbank mit dem Namen „mydb“ und dem Benutzernamen „myuser“ und dem Passwort „mypassword“ hergestellt. Dann werden Daten aus der Tabelle „sales_data“ in der Datenbank „mydb“ abgefragt, sowohl alle Einträge als auch diejenigen, die „West“ im Attribut „region“ enthalten. Anschließend wird ein Modell mit dem Namen „sales_prediction“ auf der Tabelle „sales_data“ aus der Datenbank „mydb“ trainiert. Schließlich wird das Modell verwendet, um eine Vorhersage für die „sales“ basierend auf dem „product“ = Shampoo und „region“ = West zu erhalten.