Google məntiq proqramlaşdırma dili Logica nəşr edir

Google, verilənlərin manipulyasiyası və proqramların SQL-ə tərcüməsi üçün nəzərdə tutulmuş yeni deklarativ məntiq proqramlaşdırma dili Logica-nı təqdim etdi. Yeni dil verilənlər bazası sorğularını yazarkən məntiqi proqramlaşdırma sintaksisindən istifadə etmək istəyənlər üçün nəzərdə tutulub. Hal-hazırda, əldə edilən SQL kodu Google BigQuery yaddaşında və ya dəstəyi hələ də eksperimental olan PostgreSQL və SQLite DBMS-lərdə icra edilə bilər. Gələcəkdə dəstəklənən SQL dialektlərinin sayının genişləndirilməsi planlaşdırılır. Layihə kodu Python-da yazılmış və Apache 2.0 lisenziyası altında nəşr edilmişdir.

Logica Google tərəfindən hazırlanmış başqa bir məlumat emalı dili olan Yedalog-un inkişafını davam etdirir və standart SQL-də mövcud olmayan abstraksiya səviyyəsini təmin edir. Logica-da sorğular məntiqi ifadələr toplusu şəklində proqramlaşdırılır. Interaktiv Jupyter Notebook qabığından modulları, idxalı və Logica-dan istifadə etmək qabiliyyətini dəstəkləyir. Məsələn, 2020-ci il üçün xəbərlərdə ən çox adı çəkilən şəxslərin xülasəsini yaratmaq üçün GDELT verilənlər bazasına daxil olmaq üçün aşağıdakı Logica proqramından istifadə edə bilərsiniz: @OrderBy(Adlar, “qeyd edir desc”); @Limit(Qeydlər, 10); Qeydlər(şəxs:, qeyd edir? += 1) fərqli :- gdelt-bq.gdeltv2.gkg(şəxslər:, tarix:), Substr(ToString(tarix), 0, 4) == “2020”, the_persons == Split (şəxslər, ";"), şəxslərdəki şəxs; $ logica mentions.l run Qeydlər +—————-+—————-+ | şəxs | qeyd_sayı | +—————-+——————-+ | donald trump | 3077130 | | los angeles | 1078412 | | joe biden | 1054827 | | George Floyd | 872919 | | boris Johnson | 674786 | | Barak Obama | 438181 | | vladimir putin | 410587 | | bernie sanders | 387383 | | andrew cuomo | 345462 | | las vegas | 325487 | +—————-+—————-+

SQL-də mürəkkəb sorğuların yazılması başa düşülən, sorğunun hissələrinin təkrar istifadəsinə mane olan və texniki xidməti çətinləşdirən çətin çoxsətirli zəncirlərin yazılması ehtiyacına gətirib çıxarır. Tipik təkrarlanan hesablamalar üçün SQL görünüş və funksiyalardan istifadə edə bilər, lakin onlar idxal əməliyyatlarını dəstəkləmir və yüksək səviyyəli dillərin çevikliyini təmin etmir (məsələn, funksiyanı funksiyaya ötürə bilməzsiniz). Logica sizə kiçik, başa düşülən və təkrar istifadə edilə bilən məntiqi bloklardan sınana bilən, xüsusi adlarla əlaqələndirilə bilən və digər layihələrin bir hissəsi kimi istifadə oluna bilən paketlərdə qruplaşdırıla bilən proqramlar tərtib etməyə imkan verir.

Mənbə: opennet.ru

Добавить комментарий