Transcript Document
www.ATTUNITY.com
Modern Approaches to
Application and Data
Integration
Quantifying 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
Integration 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
Integration Evolution
Move from integration broker “hubs” …
Proprietary adapter frameworks
Integration
Broker
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
Interoperability
UDDI/ebXML
Marketplaces
Customers
Suppliers
Application
Servers
HTTP/S SOAP JMS C-API
Partners
Integration
Brokers
New
Applications
JMS/JCA/JDBC
SOAP/JMS/JDBC SOAP/JMS/JDBC
XML
SOAP
BPI
COM CORBA RMI JMS JDBC JNDI JCA
XML
JDBC ODBC
Data Connect
JCA
App Connect
JCA
JCA
Adapters
JCAJCA
Data/
NRBD
RDB
Files
BPI
Service
Legacy
ADK
(3GL)
Packaged
Packaged
Apps
Apps
Service-Oriented Integration
UDDI/ebXML
Marketplaces
Customers
1.
Wrap services into the service
repository (using wizards)
2.
Assemble services into business
functions or compound
application (drag and drop)
3.
Automate information flow
(process designer)
4.
Use multiple channels to expose
services to consumers
(internal/external)
5.
Apply changes rapidly
CICS
MF
Inventory
COM/CORBA
SAP
Purchasing
Partners
JNDI/JMS
App
Server
OrderMgmt
Web Server
App Server
HTTP/SOAP
Web
Fin/Credit
Integration
Broker
Workflow
Example
xCBL Subprocess
Send PO
xCBL
Commerce One
Marketplace
cXML
Ariba Marketplace
PO Creation
XML Subprocess
XML
Datastream
iProcure
OCI
SAP
BPI
EDI Subprocess
Bus Connection
Raytheon
Procurement
System
RMS
ANSI
X12
E-Invoicing (GE
PowerSystems)
Email
Supplier Portal
Print
Internal and Fax
5
From Process to Web Service
Extend as new Web Service
Service – Check Global Inventory
4
XML/HTTP
Service – Check Local Inventory
1
Web Service – Check Supplier Inventory
2
Service – Create Alert
3
Service-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)
Spaghetti
The Integration…
POINT OF SALE
DISTRIBUTION
ORDER ENTRY
NT
WWW
ERP AS/400
TN3270
MVS
AppServ
Java
DATA
WAREHOUSE
NT
NSK
DEVELOPMENT
MANMAN
OPERATIONS
CICS
PEOPLESOFT
UNIX
VMS
MANUFACTURING
OLAP
MVS
FINANCE
HUMAN
RESOURCES
One Data Bus
DISTRIBUTION
ORDER ENTRY
POINT OF SALE
BC
BC
NT
WWW
ERP AS/400
TN3270
MVS
BC
VISUAL
BASIC
BC
Bus Connection
BC
DATA
WAREHOUSE
NT
NSK
DEVELOPMENT
OPERATIONS
BC
MANMAN
CICS
BC
BC
PEOPLESOFT
UNIX
VMS
MANUFACTURING
OLAP
MVS
FINANCE
HUMAN
RESOURCES
Bus Architecture
Application
Server
Application
Component
JCA Adapter
Bus Connection
Bus Connection
SQL Database
Flat Files,
XMLDocuments
Bus Connection
Bus Connection
Legacy
Application
CRM Database
Virtual
Virtual
Legacy Data Database
eMarketplace
A Single Transparent Data Source
VMS
Win
XML
ODBC
JDBC
OLE DB
ADO
XML
JDBC
XML
ODBC
JDBC
Tandem NSK
SQL
MVS
Windows
OBJECT
AS/400
XML
ODBC
JDBC
HIERARCHICAL
Virtual Database
XML
IBM OS/390
XML
ODBC
INDEXED
UNIX
NSK
XML
ODBC
JDBC
FLAT FILE
OpenVMS
AS/400
UNIX
XML
ODBC
Keep 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
Peer-to-peer Universal Integration
Client Application
Client Application
JCA
JDBC
XML
Thin Client Interfaces
Socket/HTTP Comm.
Comm.
FireWall
FireWall
TCP/IP
OS/390
OpenVMS
Windows
Tandem
AS/400
Unix
OpenVMS
Windows
Tandem
AS/400
Unix
OS/390
Client Application
Client Interfaces
Client Interfaces
Client Interfaces
Integration
Engines
Data & Application Interfaces
Data Sources
Data Sources
Applications
Applications
Integration
Engines
Comm.
Client Application
Comm.
Client Application
Data & Application Interfaces
Data Sources
Data Sources
Applications
Applications
Integration
Engines
Comm.
OpenVMS
OS/390
Windows
Tandem
AS/400
Unix
Data & Application Interfaces
Data Sources
Data Sources
Applications
Applications
Dual Architecture
Application
Data Connection
Application Connection
JDBC | ODBC | ADO | … JCA | XML | .NET(SOAP) |…
Data
Engine
Application
Engine
Base Services
Data Adapters
Application Adapters
Two Kinds of Connections
Application Connection
Database Connection
- Complex hierarchical data
- Simple data – tables
- Procedural access
- Declarative access
- No common language
- Common language: SQL
- No accepted common
- Generally accepted common
model
- Emerging APIs: XML,
JCA, MS .NET / SOAP
(ADO+)
models (such as relational,
network, hierarchical)
- Established APIs: ODBC,
ADO/OLEDB, JDBC
Connection Block Diagram
ODBC OLE DB JDBC
XML
JCA
SOAP
Application
Engine
Distributed
Communications
Data
Engine
Distributed
Communications
Client Interfaces
Data & Application Interfaces
Legacy
XML
Relational Proprietary
Mainframe
CICS
COM
ERP
Custom
RDBMS
Applications
CRM
Client 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
Connectivity Requirements
Universal access to data and applications
Transparent interfaces
Heterogeneous and distributed joins
XML capabilities
Query optimization
Peer-to-peer architecture
Universal SQL
What 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.
What 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
3-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
2-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
J2EE Connector Architecture (JCA) Overview
Container-Component
Contract
BEA J2EE
WebLogic
Application
Server
J2EE
Application
Server
Application
Component
CCI
Connection
Manager
Component
Contract
System Contracts
Transaction
Manager
ADK
Security
Manager
SPI
Adapter Metadata
Resource
JCA
Adapter
Adapter
EIS-Specific
Interfaces
Enterprise
Information
System
www.ATTUNITY.com
Thank you.