Scale Without Sacrificing Performance
At the heart of InterSystems IRIS® is an ultra-high-performance, multi-model, transactional-analytical database engine with a unique architecture enabling extremely high performance at scale with superior resource efficiency.
Unified, Multi-Model Database
With InterSystems IRIS, data is stored once and can be accessed as tables, objects, documents, key-value, or multidimensional arrays. Developers can seamlessly access data as any model type without the need for performance-killing abstraction layers or replication between models. All access paths can be simultaneously used on the same single copy of the data with full concurrency.
Multidimensional Access
All data in InterSystems IRIS is stored as rich, efficient, multidimensional arrays. InterSystems IRIS allows direct access to and manipulation of these native multidimensional arrays.
No upfront declarations, definitions, or allocations of storage are required for InterSystems IRIS native data structures.
Object Access
The InterSystems IRIS object model is based upon the ODMG (Object Database Management Group) standard and supports many advanced features, including multiple inheritance.
The built-in InterSystems IRIS scripting languages ObjectScript and Python directly manipulate InterSystems IRIS objects. Object classes can also be exposed as other object types, including Java, JavaScript, .NET, and C++. At the click of a button, InterSystems IRIS classes can be automatically projected as XML or JSON. As a result, InterSystems IRIS objects are readily available to every commonly used object technology.
SQL Access
InterSystems IRIS supports SQL access through its native server-side languages as well as ODBC and JDBC (using a pure Java-based driver). It also provides a Relational Gateway to facilitate importing data from other
relational databases.
High-Performance SQL
SQL is the lingua franca for querying InterSystems IRIS data across all data models. Because of its efficient data architecture, InterSystems IRIS provides inherently faster SQL performance than other database technologies. It supports traditional indexes as well as bitmap and bit-slice indexes that can be used with real-time transactional data.
Vertical and Horizontal Scalability
InterSystems products enable vertical scaling (taking advantage of bigger, multi-core machines) through highly efficient memory management and fully automated use of parallel SQL processing. Big multi-core machines can be expensive, and eventually the cost to achieve further performance gains through vertical scaling may become prohibitive. That is why we provide unique technology for horizontal scaling.
Enterprise Cache Protocol (ECP) allows you to horizontally scale the number of users by caching data on application servers. User queries are satisfied from the local application server cache, only retrieving data from the data server if necessary. ECP automatically synchronizes the data and is entirely transparent, both to your users, and to your application code.
InterSystems IRIS enables horizontal scaling of data through “data sharding” – splitting up very large databases onto multiple machines. Queries are distributed automatically to run in parallel on each shard and the results are aggregated before being returned to the user.
Sharding and ECP can be used simultaneously, so your applications can handle both large volumes of data and a large number of users, scaling for both dimensions independently.
Embedded Analytics
To realize the full potential of your data, you’ll need to analyze it through insightful querying, business intelligence and machine learning. InterSystems IRIS not only supports managing your data for transactional applications, but also offers a broad set of embedded analytics capabilities that execute directly on incoming data in real time to help you draw powerful insights and execute real time programmatic actions in response.
InterSystems IRIS Adaptive Analytics enables business users to perform self service analytic querying directly on the data. It allows organizations to create a consistent semantic layer and transparently creates acceleration structures based on workload analysis.
InterSystems IntegratedML empowers application developers to easily develop and use machine learning models in their applications using automated machine learning that requires the use of just a few SQL-like statements. This offloads and complements the work of data scientists, who can easily refine the machine learning models and embed them directly within InterSystems IRIS applications through its native ML runtime support.
InterSystems IRIS also embeds native business intelligence, Natural Language Processing (NLP) and Full-Text Search technology for use in applications, significantly simplifying the overall architecture and on-premise or cloud deployments.
All of these capabilities are complemented by broad support for common standards and third-party technologies such as Apache Spark, ensuring customers can use their tools of choice to tap into data managed by InterSystems IRIS.