Udgivelsen af InterSystems IRIS 2020.1

Udgivelsen af InterSystems IRIS 2020.1

I slutningen af marts blev lanceret blev den nye version af dataplatformen InterSystems IRIS 2020.1 udgivet. Selv coronaviruspandemien forhindrede ikke udgivelsen.

Af det væsentlige i den nye udgivelse er der forbedringer i kerneydelsen, generation af REST-applikationer efter specifikationen OpenAPI 2.0, sharding for objekter, en ny type Management Portal, support for MQTT, universel cache af forespørgsler, og et nyt framework til oprettelse af produktkomponenter i Java eller .NET. Den fulde liste over ændringer og Upgrade Checklist på engelsk kan findes ved linket. Læs mere nedenfor.

InterSystems IRIS 2020.1 er en udgivelse med udvidet support. InterSystems udgiver to typer af InterSystems IRIS-udgivelser:

  • Continuous delivery-udgivelser. Udgives tre til fire gange om året i form af Docker-billeder. Designet til applikationsudvikling og implementering i skyen eller Docker-containere.
  • Udgivelser med udvidet support. Udgives sjældnere, men der frigives rettelsesudgivelser for dem. Udgives på alle platforme, der understøttes af InterSystems IRIS.

Mellem udgivelserne med udvidet support 2019.1 og 2020.1 blev der kun udgivet versioner i Docker-billeder — 2019.2, 2019.3, 2019.4. Alle nye funktioner og rettelser fra disse udgivelser er inkluderet i 2020.1. Nogle funktioner fra de nævnte versioner optrådte første gang i en af 2019.2, 2019.3, 2019.4.

Så.

Udvikling af REST-applikationer baseret på specifikationen

Derudover InterSystems API Manager, der har været understøttet siden version 2019.1.1, tilbyder den nye version 2020.1 muligheden for at generere en kode-skelet til en REST-tjeneste i OpenAPI 2.0-format. Læs mere i dokumentationsafsnittet "Creating REST Services».

Konvertering af en installation af Caché eller Ensemble

Denne udgivelse muliggør konvertering af en installation af Caché eller Ensemble til InterSystems IRIS under installationen. Selve konverteringen kan kræve ændringer i programkoden, indstillinger eller andre scripts, men i de fleste tilfælde vil det være enkelt.

Læs InterSystems IRIS In-Place Conversion Guide og InterSystems IRIS Adoption Guide, før du konverterer. Disse dokumenter findes på InterSystems Global Support Center's hjemmeside under "Dokumenter».

Klientprogrammeringssprog

InterSystems IRIS Native API til Python

Lavniveau hurtig adgang fra Python til multidimensionale arrays, som InterSystems IRIS gemmer data i. Læs mere — "Native API for Python».

InterSystems IRIS Native API для Node.js

Lavniveau hurtig adgang fra Node.js til multidimensionale arrays, som InterSystems IRIS gemmer data i. Læs mere — "Native API for Node.js».

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

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

To-vejs kommunikation i Java og .NET gateways

Forbindelser mellem .NET og Java-gateways er nu tovejs. Det vil sige, at et program skrevet i .NET eller Java, der kaldes fra IRIS via gatewayen, bruger den samme forbindelse til at kommunikere med IRIS. Læs mere — «Java Gateway Reentrancy».

Forbedringer i Native API til Java og .NET

IRIS Native API til Java og .NET understøtter lister $LIST og parameteroverførsel ved reference.

Ny opdatering af Management Portal

Denne version indeholder de første ændringer i Management Portal. Disse ændringer vedrører kun det visuelle aspekt og påvirker ikke funktionaliteten.

SQL

  • Universel forespørgselscache. Fra version 2020.1 vil alle forespørgsler, inklusive indlejrede forespørgsler og klasseforespørgsler, blive gemt som cachede forespørgsler. Tidligere krævede brugen af indlejrede forespørgsler genkompilering af programmet for at generere ny forespørgselskode, f.eks. hvis en ny indeks blev tilføjet eller tabelstatistikken ændrede sig. Nu gemmes alle forespørgselsplaner i én cache og ryddes uafhængigt af det program, hvor forespørgslen bruges.

  • Flere typer forespørgsler kan nu paralleliseres, inklusive DML-forespørgsler.

  • Forespørgsler til en shardet tabel kan nu bruge implicit join "->".

  • Forespørgsler, der udføres fra Management Portal, køres nu i en baggrundsproces. Langvarige forespørgsler vil ikke længere blive afbrudt på grund af timeout fra websiden. Forsinkede forespørgsler kan nu annulleres.

Integrationsmuligheder

Nyt framework til oprettelse af produktkomponenter i Java eller .NET

Denne version inkluderer et nyt framework PEX (Production EXtension), der giver ekstra valg af implementeringssprog for produktkomponenter. I denne version understøtter PEX Java og .NET til udvikling af forretningsservice, forretningsprocesser og forretningsoperationer, såvel som til indgående og udgående adaptere. Tidligere kunne man kun oprette forretningsservice og forretningsoperationer og måtte kalde kodegeneratoren i Management Portal. PEX-frameworket tilbyder mere fleksible værktøjer til at inkludere Java- og .NET-kode i produktkomponenter, ofte uden programmering på ObjectScript. PEX-pakken indeholder følgende klasser:

Læs mere — «PEX: Developing Productions with Java and .NET».

Overvågning af portanvendelse i produkterne.

Port Authority-værktøjet overvåger de porte, der bruges af forretningsservices og forretningsoperationer. Det giver mulighed for at identificere tilgængelige porte og reservere dem. Læs mere — «Håndtering af portforbrug».

MQTT-adaptere

Denne version inkluderer adaptere, der understøtter protokollen MQTT (Message Queuing Telemetry Transport), som ofte bruges i Internet of Things (IoT) applikationer. Læs mere — «Brug af MQTT-adaptere i produktionen».

Sharding

Forenklet arkitektur

Denne version introducerer en mere enkel og forståelig måde at oprette et cluster på — baseret på separate servere (node level) i stedet for områder, som det var i tidligere versioner. Den nye API — %SYSTEM.Cluster. Den nye metode er kompatibel med den gamle — clusteret baseret på områder (namespace level) — og kræver ikke ændringer i eksisterende installationer. Læs mere — «Elementer af sharding" og "Sharding API'er».

Andre forbedringer i sharding:

  • Det er nu muligt at koshard (fordele over de samme shards ofte sammenkoblede dele af to tabeller) enhver to tabeller. Tidligere kunne dette kun gøres med tabeller, der havde en fælles sharding-nøgle. Fra denne version anvendes syntaksen COSHARD WITH også for tabeller med system-ID. Læs mere — «Opret tabellerne" og "Definere en sharded tabel».
  • Tidligere kunne en tabel kun mærkes som clusteret gennem DDL, men nu kan det også gøres i klassedokumentationen — det nye nøgleord Sharded. Læs mere — «Definere en sharded tabel ved at oprette en vedvarende klasse».
  • Den objektorienterede model understøtter nu sharding. Metoderne %New(), %OpenId og %Save() fungerer med objekter af klassen, hvis data er distribueret over flere shards. Vær opmærksom på, at koden udføres på den server, som klienten er tilsluttet, ikke den, hvor objektet er gemt.
  • Algoritmen til udførelse af clusterforespørgsler er forbedret. Forespørgselsstyringssystemet (Unified Shard Queue Manager) sætter forespørgsler i kø til behandling af en procespulje i stedet for at starte nye processer til hver forespørgsel. Antallet af processer i puljen bestemmes automatisk baseret på serverressourcer og belastning.

Infrastruktur og cloud-implementering.

Denne version indeholder forbedringer i infrastrukturer og implementering i cloud, herunder:

  • Understøttelse af Tencent Cloud. InterSystems Cloud Manager (ICM) understøtter nu oprettelse af infrastruktur og implementering af applikationer baseret på InterSystems IRIS i Tencent Cloud.
  • Understøttelse af navngivne volumener (named volumes) i Docker, ud over at montere mapper (bind mount).
  • ICM understøtter fleksibel skalering – konfigurationer kan nu skaleres, hvilket betyder, at de kan genskabes med et større eller mindre antal noder. Læs mere – «Genlevering af infrastrukturen" og "Genudrulning af tjenester».
  • Forbedringer i oprettelsen af egne containere.
  • ICM understøtter en ny sharding-arkitektur.
  • Standardbrugeren i containere er nu ikke root.
  • ICM understøtter oprettelse og udrulning af private netværk, hvor en bastionsknytte forbinder det private netværk med det offentlige netværk og giver yderligere beskyttelse mod Denial-of-Service angreb.
  • Understøttelse af servicetildeling via sikker RPC.
  • ICM understøtter udrulning på flere regioner. Dette sikrer høj tilgængelighed af systemet, selv hvis hele regionen bliver ikke-funktionel.
  • Mulighed for at opdatere ICM og bevare information om allerede udrulede systemer.
  • Containerfri tilstand – ICM kan nu direkte, uden containere, udrulle klyngekonfigurationer på Google Cloud Platform samt installere Web Gateway på Ubuntu eller SUSE.
  • Understøttelse af sammensmeltning af iris.cpf fra to filer. Dette hjælper ICM med at køre InterSystems IRIS med forskellige indstillinger afhængigt af den driftsmode, installationen fungerer i. Denne funktion forenkler automatisering og understøttelse af forskellige konfigurationstyringsværktøjer som Kubernetes.

Analyse

Selektiv genopbygning af kuben

Fra denne udgivelse understøtter InterSystems IRIS Business Intelligence (tidligere kendt som DeepSee) selektiv kubebygning – kun én måling eller dimension. Beskrivelsen af kuben kan ændres, og kun de ændrede elementer genbygges, samtidig med at tilgængeligheden af hele kuben opretholdes under genopbygningen.

PowerBI connector

Microsoft PowerBI understøtter nu arbejde med tabeller og kuber fra InterSystems IRIS. Connectoren leveres med PowerBI fra aprils udgivelse i 2019. Læs mere – «InterSystems IRIS Connector til Power BI».

Forhåndsvisning af forespørgselsresultater

I denne udgivelse er der introduceret en ny forhåndsvisningstilstand ved oprettelse af pivottabeller i Analyzer. Dette giver mulighed for hurtigt at vurdere korrektheden af forespørgslen, uden at vente på de fulde resultater.

Andre forbedringer

  • At gennemgå globalfunktionen $ORDER i omvendt rækkefølge (direction = -1) er nu lige så hurtigt som i den normale rækkefølge.
  • Forbedret ydeevne ved logning.
  • Understøttelse af Apache Spark 2.3, 2.4 er tilføjet.
  • Understøttelse af WebSocket-klienten er tilføjet. Klasse %Net.WebSocket.Client.
  • Versionskontrolklassen håndterer nu begivenheder ved ændringer på produkt sider.
  • Whitelist til filtrering af tilladte anmodninger til CSP, ZEN og REST.
  • Understøttelse af .NET Core 2.1.
  • Forbedret ydeevne for ODBC.
  • Struktureret log for nemmere analyse af messages.log.
  • API til kontrol af fejl og advarsler. Klasse %SYSTEM.Monitor.GetAlerts().
  • Klassens compiler kontrollerer nu, at navnet på globalen i opbevaringsbeskrivelsen ikke overstiger den maksimale længde (31 tegn) og returnerer en fejl, hvis det er tilfældet. Tidligere blev navnet på globalen uden advarsel forkortet til 31 tegn.

Hvor kan man finde

Hvis du har support — download distributionspakken fra sektionen Online Distributioner siden wrc.intersystems.com

Hvis du kun ønsker at prøve InterSystems IRIS — https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Endnu lettere via Docker:

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

Webinar

Den 7. april kl. 17:00 Moskva tid vil der blive afholdt et webinar om den nye udgivelse. Det vil blive ledet af Jeff Fried (Director, Product Management) og Joe Lichtenberg (Director of Product & Industry Marketing). Tilmeld dig! Webinaret vil være på engelsk.

Kilde: habr.com

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster