Crate.io

Datenbasis für das IoT-Zeitalter

| Autor / Redakteur: Ariane Rüdiger / Nico Litzel

Die Crate.io-Gründer Christian Lutz (links) und Jodogg Bartlog machen die unterschiedlichsten Daten mit SQL durchsuchbar.
Die Crate.io-Gründer Christian Lutz (links) und Jodogg Bartlog machen die unterschiedlichsten Daten mit SQL durchsuchbar. (Bild: Crate.io)

IT-Spezialisten haben über Jahrzehnte SQL-Know-how aufgebaut, doch das IoT-Zeitalter erfordert die massenweise Verarbeitung von Echtzeit-Datenstreams, die von Sensoren erzeugt werden. Crate.io vereinigt beide Welten.

Milliarden von Sensoren werden in Zukunft an der Peripherie von IT-Infrastrukturen Daten erzeugen. Von der sinnvollen Verarbeitung dieser Datenmassen hängt es ab, wie weit sich die gewonnenen Daten in aktuelle Steuerimpulse für Maschinen oder langfristig bedeutende handlungsleitende Erkenntnisse umsetzen lassen.

Doch dazu bedarf es anderer Datenbank-Technologien als das bisher so erfolgreiche und weit verbreitete SQL. Allerdings muss sich das Wissen in Sachen No-SQL erst verbreiten. Am besten wäre es aus Sicht der Industrie sicher, wenn das vorhandene SQL-Know-how auch auf Basis neuer Technologien in tieferen Schichten des Verarbeitungsstapels weiter genutzt werden könnte.

Um das zu ermöglichen, bohren klassische Lösungsanbieter für die betriebliche Datenverarbeitung wie Oracle, SAP oder Teradata ihre Applikationen und Lösungen jetzt auf. Ziel der Erweiterungen ist erstens der Einschluss neuer Datentypen und zweitens, etwa bei SAP HANA, die Erweiterung der Speicherkapazität, um mehr Daten In-Memory verarbeiten zu können.

Nachteil Kosten

Diese Herangehensweise hat allerdings den Nachteil, dass dafür meist teure und proprietäre Hardware bzw. teure Cloud-Instanzen vonnöten sind. Daher haben sich im Lauf der Jahre neue Anbieter auf den Weg gemacht, die versuchen, dem Problem mit häufig quelloffenen Cloud-native-Lösungen entgegenzutreten, um die Vorteile von vergleichsweise kostengünstigen Cloud-Servern zu nutzen.

Als Streaming-Engines haben sich beispielsweise Kafka, Flink oder RabbitMQ etabliert. Elastic, Mongo und andere verwenden proprietäre No-SQL-Sprachen für die Abfrage und wenden diese auch auf Streaming-Daten an. Teilweise wird SQL-ähnliche Syntax verwendet, aber ANSI-SQL-Konformität erreichen diese Ansätze nicht, man muss also immer eine eigene Sprache dafür lernen.

Crate.io – die eierlegende Wollmilchsau

Im Bayerischen bezeichnet der satirische Begriff „eierlegende Wollmilchsau“ ein Kunstprodukt, das Bestandteile eigentlich unvereinbarer Wesen (oder Welten) zusammenbringt. Genau das versucht seit 2013 Crate.io. Das Unternehmen mit Stammsitz im österreichischen Dornbirn und in Berlin brachte bis 2016 ausschließlich Open-Source-Varianten seiner Lösung. Es beschäftigt 40 Mitarbeiter und entwickelt ausschließlich in der DACH-Region.

2017 kam das erste Enterprise-Produkt, CrateDB. Inzwischen gehört auch eine Cloud-Variante zum Portfolio. CrateDB Cloud läuft derzeit auf Azure und ist dort mit den IoT-Diensten von Azure integriert. Die Crate-IoT-Data-Plattform, basierend auf der CrateDB, eignet sich für Bereiche wie Produktion, Materialdosierung, Maschinensteuerung, Qualitätssicherung und so weiter.

Wie macht Crate.io das? Prinzipiell bietet CrateDB eine ANSI-SQL-kompatible Schnittstelle mit den Vorteilen von NoSQL und verbindet damit Streaming-Engines und andere Datenquellen sowie aufgelagerte Anwendungen. Für das Hardwaredesign verwendet Crate.io eine Shared-Nothing-Architektur, in der jeder Knoten in sich vollständig ist und alle Knoten gleich sind. Schließlich verwendet Crate.io ein innovatives Verfahren zur Datenreduktion.

Technische Details: SQL-Schicht

Die SQL-Schicht realisiert derzeit etwa 70 Prozent der SQL-Funktionen, 100 Prozent werden nicht angestrebt. Lutz: „Wir sind nicht transaktionsorientiert und wollen keine ACID-Funktionalität. Wir fokussieren uns auf massenweise eintreffende Echtzeit-Daten, die wir hochparallel in Echtzeit (Millisekunden) verarbeiten.“ Die unterlegte Storage-Datenbank-Engine ist Lucene, dieselbe, die auch Elastic nutzt.

In die Datenbasis aufgenommen werden aber nicht nur mit Flink oder Kafka eingestreamte Daten, sondern auch klassische SQL-Datenquellen. Dabei erlaubt CrateDB die Kombination vieler Datentypen in einer Lösung: JSON-Dokumente, relationale Daten, Time-Series, geospatiale und auch binäre BLOBs. Lutz: „In der Regel ersetzen wir zwei oder drei Datenbanken.“ Nach „oben“ funktionieren die bisher entwickelten Applikationen und Schnittstellen weiter, als handele es sich um ein klassisches SQL-Produkt.

So können die die über Jahrzehnte entwickelten SQL-basierten Lösungen und Abfragemodule teils weiterverwendet werden. Auf jeden Fall aber lässt sich ein Gesamtsystem schneller und einfacher für die neue Datenvielfalt anpassen als mit einer nur SQL-teilkonformen Lösung. Schulungsaufwand für das Training in No-SQL-Technologien entfällt.

Cloud-unabhängig und platzsparend.

Zweitens wurde CrateDB so entwickelt, dass die Datenbank on-premises, am Edge und auf beliebigen Cloud-Plattformen läuft. Das, so CEO Lutz, gefalle besonders Großunternehmen. Viele von ihnen fahren ohnehin Multicloud-Strategien, um Lock-ins zu vermeiden. Am weitesten gediehen ist die Kooperation mit Microsoft Azure – hier gibt es ein Co-Sales-Agreement. Dazu sollen bald weitere Varianten kommen. Relevant sind da vor allem AWS, Google und auch Alibaba.

Durch spaltenorientierte Speicherung mit Columnar-Caching-Technologie ist CrateDB nahe an Geschwindigkeiten von In-Memory-Datenbanken, kann aber gleichzeitig praktisch unlimitiert auf Disk (SSD am besten) kostengünstig speichern. Gleichzeitig werden die Daten, ähnlich wie bei der Deduplizierung, stark reduziert. Lutz: „In Messreihen mit Millionen von Werten kommen meist nur einige Tausend unterschiedliche Werte vor, die dafür aber vielfach. Wir speichern einen Wert im Arbeitsspeicher nur, wenn er neu ist. Erst wenn das Abfrage-Ergebnis ausgeliefert wird, greifen wir auf die SSD als Massenspeicher zurück und ergänzen die komplette Datenreihe.“

Zusammen mit der Shared-Nothing-Architektur ergibt dieses Verfahren nahezu lineare, nach oben offene Leistungsskalierung bei sehr hoher Geschwindigkeit. Ein billiger Server etwa schafft damit bis zu 40.000 Anfragen pro Sekunde. Die spärliche Kommunikation zwischen den Knoten wird über das Protokoll Netty abgewickelt.

Zukunftspläne 2019

Inzwischen sind weltweit rund 1.200 Crate.io-Cluster (mit mindestens drei Knoten) installiert. Je ein Drittel befinden sich in USA, Europa und Asien. Wichtige Kunden sind beispielsweise der Plastikverpackungsproduzent Alpla, die SAP-Tochter Qualtrics, der Industriebeleuchtungs-Spezialist Zumtobel oder McAfee, der bislang größte Abnehmer. 2019 soll sich der Umsatz mit dem Enterprise-Produkt nach Verdopplung 2018 noch einmal verdreifachen.

Und auch neue Funktionen sind geplant. Sie richten sich vor allem an Datenanalysten, die Crate gern verwenden. „Wir wollen Standardfunktionen für maschinelles Lernen direkt in die Plattform installieren“, sagt Lutz.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 45686916 / Infrastruktur)