Google publie le langage de programmation logique Logica

Google a lancĂ© Logica, un nouveau langage de programmation logique dĂ©claratif, conçu pour la manipulation de donnĂ©es et la traduction de programmes en SQL. Ce nouveau langage s'adresse Ă  ceux qui souhaitent utiliser la syntaxe de programmation logique pour Ă©crire des requĂȘtes dans la base de donnĂ©es. Actuellement, le code SQL obtenu peut ĂȘtre exĂ©cutĂ© dans le stockage Google BigQuery ou dans les SGBD PostgreSQL et SQLite, dont la prise en charge est encore expĂ©rimentale. Il est prĂ©vu d'Ă©tendre ultĂ©rieurement le nombre de dialectes SQL pris en charge. Le code du projet est Ă©crit en Python et publiĂ© sous licence Apache 2.0.

Logica s'appuie sur Yedalog, un autre langage de traitement de donnĂ©es dĂ©veloppĂ© par Google, et offre un niveau d'abstraction indisponible en SQL natif. Les requĂȘtes dans Logica sont programmĂ©es sous forme d'un ensemble d'instructions logiques. Il prend en charge les modules, les opĂ©rations d'importation et la possibilitĂ© d'utiliser Logica depuis le shell interactif Jupyter Notebook. Par exemple, pour gĂ©nĂ©rer un rĂ©sumĂ© des personnes les plus frĂ©quemment mentionnĂ©es dans l'actualitĂ© en 2020, vous pouvez utiliser le programme Logica suivant pour accĂ©der Ă  la base de donnĂ©es GDELT : @OrderBy(Mentions, "mentions desc"); @Limit(Mentions, 10); Mentions(person:, mentions? += 1) distinct :- gdelt-bq.gdeltv2.gkg(persons:, date:), Substr(ToString(date), 0, 4) == "2020", the_persons == Split(persons, ";"), person in the_persons; $ logica mentions.l run Mentions +—————-+—————-+ | personne | nombre_mentions | +—————-+—————-+ | Donald Trump | 3077130 | | Los Angeles | 1078412 | | Joe Biden | 1054827 | | George Floyd | 872919 | | Boris Johnson | 674786 | | Barack Obama | 438181 | | Vladimir Poutine | 410587 | | Bernie Sanders | 387383 | | Andrew Cuomo | 345462 | | Las Vegas | 325487 | +—————-+—————-+

L'Ă©criture de requĂȘtes complexes en SQL nĂ©cessite l'Ă©criture de chaĂźnes multilignes complexes, peu comprĂ©hensibles, qui entravent la rĂ©utilisation de certaines parties de la requĂȘte et compliquent la maintenance. Pour les calculs rĂ©pĂ©titifs courants en SQL, vous pouvez utiliser des vues et des fonctions, mais elles ne prennent pas en charge les opĂ©rations d'importation et n'offrent pas la flexibilitĂ© inhĂ©rente aux langages de haut niveau (par exemple, vous ne pouvez pas passer une fonction Ă  une autre). Logica vous permet de composer des programmes Ă  partir de petits blocs logiques comprĂ©hensibles et rĂ©utilisables, qui peuvent ĂȘtre testĂ©s, associĂ©s Ă  des noms spĂ©cifiques et regroupĂ©s dans des packages utilisables dans d'autres projets.

Source: opennet.ru

Achetez un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Achetez un hĂ©bergement web fiable avec protection DDoS, serveurs VPS et VDS | ProHoster