Datenbank: Jupyter erhält einen SQLite-Kernel

Die einbettbare Datenbankbibliothek SQLite erhält künftig Unterstützung vom Open-Source-Projekt Jupyter in Form eines eigenen Kernels.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen
Datenbank: SQLite erhält einen Jupyter Kernel
Update
Lesezeit: 3 Min.
Von
  • Silke Hahn

Die unter anderem für Jupyter Notebooks zuständige Non-Profit-Organisation stellt der einbettbaren Datenbankbibliothek SQLite ab sofort einen Jupyter-Kernel zur Verfügung. Der Kernel soll es SQLite-Entwicklern erlauben, in Jupyter Notebooks die komplette SQLite-Syntax und das Visualisieren von Daten in der durch Jupyter etablierten Form zu erledigen.

SQLite ist eine in der Programmiersprache C geschriebene SQL-Datenbank-Engine. Der Quellcode zu SQLite ist öffentlich und steht zur freien Verwendung bereit. Dateien im SQLite-Format werden offenbar besonders häufig zum Datentransfer zwischen unterschiedlichen Systemen eingesetzt und als Format zum langfristigen Archivieren von Daten – das Entwicklerteam hinter SQLite verspricht auf der Projekt-Homepage, die Abwärtskompatibilität mindestens bis 2050 aufrechtzuerhalten.

Bei Jupyter standen ursprünglich die drei Programmiersprachen Julia, Python und R im Zentrum (woher übrigens auch der Projektname stammt, Ju-Pyt-eR). Inzwischen unterstützt das Projekt über die Jupyter-Kernels auch zahlreiche weitere Sprachen wie C, C#, Java, JavaScript, PHP, Ruby, Scala und Swift – und steuert nun für SQLite einen neuen Kernel bei. Das Entwicklerteam hat laut Release Notes die Bibliothek Xeus eingesetzt, um das Jupyter-Kernel-Protokoll einzubinden. Für sprachspezifische Besonderheiten und um eine Brücke zwischen C und C++ zu schlagen, griff das Team offenbar auf die Bibliothek SQLiteCpp zurück.

xeus-SQLite führt in einem Jupyter Notebook verschiedene Kommandos aus

(Bild: jupyter.org)

Das Projekt ist Open Source und bietet mit den Anwendungen Jupyter Notebooks, Lab, Kernels und Hub ein Portfolio von Produkten an, in denen sich Texte, Links, Bilder und Videos sowie Code-Listings samt ihrer Ausführung häppchenweise präsentieren lassen. Am bekanntesten dürften weiterhin die Jupyter Notebooks sein, die in der Data-Science-Community entstanden sind. Ihre Bezeichnung stellt offenbar auch eine Hommage an die Notizbücher Galileo Galileis über die astronomische Entdeckung der Jupiter-Monde dar.

Jupyter Notebooks lassen sich in diversen Formaten teilen, aber auch in ein GitHub-Repository exportieren, wo der Code dann gemeinsam von mehreren Entwicklern weiterbearbeitet werden kann. Bei komplexeren Projekten bieten sich Docker-Container als zusätzliche Strukturhelfer an. Die Notebooks sind auch in der Cloud betreibbar, indem sie zum Beispiel über Binder online ausgeführt werden. Insbesondere für Tutorials und Trainings bei Webinaren hat diese Variante sich als nützlich erwiesen, da Teilnehmer keine spezielle Entwicklungsumgebung vorab lokal installieren müssen, um Codebeispiele des Trainers aktiv nachzuvollziehen.

SQLite: Ergebnis einer Anfrage in Jupyter Notebook, visualisiert mit dazugehörigem Balkendiagramm und Tabelle

(Bild: Jupyter.org)

Mehr Informationen zum aktuellen Kernel-Release für SQLite in Jupyter lassen sich den Release Notes entnehmen. Interessierte finden weitere Hinweise auch auf der Seite von SQLite. Zum aktuellen Stand der Entwicklung bietet die Dokumentation der SQLite-Entwickler Aufschluss. Darin gibt es bereits einen kleinen Ausblick auf geplante Neuerungen: Bei xeus-SQLite soll künftig die Datenvisualisierung im Fokus stehen.

[Update vom 16.06.2020: Formulierung im ersten Absatz zur Funktion des neuen Kernel präzisiert]

(sih)