Definition Was ist Logica?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Logica ist eine von Google entwickelte, frei verfügbare Open-Source-Programmiersprache. Die deklarative, logische Programmiersprache ist für Datenverarbeitungs- und -manipulationsaufgaben vorgesehen und kompiliert zu SQL. Sie lässt sich beispielsweise zum Erstellen von komplexen Abfragen für Googles Cloud Data Warehouse BigQuery verwenden. Die Software steht unter Apache-2.0-Lizenz.

Firmen zum Thema

(Bild: © aga7ta - stock.adobe.com)

Logica ist der Name einer von Google entwickelten und 2021 für die Allgemeinheit als Open-Source-Software bereitgestellten Programmiersprache. Sie steht unter Apache-2.0-Lizenz und ist für den Einsatz in der Datenverarbeitung und Datenmanipulation vorgesehen.

Der Name Logica leitet sich von „Logic with aggregation“ ab. Die logische, deklarative Programmiersprache ist Nachfolger der ebenfalls von Google entwickelten Programmiersprache Yedalog und beispielsweise zum Erstellen von Abfragen für Googles Cloud Data Warehouse BigQuery nutzbar. Logica kompiliert zu Standard-SQL. PostgreSQL und SQLite werden experimentell unterstützt. Die Programmiersprache richtet sich an Datenspezialisten, Datenwissenschaftler und Programmierer, die eine logische, deklarative Sprache für das Erstellen von Datenabfragen oder Daten-Pipelines benötigen.

Im Vergleich zu der SQL-Syntax bietet Logica eine besser Lesbarkeit und ist einfacher im Big-Data-Umfeld einsetzbar. Für die Ausführung von Logica-Programmen in BigQuery ist ein Google Cloud Project notwendig. Für lokale Anwendungen benötigt Logica Python 3. Installieren lässt sich Logica beispielsweise über das Paketverwaltungsprogramm pip für Python-Pakete aus dem Python Package Index.

Motivation und Ziele der Entwicklung von Logica

SQL hat sich als Standard für Datenabfragen und Datenmanipulationen etabliert. Die Datenmanipulationssprache bietet Zugriff auf relationale Datenbankmanagementsysteme und ist auch für Anwender ohne tieferes Programmier- oder Mathematik-Know-how nutzbar. Allerdings eignet sich SQL weniger gut, sobald komplexe, logische Ausdrücke zur Datenverarbeitung erstellt werden sollen. SQL-Abfragen sind dann im Vergleich zu logischen Programmcodes nur noch schwer lesbar. Zudem muss die SQL-Codebasis aufwendig gewartet werden. Google hat Logica mit der Zielsetzung entwickelt, für diese Problematik eine Lösung zu bieten.

Logica soll das Erstellen und Verwenden komplexer Datenverarbeitungsausdrücke erleichtern, indem eine klassische logische Syntax und Aggregationsmöglichkeiten bereitgestellt werden. Die Programmiersprache besitzt Mechanismen zur Abstraktion, die in SQL fehlen. Zudem erleichtert Logica die Verarbeitung langer Wortketten. Mit Logica lassen sich verständliche und kompakte Logikelemente erstellen, die sich in Paketen organisieren und mehrfach verwenden lassen. Darüber hinaus ist Logica für den Einsatz im Big-Data-Umfeld optimiert und beispielsweise direkt im Zusammenspiel mit Googles Cloud Data Warehouse BigQuery nutzbar. Neben Standard-SQL möchte Google mit Logica zukünftig weitere SQL-Dialekte und Daten-Engines unterstützen.

Logica und Googles Cloud Data Warehouse BigQuery

Mit BigQuery stellt Google ein Cloud Data Warehouse zur Verfügung, das sich durch eine sehr schnelle und performante Ausführung von SQL-Abfragen auszeichnet und für Datenanalysen bis in den Petabyte-Bereich einsetzbar ist. BigQuery ist ein Cloud-Service (Software as a Service – SaaS), der auf der Google-Infrastruktur bereitgestellt wird, der serverlos arbeitet und den Google vollständig verwaltet. Anwender benötigen keine eigene Hard- oder Softwareressourcen wie Speicher- oder Computing-Ressourcen, um BigQuery zu verwenden. BigQuery unterstützt Abfragen mit ANSI SQL und integriert Verfahren des Machine Learnings. Der Zugriff auf BigQuery ist über die Cloud-Konsole, ein Befehlszeilentool oder über eine REST-basierte Programmierschnittstelle (API) möglich. Abfragen müssen authentifiziert sein. Die Programmiersprache Logica lässt sich direkt für BigQuery einsetzen. Für die Ausführung von Logica-Programmen in BigQuery ist ein Google Cloud Project notwendig.

Vorteile der Programmiersprache Logica

Gegenüber einer Verwendung von reinem SQL für Datenabfragen oder Datenmanipulationen bietet die Programmiersprache Logica zahlreiche Vorteile. Mit Logica lassen sich komplexe Ausdrücke erstellen, ohne dass die Lesbarkeit wie bei SQL darunter leidet. Die mit Logica erstellten Programmelemente sind als kompakte Logikelemente für unterschiedliche Datenverarbeitungsvorgänge wiederverwendbar. Darüber hinaus unterstützt Logica Module und Importe und ist zusammen mit interaktiven Python-Notebooks einsetzbar. Im Vergleich zu Standard-SQL ist Logica für die Nutzung im Big-Data-Umfeld optimiert. Logica ist für Datenanalysen bis in den Petabyte-Bereich nutzbar. Dank direktem Zusammenspiel mit Googles Cloud Data Warehouse BigQuery lassen sich viele Datenverarbeitungsaufgaben vereinfachen und mit hoher Performance ausführen.

Die Software steht unter Open-Source-Lizenz Apache 2.0 und ist frei verfügbar. Sie lässt sich ohne großen Aufwand lokal beispielsweise über das Paketverwaltungsprogramm pip für Python-Pakete aus dem Python Package Index installieren. Zur Verwendung der Programmiersprache wird lediglich Python ab Version 3 benötigt. Weitere Vorteile bieten die bereitgestellten Mechanismen zur Abstraktion von Ausdrücken, die in SQL fehlen. Darüber hinaus ist mit Logica beispielsweise die Verarbeitung langer Wortketten vereinfacht. Neben der Unterstützung von Standard-SQL bietet Google experimentelle Unterstützung von PostgreSQL und SQLite.

(ID:47484940)