Release van InterSystems IRIS 2020.1

Release van InterSystems IRIS 2020.1

Eind maart kwam uit nieuwe versie van het InterSystems IRIS 2020.1 dataplatform. Zelfs de pandemie van het coronavirus heeft de vrijlating niet verhinderd.

Tot de belangrijke dingen in de nieuwe release behoren verbeterde kernelprestaties, het genereren van een REST-applicatie volgens de OpenAPI 2.0-specificatie, sharding voor objecten, een nieuw type Management Portal, MQTT-ondersteuning, een universele query-cache, een nieuw raamwerk voor het maken van product elementen in Java of .NET. De volledige lijst met wijzigingen en de upgradechecklist in het Engels kunt u vinden op link. Meer details - onder de snit.

InterSystems IRIS 2020.1 is een uitgebreide ondersteuningsrelease. InterSystems produceert twee soorten InterSystems IRIS-releases:

  • Vrijgaven voor continue levering. Ze verschijnen drie tot vier keer per jaar in de vorm van Docker-afbeeldingen. Ontworpen voor applicatieontwikkeling en implementatie in de cloud of Docker-containers.
  • Releases met uitgebreide ondersteuning. Ze komen minder vaak uit, maar er worden releases met oplossingen voor uitgebracht. Beschikbaar op alle platforms die worden ondersteund door InterSystems IRIS.

Tussen de uitgebreide ondersteuningsreleases 2019.1 en 2020.1 werden releases alleen uitgebracht in Docker-images - 2019.2, 2019.3, 2019.4. Alle nieuwe functies en oplossingen van deze releases zijn opgenomen in 2020.1. Sommige van de onderstaande functies zijn voor het eerst verschenen in één release: 2019.2, 2019.3, 2019.4.

So.

Ontwikkeling van REST-applicaties volgens de specificatie

ополнение InterSystems API-manager, ondersteund sinds versie 2019.1.1, werd het in release 2020.1 mogelijk om de kerncode voor een REST-service te genereren volgens de specificatie in het OpenAPI 2.0-formaat. Voor meer details, zie de documentatiesectie "REST-services creëren.

Een Caché- of Ensemble-installatie omzetten

Met deze release kunt u uw Caché- of Ensemble-installatie tijdens de installatie naar InterSystems IRIS converteren. Voor de conversie zelf zijn mogelijk wijzigingen in de programmacode, instellingen of andere scripts nodig, maar in de meeste gevallen zal dit eenvoudig zijn.

Lees vóór de conversie de InterSystems IRIS In-Place Conversion Guide en InterSystems IRIS Adoption Guide. Deze documenten bevinden zich op de website van het InterSystems Worldwide Support Center in de "Documentatie.

Talen van klanten

InterSystems IRIS Native API voor Python

Snelle toegang op laag niveau vanuit Python tot multidimensionale arrays waarin InterSystems IRIS gegevens opslaat. Meer details - "Native API voor Python.

InterSystems IRIS Native API voor Node.js

Snelle toegang op laag niveau vanuit Node.js tot multidimensionale arrays waarin InterSystems IRIS gegevens opslaat. Meer details - "Native API voor Node.js.

Relationele toegang voor Node.js

Ondersteuning voor ODBC-toegang tot InterSystems IRIS voor Node.js-ontwikkelaars

Tweerichtingscommunicatie in Java- en .NET-gateways

.NET- en Java-gatewayverbindingen zijn nu tweerichtingsverkeer. Dat wil zeggen dat een .NET- of Java-programma dat vanuit IRIS via de gateway wordt aangeroepen, dezelfde verbinding gebruikt om toegang te krijgen tot IRIS. Meer details - "Java Gateway-herinvoer.

Verbeteringen aan Native API voor Java en .NET

De IRIS Native API voor Java en .NET ondersteunt $LISTs en het doorgeven van parameters door middel van referentie.

Nieuw uiterlijk van het beheerportaal

Deze release bevat de eerste wijzigingen aan de Management Portal. Voorlopig hebben ze alleen betrekking op het uiterlijk en hebben ze geen invloed op de functionaliteit.

SQL

  • Universele querycache. Vanaf 2020.1 worden alle query's, inclusief ingebouwde query's en klassequery's, opgeslagen als in de cache opgeslagen query's. Voorheen vereiste het gebruik van ingebouwde query's het opnieuw compileren van het programma om nieuwe querycode te genereren, bijvoorbeeld als er een nieuwe index verscheen of tabelstatistieken veranderden. Nu worden alle queryplannen in dezelfde cache opgeslagen en gewist, ongeacht het programma waarin de query wordt gebruikt.

  • Er zijn nu meer querytypen parallelleerbaar, inclusief DML-query's.

  • Query's op een shardtabel kunnen nu impliciete join "->" gebruiken.

  • Verzoeken die vanuit de Management Portal worden gelanceerd, worden nu in een achtergrondproces uitgevoerd. Lange verzoeken zullen niet langer mislukken vanwege een time-out van de webpagina. Ledging-aanvragen kunnen nu worden geannuleerd.

Integratiemogelijkheden

Nieuw raamwerk voor het maken van productelementen in Java of .NET

Deze release bevat een nieuw PEX-framework (Production EXtension), dat een extra taalkeuze biedt voor het implementeren van productcomponenten. Met deze release ondersteunt PEX Java en .NET voor het ontwikkelen van zakelijke services, bedrijfsprocessen en bedrijfsactiviteiten, evenals inkomende en uitgaande adapters. Voorheen kon je alleen zakelijke diensten en zakelijke transacties aanmaken en moest je de codegenerator in de Management Portal aanroepen. Het PEX-framework biedt een flexibelere manier om Java- en .NET-code in productcomponenten op te nemen, vaak zonder ObjectScript-programmering. Het PEX-pakket omvat de volgende klassen:

Meer details - "PEX: Producties ontwikkelen met Java en .NET.

Monitoren van poortgebruik in producten.

Het Havenbedrijf houdt toezicht op de havens die worden gebruikt door de zakelijke dienstverlening en bedrijfsvoering. Met behulp hiervan kunt u beschikbare poorten bepalen en reserveren. Meer details - "Poortgebruik beheren.

Adapters voor MQTT

Deze release bevat adapters die het MQTT-protocol (Message Queuing Telemetry Transport) ondersteunen, dat vaak wordt gebruikt in Internet of Things (IoT)-toepassingen. Meer details - "MQTT-adapters gebruiken in producties.

Scherven

Vereenvoudigde architectuur

Deze release introduceerde een eenvoudiger en begrijpelijker manier om een ​​cluster te creëren - gebaseerd op individuele servers (knooppuntniveau), en niet op gebieden, zoals in eerdere versies. Nieuwe API - %SYSTEEM.Cluster. De nieuwe aanpak is compatibel met de oude – een cluster gebaseerd op gebieden (naamruimteniveau) – en vereist geen wijzigingen aan bestaande installaties. Meer details - "Elementen van scherven"En"Sharding-API's.

Andere shardingverbeteringen:

  • Nu kunt u twee tabellen cosharden (vaak verbonden delen van twee tabellen verdelen in dezelfde shards). Voorheen kon dit alleen worden gedaan met tabellen die een gemeenschappelijke Shard-sleutel hadden. Vanaf deze release wordt de COSHARD WITH-syntaxis ook gebruikt voor tabellen met een systeem-ID. Meer details - "Maak de tabellen"En"Een Shard-tabel definiëren.
  • Voorheen was het alleen via DDL mogelijk om een ​​tabel als clustertabel te markeren, maar nu kan dit ook in de klassebeschrijving worden gedaan: het nieuwe Sharded-trefwoord. Meer details - "Een Sharded-tabel definiëren door een persistente klasse te creëren.
  • Het objectmodel ondersteunt nu sharding. De methoden %New(), %OpenId en %Save() werken met objecten van een klasse waarvan de gegevens over verschillende shards zijn verdeeld. Houd er rekening mee dat de code wordt uitgevoerd op de server waarmee de client is verbonden, en niet op de server waarop het object is opgeslagen.
  • Het algoritme voor het uitvoeren van clusterquery's is verbeterd. De Unified Shard Queue Manager plaatst verzoeken voor uitvoering in een wachtrij voor een groep processen, in plaats van voor elk verzoek nieuwe processen te starten. Het aantal processen in de pool wordt automatisch bepaald op basis van serverbronnen en belasting.

Infrastructuur en implementatie in de cloud.

Deze release bevat verbeteringen aan de infrastructuur en cloudimplementaties, waaronder:

  • Tencent Cloud-ondersteuning. InterSystems Cloud Manager (ICM) ondersteunt nu het creëren van infrastructuur en de implementatie van applicaties op basis van InterSystems IRIS op Tencent Cloud.
  • Ondersteuning voor benoemde volumes in Docker, naast bindingsmounts.
  • ICM ondersteunt flexibele schaling: configuraties kunnen nu worden geschaald, dat wil zeggen opnieuw worden gemaakt met meer of minder knooppunten. Meer details - "Herinrichting van de infrastructuur"En"Diensten opnieuw inzetten.
  • Verbeteringen bij het maken van uw eigen container.
  • ICM ondersteunt de nieuwe sharding-architectuur.
  • De standaardgebruiker in containers is niet langer root.
  • ICM ondersteunt het creëren en inzetten van private netwerken, waarbij een bastionnode het private netwerk met het publieke netwerk verbindt en extra bescherming biedt tegen Denial-of-Service-aanvallen.
  • Ondersteuning voor servicedetectie via beveiligde RPC.
  • ICM ondersteunt implementatie in meerdere regio's. Dit garandeert een hoge systeembeschikbaarheid, zelfs als de hele regio niet beschikbaar is.
  • Mogelijkheid om ICM bij te werken en informatie over reeds geïmplementeerde systemen op te slaan.
  • Containerloze modus - ICM kan nu rechtstreeks, zonder containers, clusterconfiguraties op Google Cloud Platform implementeren en Web Gateway op Ubuntu of SUSE installeren.
  • Ondersteuning voor het samenvoegen van iris.cpf uit twee bestanden. Dit helpt ICM om InterSystems IRIS te starten met verschillende instellingen, afhankelijk van de modus waarin de installatie wordt uitgevoerd. Deze mogelijkheid maakt het eenvoudiger om verschillende configuratiebeheertools zoals Kubernetes te automatiseren en te ondersteunen.

Analytics

Herbouw de kubus selectief

Vanaf deze release ondersteunt InterSystems IRIS Business Intelligence (voorheen bekend als DeepSee) het selectief bouwen van kubussen, slechts één meting of dimensie. U kunt de kubusbeschrijving wijzigen en alleen herbouwen wat er is veranderd, waarbij u de hele kubus beschikbaar houdt tijdens het opnieuw opbouwen.

PowerBI-connector

Microsoft PowerBI ondersteunt nu het werken met InterSystems IRIS-tabellen en -kubussen. De connector wordt vanaf de release van april 2019 geleverd met PowerBI. Meer details - "InterSystems IRIS-connector voor Power BI.

Bekijk een voorbeeld van de queryresultaten

Deze release introduceert een nieuwe voorbeeldmodus bij het maken van draaitabellen in Analyzer. Op deze manier kunt u snel de juistheid van een zoekopdracht beoordelen zonder te wachten op de volledige resultaten.

ие ения

  • Het doorlopen van een globaal gebruik van de functie $ORDER in omgekeerde volgorde (richting = -1) gaat nu net zo snel als in voorwaartse volgorde.
  • Verbeterde logprestaties.
  • Ondersteuning toegevoegd voor Apache Spark 2.3, 2.4.
  • Ondersteuning toegevoegd voor WebSocket-client. Klasse %Net.WebSocket.Client.
  • De klasse versiebeheer verwerkt nu gebeurtenissen bij wijzigingen op de productpagina.
  • Whitelists om geldige verzoeken aan CSP, ZEN en REST te filteren.
  • .NET Core 2.1-ondersteuning.
  • Verbeterde ODBC-prestaties.
  • Gestructureerd logbestand om de analyse van messages.log te vergemakkelijken.
  • API voor foutcontrole en waarschuwingen. Klasse %SYSTEM.Monitor.GetAlerts().
  • De klassencompiler controleert nu of de globale naam in de opslagdeclaratie de maximale lengte (31 tekens) niet overschrijdt en retourneert een foutmelding als dit niet het geval is. Voorheen werd de globale naam zonder waarschuwing afgekapt tot 31 tekens.

Waar te krijgen

Als u ondersteuning heeft, download dan de distributie uit de sectie Onlinedistributies website wrc.intersystems.com

Als u InterSystems IRIS gewoon wilt proberen - https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Nog makkelijker via Docker:

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

Webinar

Op 7 april om 17 uur Moskou-tijd is er een webinar gewijd aan de nieuwe release. De bijeenkomst wordt georganiseerd door Jeff Fried (directeur Product Management) en Joe Lichtenberg (directeur Product & Industry Marketing). Register! Het webinar zal in het Engels zijn.

Bron: www.habr.com

Voeg een reactie