Title: Modern Approaches to Application and Data Integration
1Modern Approaches to Application and Data
Integration
2Quantifying the Legacy Challenge
- The vast majority of the application portfolio
will be custom and legacy systems. On average,
users of EAI systems utilize 2.3 prebuilt
adapters, but one year into the implementation
they are connecting 5 or more systems. (Meta
Group) - 40 of all new application development is spent
on accessing existing data sources. (IDC) - It is estimated that 80 of corporate data is
held in hierarchical and network DBMS. (Butler
Group) - Median number of databases within a company is
14.7 (Gartner)
- Legacy application and data integration
represents over 50 of the multi-billion dollar
software integration market
3Integration Drivers
- Web Services
- Standard interfaces to invoke application and
data services regardless of underlying technology
will ease integration - J2EE Application Servers
- Functionality overlaps with integration brokers
(e.g. messaging, transaction, security,
transport) - JCA Standard
- Proprietary application adapters a distant memory
ala ODBC - Process Integration
- Move from how to integrate to what to integrate
and support assembly of services
4Integration Evolution
Move from integration broker hubs
- Proprietary adapter frameworks
- All resources routed through IB
- Document-centric, emphasis on
transformation
To service-oriented bus architecture
- Standard interfaces and registry
- Loosely-coupled integration
- Assembly of services to create automated
business processes
5Interoperability
Marketplaces
Customers
Suppliers
Partners
UDDI/ebXML
Integration Brokers
Application Servers
New Applications
HTTP/S SOAP JMS C-API
SOAP/JMS/JDBC
SOAP/JMS/JDBC
JMS/JCA/JDBC
BPI
COM CORBA RMI JMS JDBC JNDI JCA
XML JDBC ODBC
XML JCA SOAP
JCA
App Connect
Data Connect
JCA Adapters
JCA
JCA
RDB
Data/ NRBD
Files
Service
Legacy
ADK (3GL)
Packaged Apps
BPI
Packaged Apps
6Service-Oriented Integration
- Wrap services into the service repository (using
wizards)
- Assemble services into business functions or
compound application (drag and drop)
- Automate information flow (process designer)
- Use multiple channels to expose services to
consumers (internal/external)
- Apply changes rapidly
CICS
COM/CORBA
JNDI/JMS
HTTP/SOAP
App Server
MF
SAP
Web
Inventory
OrderMgmt
Fin/Credit
Purchasing
7Example
8From Process to Web Service
9Service-Oriented Integration Requirements
- Rapid process assembly and automation
- Modeling, design and implementation
- Wraps disparate services into a repository,
making them seamlessly available and reusable - Multiple interaction channels
- Service factories to a multitude of application
and technology domains - Portable and independent XML based programming
model - Distributed deployment (scalable, reliable,
available)
10The Integration
Spaghetti
11One Data Bus
12Bus Architecture
Virtual Database
Virtual Database
13A Single Transparent Data Source
Virtual Database
14Keep to the Standards
- Distributed bus architecture for data and
application integration - XML-based metadata, transformation and transport
- Heterogeneous data integration
- Virtual Database where single statement can
span multiple data sources and platforms - Unique query optimization and caching technology
- Transaction management
- Legacy application integration
- Adapters to CICS, IMS/DC, COM, Natural
- ADK to encapsulate C/Basic/Cobol/Fortran
structures - Standard Interfaces
- JDBC, ODBC, ADO, XML, JCA, BEA JCA, SOAP
15 Peer-to-peer Universal Integration
Client Application
JCA
JDBC
Windows
OpenVMS
Unix
Tandem
AS/400
OS/390
OS/390
Windows
OpenVMS
Unix
Tandem
AS/400
Windows
OpenVMS
Unix
Tandem
AS/400
OS/390
Client Application
Client Application
Client Application
16Dual Architecture
Data Engine
Application Engine
Base Services
17Two Kinds of Connections
- Application Connection
- Complex hierarchical data
- Procedural access
- No common language
- No accepted common model
- Emerging APIs XML, JCA, MS .NET / SOAP (ADO)
- Database Connection
- Simple data tables
- Declarative access
- Common language SQL
- Generally accepted common models (such as
relational, network, hierarchical) - Established APIs ODBC, ADO/OLEDB, JDBC
18Connection Block Diagram
Client Interfaces
Data Application Interfaces
Application Engine
Data Engine
Distributed Communications
19Client Interfaces
- Standard interfaces
- JDBC thin JDBC for pure Java client
- ODBC also as CLI on non-Windows
- ADO/OLE DB
- XML In XML out
- JCA
- SOAP
20Connectivity Requirements
- Universal access to data and applications
- Transparent interfaces
- Heterogeneous and distributed joins
- XML capabilities
- Query optimization
- Peer-to-peer architecture
- Universal SQL
21What is JCA for?
- "The J2EE Connector architecture is trying to
extend what JDBC has done for Java and J2EE in
terms of providing uniform and simplified
connectivity with databases, to the world of
heterogeneous EISs Enterprise Information
Systems." - Vijay Sarathy, product manager for Connectors
and JDBC, Sun Microsystems, Inc.
22What is JCA?
- J2EE Connector Architecture (JCA)
- Culmination of an industry wide effort
- Including BEA, IBM, Inprise, IPLanet, Motorola,
Oracle, SAP, Sun, Sybase, Unisys - Well woven into the J2EE framework
- Similar to the JDBC API
- Used to access relational databases
- JCA is standard architecture
- Use to integrate J2EE applications with EISs that
are not relational databases - Two main scenarios
- 3-tier (managed) scenario
- 2-tier (non-managed) scenario
233-Tier Scenario
- Thin client (the 1st tier) works against
application component residing in application
server using application adapter (the 2nd tier) - The application adapter works with the EIS (the
3rd tier) - Application component (via JCA CCI interfaces)
- Activates interactions against the EIS
- Application server (via JCA SPI interfaces)
- Configuration
- Transactions
- Security
- Connection management
242-Tier Scenario
- Fat client works against application adapter
directly (the 1st tier) - Application adapter works against EIS (the 2nd
tier) - Client uses CCI and SPI interfaces
- Complete control over the entire operation of the
application adapter
25J2EE Connector Architecture (JCA) Overview
J2EE Application Server
Container-Component Contract
BEA WebLogic J2EE Application Server
Application Component
Component Contract
CCI
Connection Manager
JCA Adapter
Resource Adapter
System Contracts
Transaction Manager
SPI
Security Manager
EIS-SpecificInterfaces
Enterprise InformationSystem
26Thank you.