Lansarea InterSystems IRIS 2020.1

Lansarea InterSystems IRIS 2020.1

La sfârșitul lunii martie a fost lansată a fost lansată o nouă versiune a platformei de date InterSystems IRIS 2020.1. Chiar și pandemia de coronavirus nu a împiedicat lansarea.

Printre noutățile importante din noul release se numără îmbunătățirea performanței nucleului, generarea aplicațiilor REST conform specificației OpenAPI 2.0, sharding pentru obiecte, un nou tip de Portal de Management, suport pentru MQTT, un cache universal pentru cereri, un nou cadru pentru crearea elementelor de producție în Java sau .NET. Lista completă a schimbărilor și Upgrade Checklist-ul în limba engleză pot fi găsite la linkul. Detalii mai jos.

InterSystems IRIS 2020.1 este un release cu suport extins. InterSystems livrează două tipuri de release-uri pentru InterSystems IRIS:

  • Release-uri de livrare continuă. Apare de trei până la patru ori pe an sub formă de imagini Docker. Acestea sunt destinate dezvoltării aplicațiilor și desfășurării în cloud sau containere Docker.
  • Release-uri cu suport extins. Apare mai rar, dar pentru acestea se emit release-uri de corecturi. Acestea sunt disponibile pe toate platformele suportate de InterSystems IRIS.

Între release-urile cu suport extins 2019.1 și 2020.1, au fost emise doar release-uri sub formă de imagini Docker – 2019.2, 2019.3, 2019.4. Toate funcțiile noi și corecturile din aceste release-uri au fost incluse în 2020.1. Anumite caracteristici enumerate mai jos au apărut pentru prima dată în unul dintre release-urile 2019.2, 2019.3, 2019.4.

Așadar.

Dezvoltarea aplicațiilor REST conform specificației

În plus față de InterSystems API Manager, suportat din versiunea 2019.1.1, în release-ul 2020.1 a apărut posibilitatea de a genera scheletul codului pentru un serviciu REST conform specificației în format OpenAPI 2.0. Detalii pot fi găsite în secțiunea de documentație 'Creating REST Services».

Conversia instalării Caché sau Ensemble

Acest release permite conversia unei instalări Caché sau Ensemble în InterSystems IRIS la instalare. Conversia în sine poate necesita modificări în codul sursă, setări sau alte scripturi, dar în cele mai multe cazuri va fi simplă.

Înainte de conversie, citiți InterSystems IRIS In-Place Conversion Guide și InterSystems IRIS Adoption Guide. Aceste documente se găsesc pe site-ul Centrului de Suport Global InterSystems în secțiunea 'Documente».

Limbaje de client

InterSystems IRIS Native API pentru Python

Acces rapid de nivel scăzut din Python la array-uri multidimensionale în care InterSystems IRIS stochează date. Detalii – 'Native API for Python».

InterSystems IRIS Native API для Node.js

Acces rapid de nivel scăzut din Node.js la array-uri multidimensionale în care InterSystems IRIS stochează date. Detalii – 'Native API for Node.js».

Реляционный доступ для Node.js

Поддержка ODBC-доступа к InterSystems IRIS для разработчиков на Node.js

Comunicare bidirecțională în gateway-urile Java și .NET

Conexiunile .NET și Java Gateway sunt acum bidirecționale. Asta înseamnă că un program scris în .NET sau Java, apelat din IRIS prin intermediul gateway-ului, folosește aceeași conexiune pentru a interacționa cu IRIS. Mai multe detalii — «Reintrare Gateway Java».

Îmbunătățiri ale API-ului nativ pentru Java și .NET

API-ul Nativ IRIS pentru Java și .NET suportă liste $LIST și transmiterea parametrilor prin referință.

Noul aspect al Portalului de Administrare

Această versiune include primele modificări ale Portalului de Administrare. Deocamdată, acestea se referă doar la aspectul vizual și nu afectează funcționalitatea.

SQL

  • Cache universal de interogări. Începând cu 2020.1, toate interogările, inclusiv cele încorporate și cele ale claselor, vor fi salvate ca interogări cache. Anterior, utilizarea interogărilor încorporate necesita recompilarea programului pentru a genera un nou cod de interogare, de exemplu, dacă apare un nou index sau se schimbă statistica unei tabele. Acum, toate planurile de interogare sunt stocate într-un singur cache și se șterg independent de programul în care este utilizată interogarea.

  • Un număr mai mare de tipuri de interogări poate fi acum paralelizat, inclusiv interogările DML.

  • Interogările către o tabelă împărțită pe sharde pot acum utiliza un join implicit "->".

  • Interogările lansate din Portalul de administrare sunt acum executate într-un proces de fundal. Interogările îndelungate nu se vor mai întrerupe din cauza timpului limită al paginii web. Interogările care durează prea mult pot fi acum anulate.

Capabilități de integrare

Un nou cadru pentru crearea elementelor de producție în Java sau .NET

Această versiune include un nou cadru PEX (Production EXtension), care oferă o alegere suplimentară a limbajului pentru implementarea componentelor de producție. În această versiune, PEX suportă Java și .NET pentru dezvoltarea serviciilor de afaceri, proceselor de afaceri și operațiunilor de afaceri, precum și pentru adaptoarele de intrare și ieșire. Anterior, era posibil să se creeze doar servicii de afaceri și operațiuni de afaceri și era necesar să se apeleze generatorul de cod în Portalul de Administrare. Cadru PEX oferă instrumente mai flexibile pentru integrarea codului Java și .NET în componentele de producție, adesea fără programare în ObjectScript. Pachetul PEX include următoarele clase:

Mai multe detalii — «PEX: Dezvoltarea producțiilor cu Java și .NET».

Monitorizarea utilizării porturilor în producții.

Utilitarul Port Authority monitorizează porturile utilizate de serviciile și operațiunile de afaceri. Acesta facilitează identificarea porturilor disponibile și rezervarea lor. Aflați mai multe — «Gestionarea utilizării porturilor».

Adaptori pentru MQTT

Această versiune include adaptoare care suportă protocolul MQTT (Message Queuing Telemetry Transport), adesea folosit în aplicațiile pentru Internetul Lucrurilor (Internet of Things — IoT). Aflați mai multe — «Folosirea adaptoarelor MQTT în producție».

Shard-ing

Arhitectură simplificată

Această versiune aduce o modalitate mai simplă și mai clară de a crea un cluster — bazat pe servere individuale (nivel de nod), în loc de spații, ca în versiunile anterioare. Noul API — %SYSTEM.Cluster. Noua abordare este compatibilă cu cea veche — cluster pe bază de spații (nivel de namespace) — și nu necesită modificări în instalațiile existente. Aflați mai multe — «Elementele shard-ing-ului” și „API-uri pentru shard-ing».

Alte îmbunătățiri în shard-ing:

  • Acum se poate co-sharda (distribui pe aceleași sharduri părțile frecvent conectate ale două tabele) orice două tabele. Anterior, acest lucru era posibil doar pentru tabelele cu o cheie shard comună. Începând cu această versiune, sintaxa COSHARD WITH se aplică și pentru tabele cu ID sistemic. Aflați mai multe — «Creează tabelele” și „Definirea unei tabele shard».
  • Anterior, marcarea unei tabele ca fiind cluster putea fi realizată doar prin DDL, acum se poate face și în descrierea clasei — noul cuvânt cheie Sharded. Aflați mai multe — «Definirea unei tabele shard prin crearea unei clase persistente».
  • Modelul obiectual suportă acum shard-ing. Metodele %New(), %OpenId și %Save() funcționează cu obiecte de clasă ale căror date sunt distribuite pe mai multe sharduri. Rețineți că codul se execută pe serverul la care clientul este conectat, nu pe cel care stochează obiectul.
  • Algoritmul de execuție pentru interogarile cluster-ului a fost îmbunătățit. Managerul de coadă de interogări (Unified Shard Queue Manager) pune interogările în așteptare pentru a fi executate de un pool de procese, în loc să pornă procese noi pentru fiecare interogare. Numărul de procese din pool este determinat automat, pe baza resurselor serverului și a încărcăturii.

Infrastructură și desfășurare în cloud.

Această versiune include îmbunătățiri în infrastructură și desfășurare în cloud, inclusiv:

  • Suport pentru Tencent Cloud. InterSystems Cloud Manager (ICM) suportă acum crearea infrastructurii și desfășurarea aplicațiilor bazate pe InterSystems IRIS în Tencent Cloud.
  • Suport pentru volumele denumite (named volumes) în Docker, pe lângă montarea folderele (bind mount).
  • ICM suportă scalarea flexibilă - configurațiile pot fi acum scalate, adică recreate cu un număr mai mare sau mai mic de noduri. Aflați mai multe - «Reprovisionarea infrastructurii” și „Redepozitarea serviciilor».
  • Îmbunătățiri în crearea propriului container.
  • ICM suportă o nouă arhitectură de sharding.
  • Utilizatorul implicit în containere nu mai este root.
  • ICM suportă crearea și desfășurarea de rețele private în care un nod de bastion conectează rețeaua privată cu rețeaua publică și oferă o protecție suplimentară împotriva atacurilor de tip Denial-of-Service.
  • Suport pentru descoperirea serviciilor prin RPC securizat.
  • ICM suportă desfășurarea în mai multe regiuni. Asta asigură o disponibilitate ridicată a sistemului, chiar dacă întreaga regiune devine inoperantă.
  • Capacitatea de a actualiza ICM și de a păstra informațiile despre sistemele deja desfășurate.
  • Modul fără containere - ICM poate acum desfășura direct, fără containere, configurații de cluster pe Google Cloud Platform și să instaleze Web Gateway pe Ubuntu sau SUSE.
  • Suport pentru unirea iris.cpf din două fișiere. Acesta ajută ICM să ruleze InterSystems IRIS cu configurații diferite în funcție de modul în care funcționează instalarea. Această caracteristică simplifică automatizarea și suportul pentru diferite instrumente de gestionare a configurațiilor, cum ar fi Kubernetes.

Analiza

Reconstructie selectivă a cubului

Începând cu această versiune, InterSystems IRIS Business Intelligence (cunoscut anterior ca DeepSee) suportă construirea selectivă a cubului - numai a unui singur indicator sau dimensiune. Puteți modifica descrierea cubului și reconstrui doar ceea ce s-a schimbat, menținând disponibilitatea întregului cub în timpul reconstrucției.

Conector PowerBI

Microsoft PowerBI acum suportă lucrul cu tabele și cuburi InterSystems IRIS. Conectorul este inclus în PowerBI, începând cu versiunea din aprilie 2019. Aflați mai multe - «InterSystems IRIS Connector pentru Power BI».

Previzualizarea rezultatelor interogării

În această versiune a apărut un nou mod de previzualizare la generarea tabelelor pivot în Analyzer. Astfel se poate evalua rapid corectitudinea interogării, fără a aștepta rezultatele complete.

Alte îmbunătățiri

  • Traversarea globalului cu funcția $ORDER în ordine inversă (direction = -1) este acum la fel de rapidă ca și în direct.
  • Performanța jurnalizării a fost îmbunătățită.
  • Adăugată suport pentru Apache Spark 2.3, 2.4.
  • Adăugată suport pentru clientul WebSocket. Clasa %Net.WebSocket.Client.
  • Clasa de control al versiunilor procesează acum evenimentele legate de schimbările de pe pagina de produse.
  • Liste albe pentru filtrarea cererilor permise pentru CSP, ZEN și REST.
  • Suport pentru .NET Core 2.1.
  • Performanța ODBC a fost îmbunătățită.
  • Jurnal structurat pentru facilitarea analizei messages.log.
  • API pentru verificarea erorilor și avertizărilor. Clasa %SYSTEM.Monitor.GetAlerts().
  • Compilatorul de clase verifică acum că numele globalului din descrierea stocării nu depășește lungimea maximă (31 de caractere) și returnează o eroare dacă nu este așa. Anterior, numele globalului era tăiat la 31 de caractere fără nicio avertizare.

Unde să obții

Dacă ai suport — descarcă distribuția din secțiunea Distribuții Online site-ul wrc.intersystems.com

Dacă vrei doar să încerci InterSystems IRIS — https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Chiar mai simplu prin Docker:

docker run --name iris20 --init --detach --publish 51773:51773 --publish 52773:52773 store/intersystems/iris-community:2020.1.0.215.0

Webinar

Pe 7 aprilie la ora 17:00, ora Moscovei, va avea loc un webinar dedicat noului release. Acesta va fi susținut de Jeff Fried (Director, Product Management) și Joe Lichtenberg (Director of Product & Industry Marketing). Înscrie-te! Webinarul va fi în limba engleză.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster