Lanzamento de InterSystems IRIS 2020.1

Lanzamento de InterSystems IRIS 2020.1

A finais de marzo saíu nova versión da plataforma de datos InterSystems IRIS 2020.1. Nin sequera a pandemia de coronavirus impediu a liberación.

Entre as cousas importantes da nova versión están o aumento do rendemento do núcleo, a xeración dunha aplicación REST segundo a especificación OpenAPI 2.0, o sharding para obxectos, un novo tipo de Portal de Xestión, soporte para MQTT, unha caché de consultas universal, un novo marco para crear produtos. elementos en Java ou .NET. A lista completa de cambios e a Lista de verificación de actualizacións en inglés pódese atopar en Ligazón. Máis detalles - baixo o corte.

InterSystems IRIS 2020.1 é unha versión de soporte estendida. InterSystems produce dous tipos de versións de InterSystems IRIS:

  • Lanzamentos de entrega continua. Lanzanse de tres a catro veces ao ano en forma de imaxes de Docker. Deseñado para o desenvolvemento e a implantación de aplicacións na nube ou en contedores Docker.
  • Lanzamentos con soporte estendido. Saen con menos frecuencia, pero publícanse versións con correccións para eles. Dispoñible en todas as plataformas compatibles con InterSystems IRIS.

Entre as versións de soporte estendido 2019.1 e 2020.1, as versións só se publicaron en imaxes de Docker: 2019.2, 2019.3, 2019.4. Todas as novas funcións e correccións destas versións inclúense en 2020.1. Algunhas das funcións que se indican a continuación apareceron por primeira vez nunha versión 2019.2, 2019.3, 2019.4.

Así.

Desenvolvemento de aplicacións REST segundo a especificación

Ademais de Xestor de API de InterSystems, compatible desde a versión 2019.1.1, na versión 2020.1 fíxose posible xerar o código principal para un servizo REST segundo a especificación no formato OpenAPI 2.0. Para máis detalles, consulte a sección de documentación "Creación de servizos REST».

Conversión dunha instalación Caché ou Ensemble

Esta versión permítelle converter a súa instalación de Caché ou Ensemble a InterSystems IRIS durante a instalación. A conversión en si pode requirir cambios no código do programa, a configuración ou outros scripts, pero na maioría dos casos será sinxelo.

Antes de realizar a conversión, lea a Guía de conversión local de InterSystems IRIS e a Guía de adopción de InterSystems IRIS. Estes documentos atópanse no sitio web do Centro de Soporte Mundial de InterSystems no "Documentación».

Idiomas do cliente

InterSystems IRIS Native API para Python

Acceso rápido e de baixo nivel desde Python a matrices multidimensionais nas que InterSystems IRIS almacena datos. Máis detalles - "API nativa para Python».

InterSystems IRIS Native API para Node.js

Acceso rápido de baixo nivel desde Node.js a matrices multidimensionais nas que InterSystems IRIS almacena datos. Máis detalles - "API nativa para Node.js».

Acceso relacional para Node.js

Compatibilidade para o acceso ODBC a InterSystems IRIS para desenvolvedores de Node.js

Comunicación bidireccional en pasarelas Java e .NET

As conexións de pasarela .NET e Java son agora bidireccionais. É dicir, un programa .NET ou Java chamado desde IRIS a través da pasarela utiliza a mesma conexión para acceder a IRIS. Máis detalles - "Reentrada de Java Gateway».

Melloras na API nativa para Java e .NET

A API nativa de IRIS para Java e .NET admite $LIST e pasa parámetros por referencia.

Novo aspecto do Portal de Xestión

Esta versión inclúe os primeiros cambios no Portal de Xestión. Polo momento só se refiren á aparencia e non afectan á funcionalidade.

SQL

  • Caché de consulta universal. A partir de 2020.1, todas as consultas, incluídas as consultas integradas e as consultas de clase, almacenaranse como consultas na memoria caché. Anteriormente, o uso de consultas integradas requiría recompilar o programa para xerar un novo código de consulta, por exemplo se aparecía un novo índice ou cambiaban as estatísticas da táboa. Agora todos os plans de consulta gárdanse na mesma caché e borraranse independentemente do programa no que se use a consulta.

  • Agora pódense paralelizar máis tipos de consulta, incluídas as consultas DML.

  • As consultas nunha táboa dividida agora poden usar a unión implícita "->".

  • As solicitudes lanzadas desde o Portal de Xestión execútanse agora nun proceso en segundo plano. As solicitudes longas xa non fallarán debido ao tempo de espera da páxina web. Agora pódense cancelar as solicitudes de contabilidade.

Capacidades de integración

Novo framework para crear elementos de produto en Java ou .NET

Esta versión inclúe un novo marco PEX (Production EXtension), que ofrece unha opción adicional de linguaxe para implementar compoñentes do produto. Con esta versión, PEX admite Java e .NET para desenvolver servizos empresariais, procesos comerciais e operacións comerciais, así como adaptadores de entrada e saída. Anteriormente, só se podían crear servizos comerciais e transaccións comerciais e había que chamar ao xerador de código no Portal de Xestión. O marco PEX ofrece un medio máis flexible para incorporar código Java e .NET aos compoñentes do produto, moitas veces sen programación ObjectScript. O paquete PEX inclúe as seguintes clases:

Máis detalles - "PEX: Desenvolvemento de Producións con Java e .NET».

Monitorización do uso de portos nos produtos.

A utilidade da Autoridade Portuaria supervisa os portos utilizados polos servizos comerciais e as operacións comerciais. Coa súa axuda, pode determinar os portos dispoñibles e reservalos. Máis detalles - "Xestionar o uso do porto».

Adaptadores para MQTT

Esta versión inclúe adaptadores que admiten o protocolo MQTT (Message Queuing Telemetry Transport), que se usa a miúdo nas aplicacións de Internet das cousas (IoT). Máis detalles - "Usando adaptadores MQTT en producións».

Fragmento

Arquitectura simplificada

Esta versión introduciu un xeito máis sinxelo e comprensible de crear un clúster, baseado en servidores individuais (a nivel de nodo) e non en áreas, como nas versións anteriores. Nova API - %SYSTEM.Cluster. O novo enfoque é compatible co antigo -un clúster baseado en áreas (nivel de espazo de nomes)- e non require cambios nas instalacións existentes. Máis detalles - "Elementos de Sharding"E"API de fragmentación».

Outras melloras de fragmentación:

  • Agora podes coshard (distribuír partes conectadas frecuentemente de dúas táboas nos mesmos fragmentos) dúas táboas calquera. Anteriormente, isto só se podía facer con táboas que tiñan unha clave de fragmento común. A partir desta versión, a sintaxe COSHARD WITH tamén se usa para táboas cun ID de sistema. Máis detalles - "Crear as táboas"E"Definición dunha táboa dividida».
  • Anteriormente, era posible marcar unha táboa como táboa de cluster só a través de DDL, pero agora tamén se pode facer na descrición da clase: a nova palabra clave Sharded. Máis detalles - "Definición dunha táboa dividida mediante a creación dunha clase persistente».
  • O modelo de obxectos agora admite a fragmentación. Os métodos %New(), %OpenId e %Save() funcionan con obxectos dunha clase cuxos datos se distribúen en varios fragmentos. Teña en conta que o código execútase no servidor ao que está conectado o cliente, non no servidor onde se almacena o obxecto.
  • Mellorouse o algoritmo para executar consultas de clúster. O Xestor de filas de fragmentos unificados pon en fila as solicitudes de execución a un conxunto de procesos, en lugar de lanzar novos procesos para cada solicitude. O número de procesos do grupo determínase automaticamente en función dos recursos do servidor e da carga.

Infraestrutura e implantación na nube.

Esta versión inclúe melloras na infraestrutura e as implementacións na nube, incluíndo:

  • Soporte de Tencent Cloud. InterSystems Cloud Manager (ICM) agora admite a creación de infraestruturas e a implantación de aplicacións baseadas en InterSystems IRIS en Tencent Cloud.
  • Soporte para volumes con nome en Docker, ademais de montaxes de enlace.
  • O ICM admite a escala flexible: agora pódense escalar as configuracións, é dicir, recrearse con máis ou menos nodos. Máis detalles - "Reaprovisionamento da infraestrutura"E"Redistribución de servizos».
  • Melloras na creación do teu propio contedor.
  • ICM admite a nova arquitectura de fragmentación.
  • O usuario predeterminado dos contedores xa non é root.
  • ICM admite a creación e implantación de redes privadas, nas que un nodo bastión conecta a rede privada coa rede pública e proporciona protección adicional contra ataques de denegación de servizo.
  • Soporte para o descubrimento de servizos a través de RPC seguro.
  • ICM admite a implantación multirrexión. Isto garante unha alta dispoñibilidade do sistema aínda que toda a rexión estea inactiva.
  • Capacidade de actualizar ICM e gardar información sobre sistemas xa implantados.
  • Modo sen contedores: agora ICM pode implementar directamente, sen contedores, configuracións de clúster en Google Cloud Platform, así como instalar Web Gateway en Ubuntu ou SUSE.
  • Soporte para combinar iris.cpf a partir de dous ficheiros. Isto axuda a ICM a lanzar InterSystems IRIS con diferentes configuracións dependendo do modo no que se estea executando a instalación. Esta capacidade facilita a automatización e compatibilidade de varias ferramentas de xestión de configuración, como Kubernetes.

Analítica

Reconstrúe selectivamente o cubo

A partir desta versión, InterSystems IRIS Business Intelligence (anteriormente coñecida como DeepSee) admite a creación de cubos selectivos: só unha medida ou dimensión. Podes cambiar a descrición do cubo e reconstruír só o que cambiou, mantendo todo o cubo dispoñible durante a reconstrución.

Conector PowerBI

Microsoft PowerBI agora admite traballar con táboas e cubos IRIS de InterSystems. O conector envíase con PowerBI a partir da versión de abril de 2019. Máis detalles - "InterSystems IRIS Connector para Power BI».

Vista previa dos resultados da consulta

Esta versión introduce un novo modo de vista previa ao crear táboas dinámicas en Analyzer. Deste xeito, pode avaliar rapidamente a corrección dunha consulta sen esperar aos seus resultados completos.

Outras melloras

  • Percorrer un global usando a función $ORDER en orde inversa (dirección = -1) agora é tan rápido como en orde cara adiante.
  • Rendemento de rexistro mellorado.
  • Engadido soporte para Apache Spark 2.3, 2.4.
  • Engadido soporte para o cliente WebSocket. Clase %Net.WebSocket.Client.
  • A clase de control de versións xestiona agora os eventos dos cambios na páxina do produto.
  • Listas brancas para filtrar solicitudes válidas a CSP, ZEN e REST.
  • Compatibilidade con .NET Core 2.1.
  • Rendemento ODBC mellorado.
  • Rexistro estruturado para facilitar a análise das mensaxes.log.
  • API para verificación de erros e avisos. Clase %SYSTEM.Monitor.GetAlerts().
  • O compilador de clases agora comproba que o nome global da declaración de almacenamento non supera a lonxitude máxima (31 caracteres) e devolve un erro se non o fai. Anteriormente, o nome global truncábase a 31 caracteres sen previo aviso.

Onde chegar

Se tes soporte, descarga a distribución da sección Distribucións en liña sitio web wrc.intersystems.com

Se só queres probar InterSystems IRIS - https://www.intersystems.com/ru/try-intersystems-iris-for-free/

Aínda máis fácil a través de Docker:

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

Webinar

O 7 de abril ás 17:00 hora de Moscova haberá un seminario web dedicado á nova versión. Estará a cargo de Jeff Fried (Director de Xestión de Produtos) e Joe Lichtenberg (Director de Mercadotecnia de Produtos e Industria). Rexístrate! O seminario web será en inglés.

Fonte: www.habr.com

Engadir un comentario