InterSystems IRIS 2019.1 Release
In mid-March, a new version of the InterSystems IRIS 2019 data platform was released.
We present to your attention a list of changes in Russian. A complete list of changes and Upgrade Checklist in English can be found here .
Enhancements to InterSystems Cloud Manager
InterSystems Cloud Manager is a utility for easily deploying InterSystems IRIS installations in the cloud. In the 2019.1 release, the following features appeared in ICM:
- Support for availability zones. Creation of installations occupying several zones within the same region. More details - “ Deploying Across Multiple Zones ”.
- Asynchronous mirror support. The inclusion of asynchronous mirror nodes in the installation configuration. More details - “ Mirrored Configuration Requirements ”.
- Install InterSystems IRIS without using containers directly from the installation package. More details - “ Containerless Deployment ”.
- Support for service discovery. Read more - Sharing ICM Deployments .
The release includes new modules for working with InterSystems IRIS:
- IRIS Native API for .NET - low-level access to globals from .NET applications. More details - First Look: InterSystems IRIS Native API for .NET .
- Relational access from Python - support for using pyodbc. More details - “ Support for pyodbc Python ODBC bridge ”.
- Dynamic Java Gateway - calling Java programs from InterSystems IRIS without creating proxy classes. More details - Using Dynamic Object Gateways .
- Using shared memory when working with Java Gateway.
- Compatible with Hibernate 5.2, 5.3. More details - “ Hibernate Support ”.
- New Java utility for bulk data loading. More details - “ The Simple Data Transfer Utility ”.
Improved scalability and distributed cluster management
The distributed cluster in InterSystems IRIS shares data and cache among multiple servers, providing flexible, low-cost scalability for querying and adding data. This release includes the following improvements:
- Support for more scripts for SQL. Nodes can now be added to the cluster at any time, regardless of the database schema and keys used. After adding a node, the data can be rebased (offline). More details - “ Rebalance Sharded Data Across Additional Shard Data Servers ”.
- A new page has appeared in the Management Portal with an overview and cluster configuration.
- New API for creating a consistent cluster backup. More details - “ Coordinated Backup and Restore of Sharded Clusters ”.
- The new Java utility for mass data loading is also optimized for working with a cluster.
This release includes significant improvements in the speed and ease of use of SQL.
- Auto-parallelize matching queries. More details - “ System-Wide Parallel Query Processing ”.
- New TUNE TABLE command to tune a table through the SQL interface. More details - “ TUNE TABLE ”.
- Improvements to SQL Shell, in which you can now view schemas, tables, and views defined or available in the current area. More details - “ Using the SQL Shell Interface ”.
- Viewing a query plan now shows subplans of master plans for parallelization and cluster queries.
- You can now add options to the query text to override the SQL system settings for this query. More details - “ Comment Options ”.
- InterSystems includes various SQL-invisible enhancements to the application in each release. In 2019.1, especially many such improvements were added to the query optimizer and code generator. Together with automatic query parallelization, users should significantly increase the performance of applications using InterSystems IRIS SQL.
- Ability to set partial dates in Business Intelligence. For example, specify a date for which only the year or year and month is known. More details - Partial Dates .
- New% SQLRESTRICT construct for filtering data through SQL inside an MDX query.
There are many enhancements in this release that simplify the setup and troubleshooting of products:
- Search and view all the paths that a message can go through in a product. More details - “ Viewing Interface Maps ”.
- Finding places where product components reference other product components. More details - “ Finding Interface References ”.
- Testing data transformations. In the testing dialog, you can now set values for aux, context, and process objects, as if the conversion were called with initialized objects. Read more on Using the Transformation Testing Page .
- DTL editor. New actions - switch / case . Ability to group actions and add comments to transformations.
- Now you can send a message to the rule and see the result of the execution without running the message for all products. More details - “ Testing Routing Rules ”.
- Ability to download messages from Message Viewer to a local computer. More details - “ Exporting Messages ”.
- Ability to download log events to the local computer. More details - “ Introduction to the Event Log Page ”.
- In the rule editor, you can now add comments to the rules and open and edit the transformations that are used in the edited rule.
- The Queue Wait Alert setting now indicates the time after which for a message in the product line or active message to generate an alert. Previously, this timeout applied only to messages in the queue of a product item. More details - Queue Wait Alert .
- Restricting access to System Defaults. Administrators can configure users to edit, view, or delete default settings. More details - “ Security for System Default Settings ”.
- Ability to export products to a local computer. More details - “ Exporting a Production ”.
- It is possible to deploy products from a local computer. More details - “ Deploying a Production on a Target System ”.
- Advanced navigation on the product settings page. Links were added to bookmarks on the product settings page to quickly open the corresponding elements in a separate window. On the Queue tab, clicking on the message number opens the trace. On the Messages tab, clicking on the session number opens the trace. On the Processes tab, clicking on the message number opens a trace, and on the process number, a window with process details opens.
- New options in the Add Business Product Item Wizard. Now users can automatically assign system defaults if the fields are left blank and set a packet prefix to generate routing rules. More details - “ Wizard Options ”.
System performance and features
- Significant improvements in scalability and performance, in particular for large systems with unevenly distributed memory access (NUMA). These improvements include scalability changes when collecting statistics and managing the global buffer, performance improvements in displaying globals at the index level (subscript-level mapping), and other optimizations to avoid bypassing pointer blocks. To make these improvements possible, changes were made to the system statistics and memory usage, described in the checklist of this release. These improvements increase the size of memory allocated for global buffer metadata by 64 bytes per buffer on Intel systems and 128 bytes on IBM Power. For example, for a buffer of 8 kilobyte blocks, the growth will be 0.75% for Intel systems. These improvements also led to small changes in the display of statistics in utilities and the Management Portal.
- Key Management Interoperability Protocol (KMIP). Starting with this release, InterSystems IRIS can be a client of an industrial key management server. KMIP, the OASIS standard, provides the power of centralized key management. You can use KMIP server keys to encrypt both the database and individual elements. KMIP server keys are available in the same way as keys stored in files, for example, to encrypt log files. InterSystems IRIS supports copying keys from the KMIP server to local files to create local backups. Read more - “ Managing Keys with the Key Management Interoperability Protocol (KMIP) ”
- New DataMove utility for transferring data from one database to another, while changing the settings for displaying globals. More details - Using DataMove with InterSystems IRIS .
- Support for strings longer than 3'641'144 in JSON objects.
- Support for connecting IRIS Studio with Caché and Ensemble.
- Support for the Microsoft Integrated Windows Authentication (SPNEGO) protocol for HTTP connections. Now% Net.HttpRequest can use Windows authentication via HTTP 1.1 to connect to a secure server. Users provide access details, or% Net.HttpRequest will try to use the current context. Supported authentication schemes are Negotiate (Kerberos & NTLM), NTLM, and Basic. More details - Providing Authentication .
- Improved logging and asynchronous I / O performance.
For users who support release 2019.1, it is available for download in the Online Distributions section of wrc.intersystems.com .
Everyone can try the new version by installing the container with Community Edition, which is available on dockerhub.com.