The Two Key Technologies For Soa Success: Ensemble
The Two Key Technologies For Soa Success: Ensemble
Software services, in a service-oriented architecture Included among basic features, such as data transfor-
(SOA), can be used again and again in many different mation, asynchronous and synchronous processing,
business processes, making for a very flexible, effi- content-based routing, and distributed operation and
cient, and vibrant business and information technolo- management, most SOA platforms, including
gy infrastructure. Providing, of course, that IT has Ensemble, support Web services standards such as
the right platform in place for modeling business XML, WSDL, HTTP, and SOAP. And most, but not
processes and implementing the SOA. Using the all, support the business process execution language
InterSystems Ensemble product as an example, this (BPEL) standard for orchestrating services into busi-
paper examines two key technologies that are ness processes. These standards, and others, enable
absolutely essential for successful SOA implementa- software developers to express service functionality,
tion, but missing from most SOA development methods to access those functions over a network, and
platforms. business process workflow, in an abstract format
usable by any client wedded to the same standards.
This level of abstraction is fine for IT environments
Abstraction and Data Persistence implementing an SOA with new services written from
the start using Web services standards. But for most
InterSystems Ensemble provides a single, comprehen- IT shops, with a rich legacy of critical business applica-
sive, and architecturally consistent solution for devel- tions and data that are not Web services enabled, it
oping, integrating, orchestrating, deploying, and does not go far enough. It leaves IT without an easy
managing services in a service oriented architecture. way to bring the vast majority of its assets into an
Layered on top of the infrastructure you currently SOA and the business unable to reap the benefits.
have in place, Ensemble provides all the functionality And standards compliance alone does not isolate the
found in enterprise service bus (ESB) products com- SOA platform or the SOA itself from the effect of
monly used for SOA implementation. But Ensemble changing technology and standards.
goes further by providing two innovative and essential
technologies that should be part of any effective SOA What is needed is the ability to abstract and represent
platform – a comprehensive application and data the entire range of application functionality and data
abstraction facility, and an integrated object and meta- stores found in most IT environments into common
data repository. forms that can then be shared out in whatever format
is best suited to the task at hand. Abstraction reduces
Abstraction technology hides the nature, variety, and the complexity typically associated with integration
complexity of the underlying interfaces and data that projects (integration of services, in this case), enables
are part of the SOA implementation. The integrated incorporation of services and data as needed into dif-
repository, and the data persistence it provides, is the ferent business processes, and drastically reduces the
key to efficient reuse of services and SOA manage- time to deployment.
ment. With this technology in the SOA platform,
your IT organization can be assured of having the Ensemble uses the object oriented programming para-
flexibility to adapt rapidly to changes in business digm and abstracts functionality and data as a consis-
requirements and processes, and investment protec- tent set of object classes with properties (data ele-
tion through insulation from changes to the underly- ments that objects of a given class will hold) and
ing technologies and standards. methods (functions that objects of a class can per-
form).1 Such abstraction provides a consistent, unified
view of underlying systems and applications –
no matter what platforms, languages, data models,
storage architectures, network protocols, or other
technologies those underlying systems use.
1
See <http://www.answers.com/object-oriented programming> for a brief description of object orientation, classes, objects, and methods.
Abstraction in Ensemble provides a consistent and
efficient object representation of different program-
ming models and data formats and a “universal”
or “global” view of all data and requests traveling
through the system. As a result of its abstraction
capability, Ensemble:
InterSystems Corporation 2
and other data structures into and out of two-dimen- ■ Read-write access via objects, SQL, and direct
sional relational tables. Using an external database mode
puts performance of the entire solution at risk,
increases the complexity of the solution, and raises ■ Live-system full, cumulative, and incremental
management costs. data backup
Operational efficiency and awareness – Ensemble uses its embedded database for storage of
data and metadata storage metadata as well as transactional data, messages, and
other objects. This shared metadata repository con-
SOA storage requirements range from cross-applica- tains information about all the services and other
tion indices that enable multiple services to work components in the environment. It provides the
together, to high-demand information for which foundation for a common and consistent framework
relational database applications cannot provide for integrating services and data sources, orchestrat-
adequate performance. Ensemble addresses these ing business processes, and developing composite
requirements with an embedded, highly reliable, applications. With the metadata readily available, it’s
high-speed, persistent, object database. It supports possible to create a consistent set of interfaces to, and
message persistence, transaction integrity, event information about, each component in the SOA,
logging and tracing, and high-performance transac- enabling faster integration, rapid development, easier
tional bitmap-indexed data retrieval. management, and greater extensibility.
In Ensemble, all components of a given business Several benefits accrue when the SOA platform
process, from the process itself to executable code contains its own integrated data store. In Ensemble
and messages, are represented in the database as a these benefits include:
consistent set of classes, objects, and methods.
Because Ensemble’s run-time execution engine and ■ Efficient investigative and analytical
the database engine are the same, all components of capabilities through read-only access to a
the solution can execute in the same in-memory warehouse of messages of arbitrary complexity,
process for exceptional speed. with full transactional state.
The database embedded in Ensemble provides SOA ■ Highly reliable long-running business
solutions with: processes. Ensemble automatically stores the
state of all business processes executing. This
■ Highly-scalable storage of solution-specific data convention provides a strong degree of recover-
or indices, with built-in persistent storage ability in the event of unplanned system outages
capabilities or other incidents.
InterSystems Corporation 3
■ Data synchronization using
simple formulas or lookups in
data tables (internal or exter-
nal), extensible to any degree
of complexity by adding cus-
tomized functions. Coupled
with Ensemble abstraction and
other functions, Ensemble stor-
age enables you to universally
synchronize data across the
solution.
■ Performance enhancement, as
Ensemble can cache copies of
frequently accessed data on
behalf of any part of the solu-
tion. This persistent cache capa-
bility avoids the typical bottle- Figure 2. Storage of every message passing through the system,
neck in integration scenarios – the need to and associated metadata, provides users with powerful business
access data inside overworked corporate process tracking, debugging, and reporting mechanisms.
databases.
InterSystems Corporation 5
InterSystems Corporation
World Headquarters
One Memorial Drive
Cambridge, MA 02142-1356
Tel: +1.617.621.0600
Fax: +1.617.494.1631
InterSystems.com
InterSystems Ensemble is a trademark of InterSystems Corporation. Other product names are trademarks of their respective vendors.
© copyright 2006 InterSystems Corporation. All rights reserved. 1206