Sortie d'InterSystems IRIS 2020.1

Sortie d'InterSystems IRIS 2020.1

À la fin mars la nouvelle version de Google Chrome numéro 75 est sortie. Il n'y avait pas de changements ou de mises à jour notables, cependant, les développeurs ont corrigé 42 vulnérabilités et ajouté un mode lecture. Cependant, contrairement à d'autres navigateurs, il fonctionne de manière assez étrange. En particulier, il ne reconnaît pas encore tout le texte de la page. De plus, il doit être activé manuellement via des drapeaux, ce qui semble plutôt étrange. , la nouvelle version de la plateforme de données InterSystems IRIS 2020.1. Même la pandémie de coronavirus n'a pas empêché la sortie.

Parmi les points importants de cette nouvelle version, on trouve l'amélioration des performances du noyau, la génération d'applications REST selon la spécification OpenAPI 2.0, le sharding pour les objets, un nouveau type de Portail de Gestion, le support de MQTT, un cache de requêtes universel, et un nouveau framework pour créer des éléments de produit en Java ou .NET. Vous pouvez trouver la liste complète des changements et la liste de vérification de mise à niveau en anglais sur le lien. Pour plus de détails, voir ci-dessous.

InterSystems IRIS 2020.1 est une version avec support prolongé. InterSystems publie deux types de versions d'InterSystems IRIS :

  • Des versions de livraison continue. Elles sortent trois à quatre fois par an sous forme d'images Docker. Destinées au développement d'applications et au déploiement dans le cloud ou les conteneurs Docker.
  • Des versions avec support prolongé. Elles sortent moins fréquemment, mais des mise à jour sont publiées. Disponibles sur toutes les plateformes prises en charge par InterSystems IRIS.

Entre les versions avec support prolongé 2019.1 et 2020.1, seules des versions sous forme d'images Docker ont été publiées — 2019.2, 2019.3, 2019.4. Toutes les nouvelles fonctionnalités et corrections de ces versions sont intégrées dans 2020.1. Certaines capacités des versions mentionnées ci-dessous sont apparues pour la première fois dans l'une des versions 2019.2, 2019.3, 2019.4.

Donc.

Développement d'applications REST selon la spécification

En plus de InterSystems API Manager, pris en charge depuis la version 2019.1.1, la version 2020.1 a ajouté la possibilité de générer une base de code pour un service REST selon la spécification au format OpenAPI 2.0. Pour plus de détails, consultez la section de documentation «Créer des services REST».

Conversion d'une installation Caché ou Ensemble

Cette version permet, lors de l'installation, de convertir une installation Caché ou Ensemble en InterSystems IRIS. La conversion elle-même peut nécessiter des modifications dans le code, les paramètres ou d'autres scripts, mais dans la plupart des cas, elle sera simple.

Avant de procéder à la conversion, lisez le Guide de Conversion en Place d'InterSystems IRIS et le Guide d'Adoption d'InterSystems IRIS. Ces documents sont disponibles sur le site du centre de support mondial d'InterSystems dans la section «Documents».

Langues clients

InterSystems IRIS Native API pour Python

Accès bas niveau rapide depuis Python aux tableaux multidimensionnels dans lesquels InterSystems IRIS stocke des données. Pour plus de détails, voir «Native API for Python».

InterSystems IRIS Native API для Node.js

Accès bas niveau rapide depuis Node.js aux tableaux multidimensionnels dans lesquels InterSystems IRIS stocke des données. Pour plus de détails, voir «Native API for Node.js».

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

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

Communication bidirectionnelle dans les passerelles Java et .NET

Les connexions .NET et Java Gateway sont désormais bidirectionnelles. Cela signifie qu'un programme écrit en .NET ou en Java, appelé depuis IRIS via la passerelle, utilise cette même connexion pour communiquer avec IRIS. En savoir plus — «Reentrance de la passerelle Java».

Améliorations de l'API Native pour Java et .NET

L'API Native d'IRIS pour Java et .NET prend en charge les listes $LIST et le passage de paramètres par référence.

Nouvelle interface du Portail de Gestion

Cette version inclut les premières modifications de l'interface du Portail de Gestion. Elles concernent uniquement l'apparence et n'affectent pas les fonctionnalités.

SQL

  • Cache universel des requêtes. À partir de 2020.1, toutes les requêtes, y compris les requêtes intégrées et les requêtes de classe, seront enregistrées comme des requêtes mises en cache. Auparavant, l'utilisation de requêtes intégrées nécessitait une recompilation du programme pour générer un nouveau code de requête, par exemple lorsqu'un nouvel index apparaissait ou que les statistiques de la table changeaient. Maintenant, tous les plans de requêtes sont stockés dans un seul cache et sont nettoyés indépendamment du programme dans lequel la requête est utilisée.

  • Un plus grand nombre de types de requêtes peuvent désormais être parallélisées, y compris les requêtes DML.

  • Les requêtes sur une table répartie sur des shards peuvent maintenant utiliser un join implicite "->".

  • Les requêtes lancées depuis le Portail de Gestion sont désormais exécutées en arrière-plan. Les longues requêtes ne tomberont plus en raison du délai d'attente de la page Web. Les requêtes prolongées peuvent désormais être annulées.

Capacités d'intégration

Nouveau framework pour créer des éléments de production en Java ou .NET

Cette version comprend le nouveau framework PEX (Production EXtension), qui offre un choix supplémentaire de langage pour la mise en œuvre des composants de production. Dans cette version, PEX prend en charge Java et .NET pour le développement de services métier, de processus métier et d'opérations métier, ainsi que pour les adaptateurs entrants et sortants. Auparavant, il n'était possible de créer que des services métier et des opérations métier, et il fallait appeler le générateur de code dans le Portail de Gestion. Le framework PEX fournit des outils plus flexibles pour intégrer du code Java et .NET dans les composants de production, souvent sans programmation en ObjectScript. Le package PEX comprend les classes suivantes :

En savoir plus — «PEX : Développer des productions avec Java et .NET».

Surveillance de l'utilisation des ports dans les productions.

L'outil Port Authority surveille les ports utilisés par les services et opérations commerciales. Il permet de déterminer les ports disponibles et de les réserver. En savoir plus — «Gestion de l'utilisation des ports».

Adaptateurs pour MQTT

Cette version comprend des adaptateurs prenant en charge le protocole MQTT (Message Queuing Telemetry Transport), souvent utilisé dans les applications pour l'Internet des Objets (IoT). En savoir plus — «Utilisation des adaptateurs MQTT en production».

Sharding

Architecture simplifiée

Cette version introduit un moyen plus simple et compréhensible de créer un cluster — sur la base de serveurs individuels (au niveau de node), et non de zones, comme dans les versions précédentes. La nouvelle API — %SYSTEM.Cluster. La nouvelle approche est compatible avec l'ancienne — cluster basé sur des zones (au niveau de namespace) — et ne nécessite pas de modifications dans les installations existantes. En savoir plus — «Éléments de Sharding» et «APIs de Sharding».

Autres améliorations dans le sharding :

  • Il est maintenant possible de co-sharder (distribuer dans les mêmes shards des parties de deux tables souvent reliées) n'importe quelles deux tables. Auparavant, cela n'était possible que pour les tables ayant une clé de shard commune. Depuis cette version, la syntaxe COSHARD WITH s'applique également aux tables avec un Id système. En savoir plus — «Créer les tables» et «Définir une table shardée».
  • Auparavant, marquer une table comme étant cluster était possible uniquement via DDL, maintenant cela peut également être fait dans la description de la classe — nouveau mot-clé Sharded. En savoir plus — «Définir une table shardée en créant une classe persistante».
  • Le modèle objet prend désormais en charge le sharding. Les méthodes %New(), %OpenId et %Save() fonctionnent avec des objets de classe dont les données sont distribuées sur plusieurs shards. Notez que le code s'exécute sur le serveur auquel le client est connecté, et non sur celui où l'objet est stocké.
  • L'algorithme d'exécution des requêtes de cluster a été amélioré. Le gestionnaire de file d'attente des requêtes (Unified Shard Queue Manager) met les requêtes en attente pour qu'elles soient exécutées par un pool de processus, au lieu de lancer de nouveaux processus pour chaque requête. Le nombre de processus dans le pool est déterminé automatiquement, en fonction des ressources du serveur et de la charge.

Infrastructure et déploiement dans le cloud.

Cette version comprend des améliorations dans l'infrastructure et le déploiement dans le cloud, y compris :

  • Support de Tencent Cloud. InterSystems Cloud Manager (ICM) prend désormais en charge la création d'infrastructure et le déploiement d'applications basées sur InterSystems IRIS dans Tencent Cloud.
  • Support des volumes nommés dans Docker, en plus du montage de dossiers.
  • ICM prend en charge une mise à l'échelle flexible — les configurations peuvent désormais être redimensionnées, c'est-à-dire recréées avec un plus ou un moins grand nombre de nœuds. Pour en savoir plus — «Reprovisionnement de l'infrastructure» et «Redéploiement des services».
  • Améliorations dans la création de votre propre conteneur.
  • ICM prend en charge une nouvelle architecture de sharding.
  • L'utilisateur par défaut dans les conteneurs n'est plus root.
  • ICM prend en charge la création et le déploiement de réseaux privés, où un nœud bastion connecte un réseau privé à un réseau public et fournit une protection supplémentaire contre les attaques par déni de service.
  • Prise en charge de la découverte de services via RPC sécurisé.
  • ICM prend en charge le déploiement dans plusieurs régions. Cela garantit une haute disponibilité du système, même si toute la région cesse de fonctionner.
  • Possibilité de mettre à jour ICM tout en conservant les informations sur les systèmes déjà déployés.
  • Mode hors conteneur — ICM peut maintenant déployer des configurations de clusters directement, sans conteneurs, sur Google Cloud Platform, ainsi qu'installer Web Gateway sur Ubuntu ou SUSE.
  • Prise en charge de la fusion des iris.cpf à partir de deux fichiers. Cela aide ICM à exécuter InterSystems IRIS avec des configurations différentes selon le mode dans lequel l'installation fonctionne. Cette fonctionnalité simplifie l'automatisation et le support de divers outils de gestion de configuration, comme Kubernetes.

Analyse

Reconstructions sélectives de cubes

À partir de cette version, InterSystems IRIS Business Intelligence (auparavant connu sous le nom de DeepSee) prend en charge la construction sélective de cubes — uniquement un indicateur ou une dimension. Vous pouvez modifier la description du cube et reconstruire uniquement ce qui a changé, tout en maintenant l'accessibilité de l'ensemble du cube pendant la reconstruction.

Connecteur PowerBI

Microsoft PowerBI prend désormais en charge le travail avec les tableaux et cubes InterSystems IRIS. Le connecteur est fourni avec PowerBI à partir de la version d'avril 2019. Pour en savoir plus — «InterSystems IRIS Connector for Power BI».

Aperçu des résultats de la requête

Cette version introduit un nouveau mode d'aperçu lors de la création de tableaux croisés dans l'Analyzer. Cela permet d'évaluer rapidement la validité de la requête, sans attendre ses résultats complets.

Autres améliorations

  • Le parcours inverse d'une global avec la fonction $ORDER (direction = -1) est désormais aussi rapide que le parcours direct.
  • Amélioration des performances de journalisation.
  • Ajout de la prise en charge d'Apache Spark 2.3, 2.4.
  • Ajout de la prise en charge du client WebSocket. Classe %Net.WebSocket.Client.
  • La classe de gestion des versions traite désormais les événements en cas de modifications sur la page produit.
  • Listes blanches pour filtrer les demandes autorisées pour CSP, ZEN et REST.
  • Support de .NET Core 2.1.
  • Amélioration des performances ODBC.
  • Journal structuré pour faciliter l'analyse de messages.log.
  • API pour vérifier les erreurs et les avertissements. Classe %SYSTEM.Monitor.GetAlerts().
  • Le compilateur de classes vérifie désormais que le nom du global dans la description de stockage ne dépasse pas la longueur maximale (31 caractères) et renvoie une erreur si c'est le cas. Auparavant, le nom du global était tronqué à 31 caractères sans avertissement.

Où obtenir

Si vous avez un support, téléchargez la distribution depuis la section Distributions en ligne du site wrc.intersystems.com

Si vous souhaitez simplement essayer InterSystems IRIS, https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Encore plus simple via Docker :

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

Webinaire

Le 7 avril à 17h00 heure de Moscou, un webinaire sera consacré à la nouvelle version. Il sera animé par Jeff Fried (Directeur, Gestion des Produits) et Joe Lichtenberg (Directeur du Marketing Produit et de l'Industrie). Inscrivez-vous ! Le webinaire se déroulera en anglais.

Source : habr.com

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster