InterSystems has implemented a broad set of MultiValue extensions for its Caché ® multidimensional database. These extensions enable the migration of MultiValue applications to Caché and bring the full range of Caché object and SQL development technologies to MultiValue developers. The result: your existing MultiValue investments are preserved, you gain a broad spectrum of highly scalable deployment options, and your developers can combine the best of MultiValue, object, relational, and technologies to extend existing applications and build new ones.

InterSystems – Partner of Choice

Since 1978, InterSystems Corporation has been the partner of choice of professional application developers around the globe. Our history has closely paralleled that of the MultiValue community: both have focused on rapid application development and cost-effective deployment; both have enabled a community of application software companies to build the most feature-rich and successful products in their markets; and both have prospered by delivering practical technology and consistent value, favoring substance over marketing hype.

A major turning point for InterSystems was the 1997 introduction of Caché, which combined our time-tested multidimensional database technology with the latest object, relational, and development technologies. The launch of Caché transformed InterSystems’ market image from “old” to “new” and instantly made applications based on our technology more acceptable. Caché enabled our existing partners to preserve their existing application investments and modernize those applications for client/server and Web environments. Equally important, Caché has enabled InterSystems to attract a new generation of developers who are building new applications or migrating from underperforming relational databases. That combination – taking care of existing partners and providing state-of-the-art technology for new ones – has made InterSystems the second largest embedded database vendor (bigger than Microsoft and IBM) according to an IDC report published in 2006. Today, Caché is the database of choice for a fast growing community of application partners in healthcare, finance, government, and a wide variety of other vertical markets. It has also been embraced by technologically sophisticated enterprises, in industries such as financial services and telecommunications, who build their own applications.

Being the partner of choice requires more than great technology: it requires a total commitment to making your partners successful. As a consequence, InterSystems supports its partners in all areas of business– be it by transferring the necessary know-how toyour development team, preparing your support staffto enable rapid deployments and maximum systemavailability, or working with your marketing and salesteams to fully leverage Caché in your growth plans.

As a consistently profitable and 100% privately held company, InterSystems’ success does not depend on venture capitalists or the stock market. Instead, we can focus on making our partners successful, knowing that as their businesses prosper, ours will too. This approach has gives InterSystems the stability to be a reliable long-term partner for our customers in 88 countries.

Caché – A Multidimensional Database

Caché is a high-performance data management system and rapid application development environment. It is based on a transactional multidimensional database model that enables complex real-world data to be stored much more efficiently than the more limited two-dimensional model of relational databases. In addition, Caché enhances its multidimensional storage with advanced object technology and powerful SQL capabilities that are optimized for the rapid creation of modern transaction processing applications.

Caché Unified Data Architecture
Caché enables developers to describe, access, and manipulate data through a number of different data access methods including object, SQL, multidimensional, and (now) MultiValue access. No matter how data structures were originally modelled – as an object class hierarchy or as SQL tables or as multidimensional arrays or as MultiValue files – once they are defined in the Caché data dictionary, developers can use all of these access methods. In fact, because all of these access methods can be used simultaneously with the same data, developers can combine them to achieve the best balance of productivity and performance for each project.

Caché Data Server
When it comes to transaction processing, performance is critical. Caché’s data server technology enables you to scale applications up to serve tens of thousands of users without sacrificing speed. (Of course, Caché is equally at home running one or two-user applications, too.) Caché also supports a wide variety of deployment options, including distributed and grid configurations, for maximum availability.

Caché Application Server
When it comes to rapid development and connectivity, Caché’s application server features give developers all the flexibility and power they need. Application logic can be either implemented in the built-in Caché languages Caché ObjectScript and Basic, in external languages like Java, C++, or in connected technologies like .NET or EJB.

Caché Web Technology
When it comes to enabling the creation of sophisticated high-performance Web applications, Caché is in a class by itself. Caché Web technology brings all of the capabilities of Caché to the demanding environment of the Internet, where rapid development and adaptability are as important as database speed and scalability. Whether you are implementing transactional Web applications or just accessing information via the Internet, the focus is on rapid development and maximum runtime performance.

Caché Service-Oriented Architecture
Many organizations are adopting a service-oriented approach to building new applications, in order to create more flexible and long-lived systems. Caché fully supports this approach with built-in support for key SOA and Web Services technologies, including XML, SOAP, and WSDL.

Caché Automatic Operations
Because talented systems management staff is difficult to find and expensive to keep, we have focused on making Caché operations as automatic as possible. We assume that our sites will not have a database administrator (the vast majority do not) and as a result we have built a philosophy of autonomous operations into the core of the system.

Caché is available for Windows, OpenVMS, Linux, and major UNIX platforms (in single server, multi-server, and cluster configurations) and it is deployed on systems ranging from two to over 10,000 simultaneous users.

Moving to Caché

To enable migration of MultiValue applications to Caché, InterSystems has enhanced Caché with a wide range of MultiValue capabilities. The key ones include:

MultiValue Basic – We have added MVBasic as a native programming language in the Caché compiler and virtual machine. A wide range of MultiValue syntax (extended to enable object programming) is supported.

MultiValue Storage – Caché provides native storage of MultiValue files in Caché databases, based on the ability of our multidimensional storage engine to store multiple attributes within a single node.

MultiValue Dictionary – Caché includes a MultiValue dictionary along with dictionary import tools for various MultiValue implementations. In addition to supporting MultiValue access, Caché automatically creates a set of class/table definitions that enable immediate object and SQL access to existing MultiValue data.

MultiValue Query Language – Caché implements the MultiValue Query language within MultiValue Basic code as well as in stand-alone queries.

MultiValue Aware Caché Studio –Caché Studio has been extended to “understand” both MultiValue Basic and MultiValue Query Language syntax. As a result, Studio productivity features such as syntax coloring and continuous syntax checking help make Caché a powerful development environment for extending MultiValue applications.

The Migration Process
In addition to the MultiValue capabilities we’ve added to Caché, we have built a number of utilities to help ease the migration of MultiValue applications. Although the move from existing MultiValue systems to Caché is not yet (and for complex applications probably never will be) 100% automatic, it gets easier with each migration we do. That is due, in part, because we are willing to working one-on-one with MultiValue developers so that we can better understand the migration process, and enhance Caché as needed to make it easier. Migrating an existing MultiValue application to Caché should be no more difficult than moving it to any other MultiValue platform.

Caché for MultiValue Developers

Once a MultiValue application has been migrated to Caché, all of Caché’s development technologies are available to enhance or extend it:

  • SQL: All MultiValue data in Caché is automatically available through SQL, ODBC, and JDBC. This immediately enables the use of relational report writers or front-end tools and facilitates sharing information with applications that are based on older relational database technology.
  • Objects: At the same time, all MultiValue data structures are also available as objects within Caché and from outside the system through a variety of object protocols. This boosts developer productivity and enables the use of object-oriented modelling tools.
  • CSP: Caché Server Pages technology delivers rapid development and adaptability as well as high performance and scalability for Web applications. CSP eliminates the extra processing layers and system-level programming that make Web development difficult and Web applications sluggish. Compatible with off-the shelf tools, CSP is the simplest, quickest way to create super fast, massively scalable Web applications.
  • Zen: InterSystems Zen is an extension of AJAX (asynchronous JavaScript and XML) technology that enables the extremely rapid development of Web applications that have highly responsive and rich user interfaces. It eliminates the extra processing layers and system-level programming that make Web development difficult and Web applications sluggish. Zen is the simplest, quickest way to create super-fast, massively scalable, and richly functional Web applications.
  • Java: With three different ways of connecting to Java, Caché is the ideal high-performance database for Java applications. Caché data can be accessed with SQL via JDBC, and Caché classes can be projected as Java classes or as Enterprise Java Beans. Projections are automated, so Java developers can gain data persistence without a lot of tedious coding.
  • .NET: Because of its open and flexible data access, Caché works seamlessly with .NET. There are many ways of connecting Caché to .NET clients via objects, SQL, XML, or SOAP. Developers can create applications with the technologies they prefer – all of them will benefit from Caché’s superior performance and scalability.
  • XML, SOAP, and Web Services: As enterprises strive to streamline their business processes, there is an ever-increasing push to create applications that can interact with each other. One popular approach is to have applications share data via XML and functionality via Web services. Caché has built-in XML and Web service capabilities, eliminating the need for a separate application server and enabling rapid development of Web service applications.

Running Caché MultiValue Applications

Once your MultiValue application is running on Caché, you will enjoy the combination of high performance, rock solid reliability, and low cost of ownership that have made Caché so popular.

  • Platform Choices –Caché offers a wide variety of deployment choices, including Windows, Linux, Mac OS X, OpenVMS, and major UNIX platforms. The system offers excellent scalability on multiprocessor (SMP) computers and also supports multi-server (clustered and distributed) configurations.
  • Automatic Database Protection –Caché provides automatic safeguards against data loss in the event of system crashes. Both physical (on the disk) and logical (transactional) integrity are preserved, with automatic recovery on restart.
  • High Availability –Caché includes numerous features for continuous operation, from live system backup (while applications are running and databases are changing) to journaling, shadowing, and rapid failover
  • Advanced Security –With concerns about security and privacy at an all time high, we have invested in the most advanced security facilities of any mainstream database. They offer both system-level protection, such as built-in encryption and strong authentication, as well as technologies that developers can use to build sophisticated security into their applications.
  • Simple System Management –Caché simplifies system administration in two ways: by automatically handling many management chores that with other systems require human attention; and by providing powerful browser-based management utilities that speed administration of systems whether they are across the room or across the country.
  • Nonstop Support –InterSystems only offers one type of support: 24 hours per day, seven days per week. With many thousands of mission critical systems running on Caché around the world, nothing less makes sense.

As you can see, the combination of MultiValue and Caché opens up a whole new world of flexibility and productivity.