SlideShare una empresa de Scribd logo
1 de 31
Enterprise Data Services
           for
     Strategic SOA

    Sumedha Rubasinghe
        ~ sumedha@wso2.com ~
     http://sumedha.blogspot.com
The growth of SOA (Web Services)
• SOA hype
   – promises of dynamic discovery
   – Human readable messaging
   – Simple XML data objects
• SOA approach - finally solving problems
• Application assembly using
   – Loosely coupled components
   – Well defined interfaces
   – Growing demand for mashed up applications
• Interoperability
Enterprise data
• Processed & stored since beginning of
  computing era
• Heterogeneous stores
• Generated by application silos
• Disconnected
Concerns
• Each approach demands different way of
  access
• Developer time spent on data access
Real world scenarios
• Application A
  – Data from one legacy system / data store
• Application B
  – Data from two heterogeneous data stores
  – Daily Sales Report
    • Cash register writes to a flat file
    • Product details in a RDBMS
Real world scenarios (continued..)
• Application C - consolidating data from
  three data sources
  – Datasource 1 : Sales data from a flat file
  – Datasource 2 : Inventory data
  – Datasource 3 : Sales person data
Ways of solving
• Method 1
  –   Create a new data store
  –   Pull relevant data from 3 data stores
  –   Store it to match Application C’s requirements
  –   Now comes Application X…
  –   More overhead
  –   Redundant data
       • Inconsistency
       • Update anomalies
Ways of solving (continued..)
• Method 2
  – Connect to 3 data sources & extract data
  – Three different access mechanisms
Data access mechanisms in SOA
• Direct access to databases
  (JDBC,ODBC,..etc)
• Use of O/R mapping frameworks
  (Hibernate, Ibatis,...)
• Enterprise Java Beans (EJBs)
• CORBA
• Custom APIs
Method 2
• Issues
  – Data access code VS business logic
    implementation
  – Difficult to reuse
  – Difficult to maintain
  – Difficult to test
  – Error prone
Ways of solving (continued..)
• Method 3
  – Single layer to fulfill enterprise data access
    requirements
     • Governed by,
        –   More and more data being generated
        –   Growing demand for consolidated, consistent information
        –   Mashups
        –   Interoperability & standards
Positioning of data access code
• Application developers like to deal with
  business process related logic
• Changes in data source configuration –
  transparent to application logic
Data Service?
•   Yet another web service
•   Well defined request/response format
•   Encapsulates data oriented logic
•   Loose coupling (application & data store)
•   Data store specific configurations
•   Management & QoS features
Challenges - Heterogeneous Data
stores
•   RDBMS – specific or generic JDBC drivers
•   Directories – specific drivers, API
•   Flat files, Spread sheets – different APIs
•   Different data types
•   Access control mechanisms
Accessing a data service?
• It’s just another web service !!!
  – Typical web service call
  – REST call
• Direct call to API

              <XML> Input Message
                                    Data Services
                                       Solution     Database
                      Output Data
              <XML>
Expectations - Data Integration
• Transformation (mediation)
• Federation
• Bridging the gap between
  – data structures
  – Formats
  – Vocabularies
  – Data model
Reusability
• It’s a web service
• Create once & use anywhere
• Substantial return down the line
Creation, runtime & management
• Creation
  – Web / IDE based wizards
  – Simple configuration file
• Runtime
  – Start, stop, maintenance mode
  – Scalable
  – Fault tolerant
• Management
  – Versioning, auditing, dynamic modifications
QoS Features
• Security
  – Access control
  – Content filtering
  – Encryption
  – Integrity
  – WS-Security
QoS Features
•   Connection Pooling (RDBMS)
•   Caching
•   Access Throttling
•   High Availability (HA)
•   Reliable Delivery
•   Notification
QoS Features
• Monitoring & Management
  – Audit trails
  – Access Logs
  – JMX
  – Tracing
Advantages of Data Services
• Most up-to-date data using a service call
• Single layer for SOA’s data requirements
• Optimization efforts visible to all
  consumers
• Developer productivity
• QoS
• Battle tested runtime
Summary
• Need for Enterprise Data Services for SOA
• Challenges faced when implementing Data
  Services
• Defined Data Services
• QoS, Life cycle expectations from a Data
  Services implementation
Demo
• Expose Employee contact data in MySQL
  database as a service
• Table Structure
Wizard (Step1)
Wizard (Step2)
Wizard (Step3)
WSDL -http://<IP>:<PORT>/services/ContactInfoService?wsdl2
References
• http://wso2.org (Developer Portal for WS
  devlopers)
  –   WSO2 ESB (Apache Synapse)
  –   WSO2 Web Service Application Server (Apache Axis2)
  –   Registry
  –   Mashup Server
  –   Data Services Solution
  –   Identity Solution
• http://wso2.org/projects/solutions/data-
  services/java
• http://wso2.com(commercial support)
Thank you

Más contenido relacionado

La actualidad más candente

Introduction to SalesForce
Introduction to SalesForceIntroduction to SalesForce
Introduction to SalesForceSujit Kumar
 
ATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,PricingATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,Pricingpraveen chinnam
 
Getting SharePoint 2010 Deployment Right final
Getting SharePoint 2010 Deployment Right finalGetting SharePoint 2010 Deployment Right final
Getting SharePoint 2010 Deployment Right finalvmaximiuk
 
Adding Data into your SOA with WSO2 WSAS
Adding Data into your SOA with WSO2 WSASAdding Data into your SOA with WSO2 WSAS
Adding Data into your SOA with WSO2 WSASsumedha.r
 
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Know
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must KnowDogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Know
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Knowvmaximiuk
 
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...WSO2
 
SPS Kansas City: What SharePoint Admin need to know about SQL
SPS Kansas City: What SharePoint Admin need to know about SQLSPS Kansas City: What SharePoint Admin need to know about SQL
SPS Kansas City: What SharePoint Admin need to know about SQLJ.D. Wade
 
SharePoint 2010: Business Insights
SharePoint 2010: Business InsightsSharePoint 2010: Business Insights
SharePoint 2010: Business InsightsJ.D. Wade
 
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013J.D. Wade
 
Latest Advance Animated Ado.Net With JDBC
Latest Advance Animated Ado.Net With JDBC Latest Advance Animated Ado.Net With JDBC
Latest Advance Animated Ado.Net With JDBC Tarun Jain
 
Connected at the hip for MS BI: SharePoint and SQL
Connected at the hip for MS BI: SharePoint and SQLConnected at the hip for MS BI: SharePoint and SQL
Connected at the hip for MS BI: SharePoint and SQLJ.D. Wade
 
Overview of atg framework
Overview of atg frameworkOverview of atg framework
Overview of atg frameworkYousuf Roushan
 
MongoDB: How We Did It – Reanimating Identity at AOL
MongoDB: How We Did It – Reanimating Identity at AOLMongoDB: How We Did It – Reanimating Identity at AOL
MongoDB: How We Did It – Reanimating Identity at AOLMongoDB
 
ATG - Common Terminologies
ATG - Common TerminologiesATG - Common Terminologies
ATG - Common TerminologiesKeyur Shah
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabasesAdi Challa
 

La actualidad más candente (20)

Introduction to SalesForce
Introduction to SalesForceIntroduction to SalesForce
Introduction to SalesForce
 
ATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,PricingATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,Pricing
 
Getting SharePoint 2010 Deployment Right final
Getting SharePoint 2010 Deployment Right finalGetting SharePoint 2010 Deployment Right final
Getting SharePoint 2010 Deployment Right final
 
Adding Data into your SOA with WSO2 WSAS
Adding Data into your SOA with WSO2 WSASAdding Data into your SOA with WSO2 WSAS
Adding Data into your SOA with WSO2 WSAS
 
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Know
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must KnowDogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Know
Dogfood Conference 2010 - What Every SharePoint 2010 Administrator Must Know
 
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...
WSO2Con US 2013 - Store and Deliver Data to the Mobile App Edge: WSO2 Storage...
 
SPS Kansas City: What SharePoint Admin need to know about SQL
SPS Kansas City: What SharePoint Admin need to know about SQLSPS Kansas City: What SharePoint Admin need to know about SQL
SPS Kansas City: What SharePoint Admin need to know about SQL
 
Xml
XmlXml
Xml
 
SharePoint 2010: Business Insights
SharePoint 2010: Business InsightsSharePoint 2010: Business Insights
SharePoint 2010: Business Insights
 
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013
What SQL DBAs need to know about SharePoint-Kansas City, Sept 2013
 
Latest Advance Animated Ado.Net With JDBC
Latest Advance Animated Ado.Net With JDBC Latest Advance Animated Ado.Net With JDBC
Latest Advance Animated Ado.Net With JDBC
 
Connected at the hip for MS BI: SharePoint and SQL
Connected at the hip for MS BI: SharePoint and SQLConnected at the hip for MS BI: SharePoint and SQL
Connected at the hip for MS BI: SharePoint and SQL
 
Overview of atg framework
Overview of atg frameworkOverview of atg framework
Overview of atg framework
 
Chap3 3 12
Chap3 3 12Chap3 3 12
Chap3 3 12
 
ATG Architecture
ATG ArchitectureATG Architecture
ATG Architecture
 
MongoDB: How We Did It – Reanimating Identity at AOL
MongoDB: How We Did It – Reanimating Identity at AOLMongoDB: How We Did It – Reanimating Identity at AOL
MongoDB: How We Did It – Reanimating Identity at AOL
 
Jdbcdriver
JdbcdriverJdbcdriver
Jdbcdriver
 
ATG - Common Terminologies
ATG - Common TerminologiesATG - Common Terminologies
ATG - Common Terminologies
 
NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabases
 
dba_sathish
dba_sathishdba_sathish
dba_sathish
 

Similar a Enterprise Data Services for Strategic SOA

Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008
Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008
Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008ChemAxon
 
Greatdebate Postgres vs Mysql
Greatdebate Postgres vs MysqlGreatdebate Postgres vs Mysql
Greatdebate Postgres vs MysqlKrishna Infosoft
 
The Great Debate: PostgreSQL vs MySQL
The Great Debate: PostgreSQL vs MySQLThe Great Debate: PostgreSQL vs MySQL
The Great Debate: PostgreSQL vs MySQLEDB
 
SQL Server 2008 Migration
SQL Server 2008 MigrationSQL Server 2008 Migration
SQL Server 2008 MigrationMark Ginnebaugh
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneMongoDB
 
Brainwave A Basic Overview Bar Camp
Brainwave A Basic Overview Bar CampBrainwave A Basic Overview Bar Camp
Brainwave A Basic Overview Bar CampAbhishek Chamaria
 
App301 Implement a Data Access Layer with Ent Lib
App301 Implement a Data Access Layer with Ent LibApp301 Implement a Data Access Layer with Ent Lib
App301 Implement a Data Access Layer with Ent Libmcgurk
 
When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...MongoDB
 
Key Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresKey Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresEDB
 
L’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova GenerazioneL’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova GenerazioneMongoDB
 
MongoDB Breakfast Milan - Mainframe Offloading Strategies
MongoDB Breakfast Milan -  Mainframe Offloading StrategiesMongoDB Breakfast Milan -  Mainframe Offloading Strategies
MongoDB Breakfast Milan - Mainframe Offloading StrategiesMongoDB
 
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabric
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabricOSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabric
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabricNETWAYS
 
MongoDB Europe 2016 - The Rise of the Data Lake
MongoDB Europe 2016 - The Rise of the Data LakeMongoDB Europe 2016 - The Rise of the Data Lake
MongoDB Europe 2016 - The Rise of the Data LakeMongoDB
 
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesWebinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesMongoDB
 
MongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreMongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreMongoDB
 
MongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreMongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreEvan Rodd
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBMongoDB
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBMongoDB
 
CData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaCData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaJerod Johnson
 

Similar a Enterprise Data Services for Strategic SOA (20)

Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008
Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008
Instant J Chem: one-stop information hub for medicinal chemists: US UGM 2008
 
Greatdebate Postgres vs Mysql
Greatdebate Postgres vs MysqlGreatdebate Postgres vs Mysql
Greatdebate Postgres vs Mysql
 
The Great Debate: PostgreSQL vs MySQL
The Great Debate: PostgreSQL vs MySQLThe Great Debate: PostgreSQL vs MySQL
The Great Debate: PostgreSQL vs MySQL
 
SQL Server 2008 Migration
SQL Server 2008 MigrationSQL Server 2008 Migration
SQL Server 2008 Migration
 
Integrating RESTfully
Integrating RESTfullyIntegrating RESTfully
Integrating RESTfully
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazione
 
Brainwave A Basic Overview Bar Camp
Brainwave A Basic Overview Bar CampBrainwave A Basic Overview Bar Camp
Brainwave A Basic Overview Bar Camp
 
App301 Implement a Data Access Layer with Ent Lib
App301 Implement a Data Access Layer with Ent LibApp301 Implement a Data Access Layer with Ent Lib
App301 Implement a Data Access Layer with Ent Lib
 
When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...When to Use MongoDB...and When You Should Not...
When to Use MongoDB...and When You Should Not...
 
Key Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresKey Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to Postgres
 
L’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova GenerazioneL’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova Generazione
 
MongoDB Breakfast Milan - Mainframe Offloading Strategies
MongoDB Breakfast Milan -  Mainframe Offloading StrategiesMongoDB Breakfast Milan -  Mainframe Offloading Strategies
MongoDB Breakfast Milan - Mainframe Offloading Strategies
 
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabric
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabricOSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabric
OSDC 2017 - Christos Erotocritou - Apache ignite in-memory data fabric
 
MongoDB Europe 2016 - The Rise of the Data Lake
MongoDB Europe 2016 - The Rise of the Data LakeMongoDB Europe 2016 - The Rise of the Data Lake
MongoDB Europe 2016 - The Rise of the Data Lake
 
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesWebinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
 
MongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreMongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message Store
 
MongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message StoreMongoDB Atlas - eHarmony’s New Message Store
MongoDB Atlas - eHarmony’s New Message Store
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDB
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDB
 
CData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaCData Data Today: A Developer's Dilemma
CData Data Today: A Developer's Dilemma
 

Último

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...itnewsafrica
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxAna-Maria Mihalceanu
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 

Último (20)

QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
Irene Moetsana-Moeng: Stakeholders in Cybersecurity: Collaborative Defence fo...
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 

Enterprise Data Services for Strategic SOA

  • 1. Enterprise Data Services for Strategic SOA Sumedha Rubasinghe ~ sumedha@wso2.com ~ http://sumedha.blogspot.com
  • 2. The growth of SOA (Web Services) • SOA hype – promises of dynamic discovery – Human readable messaging – Simple XML data objects • SOA approach - finally solving problems • Application assembly using – Loosely coupled components – Well defined interfaces – Growing demand for mashed up applications • Interoperability
  • 3. Enterprise data • Processed & stored since beginning of computing era • Heterogeneous stores • Generated by application silos • Disconnected
  • 4. Concerns • Each approach demands different way of access • Developer time spent on data access
  • 5. Real world scenarios • Application A – Data from one legacy system / data store • Application B – Data from two heterogeneous data stores – Daily Sales Report • Cash register writes to a flat file • Product details in a RDBMS
  • 6. Real world scenarios (continued..) • Application C - consolidating data from three data sources – Datasource 1 : Sales data from a flat file – Datasource 2 : Inventory data – Datasource 3 : Sales person data
  • 7. Ways of solving • Method 1 – Create a new data store – Pull relevant data from 3 data stores – Store it to match Application C’s requirements – Now comes Application X… – More overhead – Redundant data • Inconsistency • Update anomalies
  • 8. Ways of solving (continued..) • Method 2 – Connect to 3 data sources & extract data – Three different access mechanisms
  • 9. Data access mechanisms in SOA • Direct access to databases (JDBC,ODBC,..etc) • Use of O/R mapping frameworks (Hibernate, Ibatis,...) • Enterprise Java Beans (EJBs) • CORBA • Custom APIs
  • 10. Method 2 • Issues – Data access code VS business logic implementation – Difficult to reuse – Difficult to maintain – Difficult to test – Error prone
  • 11. Ways of solving (continued..) • Method 3 – Single layer to fulfill enterprise data access requirements • Governed by, – More and more data being generated – Growing demand for consolidated, consistent information – Mashups – Interoperability & standards
  • 12. Positioning of data access code • Application developers like to deal with business process related logic • Changes in data source configuration – transparent to application logic
  • 13. Data Service? • Yet another web service • Well defined request/response format • Encapsulates data oriented logic • Loose coupling (application & data store) • Data store specific configurations • Management & QoS features
  • 14. Challenges - Heterogeneous Data stores • RDBMS – specific or generic JDBC drivers • Directories – specific drivers, API • Flat files, Spread sheets – different APIs • Different data types • Access control mechanisms
  • 15. Accessing a data service? • It’s just another web service !!! – Typical web service call – REST call • Direct call to API <XML> Input Message Data Services Solution Database Output Data <XML>
  • 16. Expectations - Data Integration • Transformation (mediation) • Federation • Bridging the gap between – data structures – Formats – Vocabularies – Data model
  • 17. Reusability • It’s a web service • Create once & use anywhere • Substantial return down the line
  • 18. Creation, runtime & management • Creation – Web / IDE based wizards – Simple configuration file • Runtime – Start, stop, maintenance mode – Scalable – Fault tolerant • Management – Versioning, auditing, dynamic modifications
  • 19. QoS Features • Security – Access control – Content filtering – Encryption – Integrity – WS-Security
  • 20. QoS Features • Connection Pooling (RDBMS) • Caching • Access Throttling • High Availability (HA) • Reliable Delivery • Notification
  • 21. QoS Features • Monitoring & Management – Audit trails – Access Logs – JMX – Tracing
  • 22. Advantages of Data Services • Most up-to-date data using a service call • Single layer for SOA’s data requirements • Optimization efforts visible to all consumers • Developer productivity • QoS • Battle tested runtime
  • 23. Summary • Need for Enterprise Data Services for SOA • Challenges faced when implementing Data Services • Defined Data Services • QoS, Life cycle expectations from a Data Services implementation
  • 24. Demo • Expose Employee contact data in MySQL database as a service • Table Structure
  • 28.
  • 30. References • http://wso2.org (Developer Portal for WS devlopers) – WSO2 ESB (Apache Synapse) – WSO2 Web Service Application Server (Apache Axis2) – Registry – Mashup Server – Data Services Solution – Identity Solution • http://wso2.org/projects/solutions/data- services/java • http://wso2.com(commercial support)