Scale Without Sacrificing Performance
At the heart of InterSystems IRIS is an ultra-high-performance, multi-model database engine with a unique architecture enabling both vertical and horizontal scalability.
Unified, Multi-Model Database
Within InterSystems IRIS, data can be modeled and stored as tables, objects, or multidimensional arrays. Different models can seamlessly access data – without the need for performance-killing mapping between models. All three access methods can be simultaneously used on the same data with full concurrency.
All data in the InterSystems IRIS database is stored in rich, efficient, multidimensional arrays. InterSystems IRIS allows direct access to and manipulation of its native multidimensional arrays. Through direct multidimensional access, InterSystems IRIS supports the Key/Value and No SQL paradigms.
No declarations, definitions, or allocations of storage are required for InterSystems IRIS’ native data structures. They simply pop into existence as data is inserted. Therefore, InterSystems IRIS can easily handle dynamic data types such as XML or JSON.
The InterSystems IRIS object model is based upon the ODMG (Object Database Management Group) standard and supports many advanced features, including multiple inheritance.
InterSystems IRIS supports SQL access through ODBC and JDBC (using a pure Java-based driver). It also provides a Relational Gateway to facilitate importing data from relational databases.
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 bit-map 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 the use of parallel SQL queries. But big multi-core machines can be expensive and eventually, the cost to achieve performance gains 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, if possible, 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 applications.
InterSystems IRIS enables horizontal scaling of data through sharding – splitting up very large databases onto multiple machines. Queries are 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.