CrateDB

1. Was ist CrateDB?

Bei CrateDB handelt es sich um eine SQL-Datenbank aus dem Hause Crate.io. CrateDB ist auf das Internet der Dinge (IoT) ausgelegt. Anwendung findet das Datenbanksystem beispielsweise im Management von Maschinendaten und Sensordaten. Die Entwickler verfolgen einen Open-Source-Ansatz auf Basis der NoSQL-Architektur.

2. CrateDB im ├ťberblick

CrateDB ist als Produkt von Crate.io speziell f├╝r Data Stores zum Management von Sensor- und Maschinendaten gedacht. Crate.io begann seine Arbeit als Start-up und ist mit seinen B├╝ros inzwischen in Berlin, Dornbirn (├ľsterreich) und San Francisco (Kalifornien) ans├Ąssig. Die Open-Source-basierte SQL-Datenbank baut auf einer NoSQL-Architektur auf und ist auf die Verarbeitung gro├čer Mengen von Daten ausgelegt. Die Entwickler setzen auf schnelle Textsuchen und Analysen.

Das Angebot an NoSQL-Datenbanken ist gro├č, doch unterscheidet sich CrateDB durch seine Ausrichtung auf gro├če Maschinendatenmengen. Die Nachfrage nach dem Produkt stammt vorrangig aus der Industrie. CrateDB setzt insbesondere auf eine hohe Geschwindigkeit im Management der Datenbanken. Ebenso legen die Entwickler besonderen Wert auf ausgezeichnete Skalierbarkeit. Seit Gr├╝ndung im Jahr 2014 ist die Nachfrage laut Crate.io fortw├Ąhrend hoch, was sich anhand der steigenden Downloadzahlen zeigt. Die Entwickler betonen, dass CrateDB nicht nur SQL-Datenbanken ersetzt. Auch andere NoSQL Datenbanken wie MongoDB lassen sich durch Crate ersetzen, das sich durch Einfachheit und Benutzerfreundlichkeit auszeichnet.

Das Projekt ist im Jahr 2014 von Jodok Batlogg im ├Âsterreichischen Dornbirn ins Leben gerufen worden. Die erste Finanzierungsrunde fand im April 2014 statt. Weitere Runden folgten im M├Ąrz 2016 sowie im Januar 2017. Zu den Financiers geh├Ârten Dawn Capital, Speedinvest, Draper Esprit und Sunstone Capital.

3. Die Architektur von CrateDB

Die Architektur der Datenbank ist ihre Besonderheit. Es handelt sich um eine in der Programmiersprache Java geschriebene Open-Source-Datenbank, die mit SQL-Befehlen arbeitet, mit denen das Daten-Management vonstattengeht. Ungew├Âhnlich ist daher der NoSQL-Ansatz des Aufbaus der Datenbank. Der Aufbau integriert vollumf├Ąnglich durchsuchbare sowie dokumentenorientierte Data-Stores. Dies eignet sich beispielsweise f├╝r strukturierte Daten, semi-strukturierte Daten oder Geodaten.

Im Zusammenhang mit Crate kommt der von Presto stammende SQL Parser zum Einsatz. Dieser stellt eine von Facebook entworfene Analyse-Engine sowie verteilte Abfrage-Engine dar, die f├╝r das Management von Big Data zum Einsatz kommt. Die Datenbank bedient sich weiterhin des Transport-Protokolls sowie der Cluster-Erkennung der Suchmaschine Elasticsearch. Ebenso integriert die Datenbank die Programmbibliothek von Apache Lucene. Au├čerdem kommt das Client-Server-Framework Netty zum Einsatz, ein nicht-blockierendes, asynchrones Framework speziell zur Entwicklung von Java-Anwendungen im Netzwerk.

Crate.io entschied sich f├╝r den SQL-Ansatz, da es sich um eine der am weitesten verbreiteten Abfragesprachen unter Datenbank-Entwicklern handelt. Damit versprechen sich die Betreiber einen demokratischeren Ansatz als einige Wettbewerber unter vergleichbaren Datenbanken.

Mitte 2018 k├╝ndigten die Entwickler von Crate.io eine spezielle Machine Data Platform an, mit der sich Maschinendaten noch schneller bearbeiten lassen. Es handelt sich um einen Cloud-Native-Stack. Die Verf├╝gbarkeit der Plattform wird als gehostete L├Âsung via Microsoft Azure sowie alternativ als On-Premise-Modell gew├Ąhrleistet.

Die Zeitersparnis wird realisiert durch eine Vereinfachung des bis dato zeitintensiven Aufbaus der Sensorenanbindungen. Auch der Betrieb des Echtzeit-Datenmanagement-Systems wird vereinfacht. Unternehmen sollen auf diese Weise einen deutlichen zeitlichen Vorteil gewinnen. Sowohl Zeit als auch Kosten, die beim Aufbau der technischen Infrastruktur anfallen, sollen entfallen. Insbesondere kommerzielle Anbieter von IoT-Plattformen sollen auf diese Weise dabei unterst├╝tzt werden, ihre Produkte und L├Âsungen schneller entwickeln und auf den Markt bringen zu k├Ânnen.

Die Crate Machine Data Platform verf├╝gt ├╝ber eine Reihe von Funktionen. Die in Hochgeschwindigkeit erfolgende Daten├╝bermittlung erm├Âglicht es, pro Minute mehrere Millionen Datenpunkte (SQL, JSON oder MQTT) in die Plattform zu laden. Dies funktioniert unabh├Ąngig von der Datenstruktur. Auch aufw├Ąndigere Objekte mit komplexen Arrays sind ├╝ber den skalierbaren Service in Hochgeschwindigkeit ├ťbermittelbar.

Eine weitere wichtige Funktion betrifft die Datenanreicherung. Die rohen Daten gelangen in die Plattform, bevor sie ├╝ber eine vom Benutzer zu definierende Logik konvertiert werden. Auf diese Weise ist gew├Ąhrleistet, dass in Echtzeit ein konvertierter und bereinigter Datensatz zur Verf├╝gung steht. Dieser ist mit bestimmten berechneten Werten und Summen angereichert. Auch die Analyse der Daten erfolgt in Echtzeit. Im Zusammenspiel mit der Data Platform lassen sich mit CrateDB in Echtzeit Textsuchen, Zeitreihen sowie Analysen von Maschinendaten durchf├╝hren. Ebenfalls unterst├╝tzt die Plattform die Visualisierung der Daten. Verschiedene Visualisierungs-Softwares lassen sich in der Plattform hosten und skalieren, darunter Grafana, Klimt oder beliebige andere L├Âsungen. Weiterhin lassen sich verschiedene operationale Alarme nach benutzerdefinierten Regeln einrichten. Auf Basis dieser Regeln lassen sich Workflows initiieren, die unmittelbar zur Verbesserung der betrieblichen Effizienz beitragen.

Die Daten-Plattform verf├╝gt weiterhin ├╝ber eine Auswahl an Administrationsfunktionen. Administratoren haben die M├Âglichkeit, die Plattform zu skalieren und zu orchestrieren. Die Data Plattform hat eine Clous-native Microservice-Architektur als Basis. Diese l├Ąsst sich ├╝ber ein Kubernetes-System verwalten und sichern.

Die Verf├╝gbarkeit der Daten wird durch regelm├Ą├čige Back-ups sichergestellt. Hierzu bedient sich die Data Plattform dem Konzept der inkrementellen Datensicherung. Dies erfolgt automatisch und die Daten lassen sich wiederherstellen.

Eine weitere administrative Funktion betrifft die Aufgaben der Daten-Archivierung. Aufgrund der Tatsache des Data-Agings, also der Veraltung von Daten, nimmt ihre Relevanz in Echtzeit-Systemen immer weiter ab. Aufgrund dessen kann die Data Plattform daf├╝r sorgen, dass Daten automatisiert in kosteng├╝nstigeren Speichern archiviert werden. Das archivierte Datenmaterial l├Ąsst sich jederzeit mit wenigen Handgriffen wiederherstellen, wenn etwa neue Analysen mit historischen Datens├Ątzen gefragt sind.

Die Zug├Ąnge zur Daten-Plattform lassen sich vollst├Ąndig in Echtzeit nachvollziehen und pr├╝fen. Zu diesem Zweck kommen die Techniken des Monitorings und Loggings zum Einsatz.

Die Datensicherheit wird durch Verschl├╝sselungen gew├Ąhrleistet. Die Data Plattform h├Ąlt eine Zugangskontrolle bereit, die bei jedem Zugriff eine Authentifizierung erfordert.

Die Daten-Plattform istn gruds├Ątzlich seit Dezember 2016 allgemein verf├╝gbar. Zu dieser Zeit erschien CrateDB 1.0, das bereits einige zentrale Funktionen beinhaltet. Dazu geh├Âren Outer Joins sowie Subselects und Schnittstellen f├╝r Metadaten und Schemadaten. Die Entwickler von Crate.io unterst├╝tzen den Installationsprozess sowie die Konfiguration durch eine umfangreiche Dokumentation auf der Internetseite.

Im Hinblick auf die Support-Levels arbeitet Crate.io mit verschiedenartigen Preismodellen. Preisinformationen erhalten Support-Interessenten im direkten Kontakt mit Crate.io. Die Daten-Plattform von CrateDB l├Ąsst sich vollst├Ąndig kostenlos auf der Internetseite herunterladen. Die Plattform findet Unterst├╝tzung auf den g├Ąngigen lokalen Betriebssystemen von Microsoft Windows, Mac OS X sowie Linux (darunter auch Arch Linux und Ubuntu).

Unabh├Ąngig von der Installation auf einem lokalen Rechner k├Ânnen Anwender auch eine Cloud-Plattform nutzen. Unter anderem finden Microsoft Azure, Amazon Web Service sowie IBM SoftLayer Unterst├╝tzung. Ebenso ist es m├Âglich, CrateDB in Form eines Images in einen Container einzusetzen.

Die j├╝ngste Produktgeneration 3.0 basiert auf Lucene 7.1.0 sowie Elasticsearch 6.1.4. Zu h├Âherer Flexibilit├Ąt und Leistungsf├Ąhigkeit tragen neue Algorithmen sowie eine Verbesserung des SQL-Sprachumfangs bei. Dank Algorithmen wie Hash-Joins sowie HyperLogLog soll eine um das 200-fache beschleunigte Query-Performance m├Âglich sein. Zu den Neuerungen geh├Âren weiterhin optimierte Sicherheitsoptionen. Dazu geh├Âren verbesserte Nutzerverwaltung und Zugangskontrollen. Die Version 3.0 bietet weiterhin Unterst├╝tzung f├╝r Virtual Tables sowie Sub-Queries. Zur Vereinfachung der Datenbank tr├Ągt der Sharding Visualizer bei.

Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte