Skip to main content

New and Enhanced Features for InterSystems IRIS for Health 2019.1

This articlle describes the 2019.1 release of the InterSystems IRIS for Health™.

This release includes new capabilities and enhancements in the following areas:

Extended Maintenance and Continuous Delivery Releases of InterSystems IRIS for Health

InterSystems IRIS for Health 2019.1 is an extended maintenance delivery release of InterSystems IRIS for Health in contrast with InterSystems IRIS for Health 2019.2, which is a continuous delivery release. There are now two streams of InterSystems IRIS for Health releases:

  • Continuous delivery releases — These releases provide access to new features and are ideal for developing and deploying applications in the cloud or in local Docker containers.

  • Extended maintenance releases — These releases are less frequent than the continuous delivery releases but provide the increased stability of maintenance releases. These releases are ideal for large enterprise applications where the ease of getting fixes in maintenance releases is more important than getting early access to new features.

Continuous delivery releases are provided in container format and are available on Amazon Web Services (AWS), Google Cloud Platform (GCP), Microsoft Azure, Docker Hub, and the InterSystems WRC download site. You can run a continuous delivery release on any of these cloud platforms or a local system using Docker container. InterSystems does not provide maintenance releases for continuous delivery releases, but instead fixes issues in subsequent continuous delivery releases.

The initial major extended maintenance release is provided on all InterSystems IRIS Supported Platforms, including UNIX, Windows, the cloud platforms, and the Docker container. Following maintenance releases are provided on all server and cloud platforms in the InterSystems IRIS Supported Platforms, but are not provided on the Docker container. If you are on a Docker container, you can upgrade to a continuous delivery release.

If your application runs on a non-container platform, you can only use an extended maintenance release for that application but can consider using the continuous delivery releases for:

  • Evaluating new features and testing your custom code — this will reduce your upgrade costs when you upgrade to the next major release.

  • Using it for new projects that can be deployed in the cloud or in local containers.

In addition to providing fully-suppported releases, InterSystems provides access to preview software for developers who want to get an early look at new features.

Healthcare Interoperability

This release contains the following enhancements to healthcare interoperability:

  • FHIR STU3 Updates — FHIR STU3 now includes a standard mechanism for customizing the DTL classes that perform the SDA to FHIR STU3 and FHIR STU3 to SDA transformations. Built-in business processes that handle FHIR STU3 transformations are also available. See FHIR Support in InterSystems IRIS for Health for details.

  • HL7 Schema Editor Enhancements — The HL7 Schema Editor now provides a more user-friendly graphical user interface, allowing a user to edit HL7 schemas simply by dragging and dropping components. See “Defining a New Message Type and Structure Type” in Routing HL7 Version 2 Messages in Productions for details.

  • Source Control for HL7 Schemas — The Management Portal can be integrated with a third-party source control system to place HL7 schemas under version control. See “Overview of HL7 Schemas and Messages” in Routing HL7 Version 2 Messages in Productions for details.

System Interoperability Enhancements

This release contains new interoperability capabilities that speed configuring and troubleshooting of productions. These include the following:

  • Interface Maps — Users can search for and view all the routes that a message can take within a production. See “Viewing Interface Maps” in Monitoring Productions for details.

  • Search for Interface References — Users can search to find where production components are referenced by other production components. See “Finding Interface References” in Monitoring Productions for details.

  • Data Transformation Testing Enhancements — When testing data transformations, users can unit test record maps in the Data Transformation Editor by allowing raw text input in the Test Transform dialog and can enter values for aux, context, and process system objects as if the data transformation was invoked with these objects instantiated. See “Using the Transformation Testing Page” in Developing DTL Transformations for details.

  • DTL Editor Enhancements — The usability of the Data Transformation Editor has been enhanced with the addition of switch/case actions, the ability to group actions together, the ability to collapse/expand groups, and the ability to add comments to the data transformation. See “Adding a Switch Action”, “Working with Groups of Actions”, and “Adding a Comment Action” in Developing DTL Transformations for details.

  • Unit Testing of Routing Rules — This enhancement introduces a unit testing capability to the Rule Editor, whereby a user can feed a message through a business rule and view rule execution results without having to run the message through the entire production. See “Testing Routing Rules” in Developing Business Rules for details.

  • Download Multiple Messages to Local Computer — Users can select multiple messages in the Message Viewer and download them to their local computer. See “Exporting Messages” in Monitoring Productions for details.

  • Download Event Logs to Local Computer — Users can download event logs to their local computer. Previously event logs could only be downloaded to the server. See “Introduction to the Event Log Page” in Monitoring Productions for details.

  • Rule Editor Enhancements — The usability of the Rule Editor has been enhanced with the ability to add comments to a business rule and the ability to view and edit a Data Transformation (DTL) directly from the Rule Editor when the given DTL is used in a business rule. See “Selecting the Transformation and Target of a Send Action” in Developing Business Rules for more details about opening the DTL from the Rule Editor.

  • Queue Wait Alert Modification — The Queue Wait Alert setting now specifies the length of time that a message can wait in the business host’s queue or be the active message before an alert is triggered. Previously, the setting only applied to messages in the queue, not the active message. See the “Queue Wait Alert” setting in Configuring Productions for details.

  • Restrict Access to System Default Settings — Administrators can control whether users can create, edit, or delete system default settings. See “Security for System Default Settings” in Managing Productions for details.

  • Export Productions to Local Computer — Users can export productions to their local computer. Previously productions could only be exported to the server. See “Exporting a Production” in Configuring Productions for details.

  • Deploy Productions from Local Computer — Users can deploy productions from their local computer. Previously productions could only be deployed from the server. See “Deploying a Production on a Target System” in Developing Productions for details.

  • Enhanced Navigation from Production Configuration Page — Links have been added to the tabs of the Production Configuration window to quickly open related items in a separate window. On the Queue tab, clicking the message ID opens a window to display the visual trace for the message. On the Messages tab, clicking the Session ID opens a window to display the visual trace of the message. On the Jobs tab, clicking the message ID opens a window to display the visual trace for the message, and clicking the Job ID opens a window to display the Process Details for the job.

  • Business Host Wizard Enhancements — To enhance user productivity, additional options have been added to the wizards used to create business hosts. Users can use the business host wizards to automatically assign system default values when fields are left blank and to define a package prefix for auto-generated routing rules. See “Wizard Options” in Configuring Productions for details on new options in the business host wizards.

InterSystems Cloud Manager Enhancements

InterSystems Cloud Manager (ICM) provides you with a simple, intuitive way to provision cloud infrastructure and deploy services on it. In this release ICM has the following enhancements:

  • Availability Zone Support — This enhancement allows you to span multiple zones within a given region with cloud providers that provide this facility. For more information, see “Deploying Across Multiple Zones” in the InterSystems Cloud Manager Guide.

  • Asynch Mirror Support — This enhancements lets you configure asynch mirror members. For more information, see “Mirrored Configuration Requirements” in the InterSystems Cloud Manager Guide.

  • Containerless Support — This enhancement allows you to use ICM to deploy noncontainerized InterSystems IRIS for Health instances from installation kits. For more information, see “Containerless Deployment” in the InterSystems Cloud Manager Guide.

  • Service Discovery — Service Discovery mode gives multiple users in any networked locations management access to a single ICM deployment. For more information, see “Sharing ICM Deployments” in the InterSystems Cloud Manager Guide.

Client Languages Enhancements

This release contains the following enhancements and performance boosts to access InterSystems IRIS for Health using client languages:

  • IRIS Native API for .NET — Provides low-level access to the underlying global storage from .NET applications. For more information, see First Look: InterSystems IRIS Native API for .NET.

  • Relational access for Python.

  • Dynamic Java Gateway.

  • Shared memory support for Java Gateway — Support for shared memory connections has been extended to Java Gateway. For more information, see “Using Shared Memory Connections” in Using Java with the InterSystems JDBC Driver.

  • Hibernate — This release is compatible with Hibernate 5.2 or 5.3. For more information, see “Hibernate Support” in the InterSystems Implementation Reference for Java Third Party APIs.

  • Bulk loader in Java — The bulk loader is a new utility that can be used for massive data transfer from one data source to another. For more information, see “Using the Simple Data Transfer Utility” in Using Java with the InterSystems JDBC Driver.

Improved Scalability and Operations for Sharded Clusters

An InterSystems IRIS for Health™ sharded cluster partitions both data storage and caching across a number of servers, providing flexible, inexpensive performance scaling for queries and data ingestion while maximizing infrastructure value through highly efficient resource utilization. This release provides improved scalability and operations for sharded clusters including the following:

  • Scalability Enhancements — Support a broader set of scalability scenarios for SQL. Data nodes can be now be added to a sharded cluster at all times, irrespective of the database schema and shard keys used. Furthermore, after nodes are added, data can be rebalanced across the available nodes to ensure an even distribution of data and, subsequently, work to improve overall cluster performance. For more information, see “Rebalance Sharded Data Across Additional Shard Data Servers” in the Scalability Guide.

  • Management Portal Enhancements — New page to review and configure the sharded cluster’s layout.

  • API for Backups — A new API for coordinating the creation of backups of a sharded cluster’s data. For details, see “Coordinated Backup and Restore of Sharded Clusters ” in the Scalability Guide.

  • Bulk Loader Support — New Bulk Loader client utility also optimizes ingestion of large datasets into a sharded cluster, For more information, see “Using the Simple Data Transfer Utility” in Using Java with the InterSystems JDBC Driver.

SQL Enhancements

This release contains significant enhancements to SQL usability and performance including the following:

  • Auto-parallel queries — This release provides improved efficiency by automatically using parallel queries where appropriate, significantly improving throughput for machines with many CPU cores. For more information, see “System-Wide Parallel Query Processing” in the InterSystems SQL Optimization Guide.

  • SQL Usability Enhancements — The new TUNE TABLE command tunes a table based on the data currently in the table and is available from the SQL shell. For more information, see “TUNE TABLE” in the InterSystems SQL Reference.

    In addition, this release includes several other SQL shell enhancements, such as the ability to browse the schemas, tables, and views defined in or accessible from the current namespace. For more information, see “Using the SQL Shell Interface” in Using InterSystems SQL.

    ShowPlan function and EXPLAIN command — Now display sub-plans for composite plans such as parallel and/or sharded queries. For details, see Show Plan.

  • Comment Options — This release supports Comment Options specified in the SQL code that cause the Optimizer to override a system-wide compile option for that query. For more information, see “Comment Options” in the InterSystems SQL Optimization Guide.

  • General performance enhancements — With each release, InterSystems includes various enhancements to its SQL engine that are 100% transparent from the application’s perspective. For 2019.1, an especially broad array of improvements went into the query optimizer and subsequent code generation that define your SQL query performance. Combined with the now automated parallel query execution, InterSystems IRIS for Health SQL users should see a noticeable to significant improvement in throughput, depending on their query set.

Analytics Enhancements

This release contains the following analytics enhancements:

  • Partial Date type in Business Intelligence — Partial dates allow you to specify incomplete dates, such as just a year or a year and a month. For more information, see “Partial Dates” in Defining Models for InterSystems IRIS Business Intelligence.

  • %SQLRESTRICT dimension for cubes — This new cube dimension allows run-time restrictions on an MDX query via a SQL SELECT statement or WHERE clause. For more information, see “%FILTER Clause” in the InterSystems MDX Reference.

  • Pivot Table Headers — When a large pivot table requires scrolling to see all columns and/or rows, the header columns and rows remain in place so that the labels continue to be visible as you scroll.

  • Work Queue Manager replaces Agents — The Work Queue Manager is used in InterSystems IRIS for Health Business Intelligence to distribute work to multiple concurrent processes in order to manage performance. The Work Queue Manager is a standard component of InterSystems IRIS for Health. For more information on the Work Queue Manager, see Using the Work Queue Manager .

System Performance and Capabilities

This release contains the following system security, performance, and efficiency enhancements:

  • Substantial scalability and performance improvements, particularly for large-scale Non-Uniform Memory Access (NUMA) systems. This includes changes to improve scalability in statistics tracking and global buffer management, performance improvements in use of subscript level mapping, and more effective optimizations to avoid traversing global pointer blocks.  To enable these improvements there are minor changes to memory utilization and system statistics described in the Upgrade Checklist.

    These enhancements increase the amount of memory allocated for global buffer metadata by 64 bytes per buffer on Intel systems and by 128 bytes per buffer on IBM Power systems. For example, with 8K buffer sizes, the shared memory allocated for a global buffer increases by 0.75% on Intel systems and by 1.5% on IBM Power systems. These enhancements also cause minor changes is in statistics displayed by utilities and the Management Portal.

  • Key Management Interoperability Protocol (KMIP) — In this release, InterSystems IRIS for Health™ can be a client to an enterprise key management server and use the Key Management Interoperability Protocol (KMIP) to store and retrieve keys on the server. KMIP, an OASIS standard, gives you the power of centralized key management. You can use keys from a KMIP server to encrypt data at rest — for both database encryption and data-element encryption. They are available for all the same activities as keys from key files, such as journal file encryption. InterSystems IRIS for Health also allows you to copy keys from the KMIP server to local files, so that there can be local backup copies. For more information, see “Managing Keys with the Key Management Interoperability Protocol (KMIP)” in the Security Administration Guide.

    Note:

    InterSystems IRIS for Health does not support KMIP on the macOS platform.

  • DataMove — Enables you to move data from one database to another, revise the mappings to access the data, and delete the data from its old location.

  • Support for large JSON strings.

  • IRIS Studio support for other InterSystems products.

  • Support for Microsoft Integrated Windows Authentication for HTTP Connections (SPNEGO) — This new enhancement allows %Net.HttpRequest to use windows based authentication over HTTP 1.1 to establish a connection to a secure server. Users can provide credentials or, if no credentials are provided, the system will try to authenticate using the current logged in context. Client may initiate a connection to the server with an "Authorization" header or try to establish a connection without that header and process the 401 status code with its associated with WWW-Authenticate header and then respond with the appropriate authentication mechanism. The supported authentication schemes are Negotiate (Kerberos & NTLM), NTLM, and Basic. For more information see “Providing Authentication” in Using Internet Utilities.

  • Journaling efficiency improvements.

  • Async I/O efficiency improvements.

New Features in 2019.1.1 Release

This section describes new features that are only available in the InterSystems IRIS for Health 2019.1.1 maintenance release and later maintenance releases. If you are running release 2019.1.0, you do not have these features.

InterSystems API Manager

This release includes the InterSystems API Manager (IAM) enabling you to monitor and control traffic to and from your web-based APIs.

If you are building service-oriented application layers, you are very likely to find the number of APIs you are using quickly rise. The more distributed your environment the more critical it becomes to properly govern and monitor your API traffic. The API Manager enables you easily route all your traffic through a centralized gateway and forward API request to appropriate target nodes. This enables you to:

  • Monitor all your API traffic in a central spot.

  • Plan, document, and update the list of APIs you are using and the servers that provide them.

  • Identify issues before they become critical.

  • Control API traffic by throttling throughput, configuring allowed payload sizes, whitelist and blacklist IP addresses and domains, and quickly taking an endpoint into maintenance mode.

  • Onboard internal and external developers by providing interactive API documentation through a dedicated and customizable developer portal.

  • Secure your API's in a central place.

The API Manager is interoperable, reliant, intuitive, and scalable. You can perform all configuration using a simple web-based user interface, but can also configure the API Manager using API calls, which makes it easy to perform remote deployments,

The API Manager is released in its own container. You can configure the API Manager as a cluster of multiple nodes, but even a single node can handle the load of multiple tens of thousands of requests per second.

For more information, see Using the InterSystems API Manager.

Note:

The API Manager is only available in a Docker container distribution. You can use it with an InterSystems IRIS for Health system that is installed on any of the InterSystems IRIS Supported Platforms, including UNIX, Windows, the cloud platforms and Docker container.

X12 Element Validation in Interoperability Productions

This release provides enhanced X12 validation. In previous releases, you could only validate that the required segments are in the correct order and that there are no segments present that are prohibited, but there was no mechanism to validate the contents of the segment. This enhancements enables you to validate that:

  • Required fields are present and that all fields are allowed by the schema.

  • Number of fields within a segment and how they are repeated are allowed by the schema.

  • Datatypes for fields and components are correct.

  • Field values conform to the code tables specified.

  • Field and components conform to length restrictions.

For details, see “Validation” in Routing X12 Documents in Productions.

Feedback