Google Logica moet leiden tot meer beheersbare SQL

Abonneer je gratis op Techzine!

Onderzoekers van Google hebben een nieuwe open-source logische programmeertaal, niet geheel toevallig Logica genoemd. Daarmee krijgt Structured Query Language (SQL) meer een logische structuur dan de huidige bestaande structuur. Dit moet het kunnen beheersen en vooral onderhouden van SQL voor vooral grote datasets ten goede komen.

SQL is niet meest handige programmeertaal om queries en pipelines te schrijven voor grote datasets. De programmeertaal is, volgens Google softwarespecialisten Konstantin Tretyakov en Evgeny Skvortsov, niet echt een voorbeeld van een taal die logisch is opgebouwd. Volgens hen is goed kunnen programmeren een kwestie van het maken van kleine, begrijpbare en herbruikbare stukjes van logische code. Deze stukjes logische code kunnen worden getest, benoemd en in pakketjes worden georganiseerd om hiermee de meest betrouwbare stukken logica te fabriceren.

SQL is een taal die volgens de softwarespecialisten dit allemaal niet doet. Wanneer SQL op grote schaal wordt gebruikt, kan dit zelfs leiden tot ongestructureerde, onbeheersbare en onderhoudbare code voor databases. SQL is meer dat logische hapklare brokjes code leiden tot ‘gekunstelde’ langdradige zoekvragen en copy-paste stukjes code. Uiteindelijk worden dit niet meer te onderhouden en ongestructureerde SQL-codebases.

Nieuwe logische programmeertaal

Voor Tretyakov en Skvortsov was dit de reden een nieuwe open-source logische programmeertaal te ontwikkelen; niet geheel toevallig Logica genoemd. Deze programmeertaal kan worden gebruikt om database-interacties te maken die de syntax van wiskundige propositionele logica gebruiken. Dit in plaats van de kettingen Engelse woorden waaruit SQL bestaat. Logica is compacter en ondersteunt schone en herbruikbare abstractiemechanismen die SQL ontberen. Hierdoor is SQL dus straks makkelijker te onderhouden en te beheersen, zo stellen de softwarespecialisten.

Geschikt voor Big Query

Logica is vooral geschikt voor engineers, data scientists en andere specialisten. Logica moet uiteindelijk naar SQL compilen, zodat het bijvoorbeeld ook voor Google’s SaaS-oplossing voor het analyseren van grote datasets Big Query kan worden gebruikt. De programmeertaal voor SQL-toepassingen kan ook lokaal draaien en maakt SQL ‘draagbaar’. Ook biedt het alvast experimentele ondersteuning voor PostgreSQL and SQLite.

Opvolger Yedalog

Naast een betere voorbereider voor SQL wordt Logica ook als de opvolger van de Google-taal Yedalog gezien. Yedalog is een Datalog-achtige taal die Google ooit intern heeft ontwikkeld. Deze taal diende als een tool voor het bevragen van grote, semigestructureerde data sets. Wat Logica als opvolger van deze laatste taal moet gaan doen, is nog niet helemaal duidelijk. Maar het opbreken van code in meer beheersbare stukjes, vormt daar een onderdeel van.

Tip: Google BigQuery data warehouse-update versnelt analysetijd