THE TWO KEY TECHNOLOGIES FOR SOA SUCCESS - MIKE LAROCCA, PRODUCT MANAGER INTERSYSTEMS CORPORATION
←
→
Page content transcription
If your browser does not render page correctly, please read the page content below
ENSEMBLE WHITE PAPER THE TWO KEY TECHNOLOGIES FOR SOA SUCCESS Mike LaRocca, Product Manager InterSystems Corporation
THE TWO KEY TECHNOLOGIES FOR SOA SUCCESS Introduction Concrete benefits from greater abstraction 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 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: ■ Facilitates rapid development of composite applications in business processes through Figure 1. Ensemble functional architecture. powerful abstractions of both logic and data. ■ Enables the latest development tools and technologies to access legacy data and function- In Ensemble, the product’s abstraction layer rests on ality as reusable .NET or J2EE components, top of the connectivity and storage layers, hiding the Web services, or XML. nature, variety, and complexity of the underlying interfaces and data. Ensemble’s development environ- ■ Provides equal support for various technology ment provides simple ways for a developer to identify frameworks, including J2EE and .NET, while those capabilities and data that are of interest for a being easily extensible for future object models given business process, and then transform those and frameworks. capabilities and data into the Ensemble objects that are visible to all components of the solution. As an Whereas Java-based systems have strong logic example, consider a project that connects an SAP abstraction but weak data abstraction, and XML- application suite, a legacy mainframe application with based systems have strong data abstraction but weak an IMS database, a new Windows application that logic abstraction, Ensemble abstraction provides the exposes functionality as Web services, a Java applica- missing dimensions required to consistently support tion built using J2EE technologies, and an sophisticated business processes, which may include application based on a relational database with elements from both types of system. SOA platforms extensive stored procedures. Ensemble provides that are J2EE-specific or .NET-specific risk the need abstraction in two ways: to “lock in” a specific vendor or technology, but Ensemble avoids this risk by providing equal support ■ Within the Ensemble abstraction layer, the for various technology frameworks. functionality and data in these applications are seen as a set of object classes with properties and methods. Ensemble shields business analysts and Persistence pays in the SOA world developers from the complexity of the multiple languages, object models, databases, platforms, In the world of SOA platforms amnesia is rampant. and other technologies used to build and deploy With technology that has grown out of the messag- the original five applications. This is “inward” ing world, many SOA platforms have no integrated abstraction – Ensemble makes resources from and persistent data store. Messages are created, pass the outside world available to itself. through the system, and are gone. Data important to the entire SOA solution is held at the outer edges of ■ Once these external application resources are the environment, in the various systems hosting serv- available as Ensemble classes, Ensemble can ices, and not readily available to the orchestrated incorporate them into the business process, business process of which the service is but a part. which can be accessed by an external client technology such as COM, .NET, ODBC, Java, Some SOA platforms do provide for links to an JDBC, EJB, XML, and Web services. This is optional, separately licensed third-party relational projecting the Ensemble abstraction outward – database. But, besides the additional expense, using making internal resources available to the an external database for SOA storage incurs signifi- outside world. cant processing overhead for calls out to the data- base, and for the mapping of multidimensional XML 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 What’s needed is an integrated, centralized, high- ■ Technologies for distributed data storage and performance persistent data store to hold distributed access with full transparency SOA data and metadata. An SOA without one is brain dead – it functions, but only at the most basic Metadata is the key element enabling use of services level, with zero intelligence. What is lost is a wealth within an SOA. We need to know what services exist of data and metadata that could be used to make before we can even think of using them. We need to development of the overall solution easier, and for know where they are, and we need to know how to business activity monitoring, problem tracing and use them. We need to know how to string them resolution, reporting, auditing, and other manage- together to model the business process. And finally ment functions. we need a place (besides our leaky brains) for persistent storage of all the data flowing through the system. 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. ■ Scalability to tens of thousands of concurrent ■ Access to configuration data and other users and terabytes of data metadata with the same reliability, scalability, and performance advantages as the enterprise ■ Transactional capabilities, including automatic data within the solution. Metadata can be recovery from system failures accessed programmatically via SQL and object views, or visually using the Ensemble Configuration portal. 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. ■ Real-time data analysis. Ensemble’s transaction-oriented bitmap indexing capability Conclusion permits the rapid retrieval operations that are essential to support business intelligence and Some SOA platforms are really just a collection of real-time data analysis. independent tools packaged together and lacking the integration necessary to make them easy to learn and efficient to use. Others are integrated toolsets but are Management hobbled by the lack of abstraction technology and an integrated data store. They are inefficient develop- Service oriented architectures consist by design of ment environments with limited support for the wide loosely coupled services. Such systems tend to be dif- range of application interfaces, data formats, and tech- ficult to manage. Asynchronous business processes nologies typically found in all but the smallest IT envi- and message-oriented services make it difficult to ronments. trace threads of execution, and therefore to debug them. Persistent storage, especially on the scale and At the end of the day innovative abstraction and scope possible with Ensemble, addresses this difficul- data persistence technology in Ensemble makes it: ty. Ensemble provides a wealth of diagnostic data and ■ Easier to focus on improving business processes the tools to analyze it in real time. Management instead of which technology to use features include: ■ Easier and faster to develop and deploy IT ■ The ability to analyze stored messages assets as services in a flexible service-oriented (and other information) and trace message paths architecture ■ Message warehouse maintenance ■ Easier to bring legacy application functionality into the service oriented architecture ■ Configuration control ■ Easier to align IT assets with frequently changing ■ Queue and process monitoring business requirements and processes ■ Detailed event logs ■ Easier to work within your existing frameworks ■ Usage histograms and methodologies ■ More cost-effective and less risky to move to a service oriented architecture InterSystems Corporation 4
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
You can also read