SlideShare a Scribd company logo
1 of 37
Querying Data Providing Web Services Manivasakan  Sabesan  Uppsala  DataBase   Laboratory Dept. of Information Technology Uppsala University Sweden
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Our problem area
Search information Search information through web services Automatically generated parallel programs WSMED US States information Place Details Weather Forecast  information Web service operations
Our approach WSMED, a web service based mediator prototype: WSMED mediator SQL query result wrapper DPWSO 1 wrapper DPWSO 2 wrapper DPWSO n SOAP SOAP SOAP WSDL Data Providing Web Service Operations
Relational WSMED view View  food  is based on the web service operation : SearchFoodByDescription  select  descry from   food where   gpcode = ’1900’  and   keyword = ’Sweet’; SQL Query: WSDL  document  ≡ ndb keyword descry gpcode 19080 Sweet Candies, Sweet chocolate 1900 ……… . ……… ………… ……… .
Research questions ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Web  Service  MEDiator (WSMED) system architecture ,[object Object],[object Object],[object Object],WSDL Importer Web service Manager SQL query Query Processor WSMED  enrichments Web service Schema Web service Meta-database Results Web Service WSDL document
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
Semantic enrichments ,[object Object],[object Object]
create view  food(ndb, keyword, descry, gpcode) as < wrapper definition >; create view  foodclasses(ndb, keyword, gpcode)  as select  ndb, keyword, gpcode  from  food; create view  fooddescriptions(ndb, descry)  as select  ndb, descry  from  food; Multi-level views SQL query accesses the above views: select  fd.descry from  foodclasses fc, fooddescriptions fd where  fc.ndb=fd.ndb  and  fc.gpcode=’1900’;
Query execution strategies  ,[object Object],[object Object],[object Object],[object Object]
Comparison of query execution strategies
Full semantic enrichment Vs hash join Hash join requires memory to materialize results of the web service calls 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 0 100 200 300 400 500 600 700 800 900 Number of Food Items Response Time(sec) hash join  semantic enrichment
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
Adaptive parallelization ,[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Parallelization of queries calling  dependent  web service operations WS 1 WS 2 WS 3 WS n
Example query select  gl.City , gl.TypeId from   GetAllStates gs, GetPlacesWithin gp, GetPlaceList gl where   gs.state=gp.state  and   gp.distance=15.0  and    gp.placeTypeToFind='City'  and   gp.place='Atlanta'  and    gl.placeName=gp.ToPlace + ', ' + gp.ToState  and   gl.MaxItems=100  and     gl.imagePresence='true' Finds  information about places located within  15  km from each  City  named ’ Atlanta ‘ in all US states  Invokes  300  web service calls and r eturns a stream of  360  tuples <City,  TypeId> GetAllStates GetPlacesWithin GetPlaceList <state> <ToPlace,  ToState> <15,’City’,’Atlanta’> <100,’true’>
Parallel plans in WSMED Parallel query plan SQL query Calculus  Generator Parallel pipeliner Plan function generator Central plan creator Plan splitter Phase  1 Phase 2 central plan
Manually parallelized execution plan (FF_APPLYP) ,[object Object],[object Object],[object Object],[object Object],Level 2   q0 q1 q3 q4 q2 GetPlacesWithin GetAllStates GetPlaceList q5 q8 q7 q6 Coordinator   Level 1  Query <State> FF_APPLYP( PF2, 3, ToPlace,ToState ) <City, TypeID> γ GetAllStates() FF_   APPLYP( PF1, 2, State ) <ToPlace, ToState> Parallel Plan Process tree
Define process tree by  manually  specifying fanouts per level: FF_APPLYP( Function   PF ,  Integer  fo ,  Stream   pstream ) ->   Stream   result ,[object Object],[object Object],[object Object],[object Object],[object Object],q3 q4 q5 PF PF PF p 1 p 2 p 3 FF_APPLYP FF_APPLYP r 1 r 2 r 3 p 4 p 5 p 6 PF p 1 , p 2 , p 3 r 1 p 4 r 3 p 5 r 2 p 6
Observations ,[object Object],[object Object],Non parallel plan Best execution time
AFF_APPLYP ,[object Object],Automatically  adapts  process tree at run time: AFF_APPLYP( Function   PF ,  Stream   pstream ) ->   Stream   result q0 q1 q3 q4 q2 q6 q5 Coordinator  Level 1   Level 2
AFF_APPLYP (cont.) 2.  Executes a  monitoring cycle   for each invocation of PF for argument tuple a i  in non-leaf node 2.1  After the first monitoring cycle A FF_APPLYP  adds   p  new child processes - an  add stage  to compare performance change 3.   When an added node has several levels of children, recursive  init stages of A FF_APPLYP s   will produce  a binary sub–tree q0 q1 q3 q4 q2 q5 Coordinator  Level 1  q7 q9 q8 q10 Level 2  q6 q11
AFF_APPLYP (cont.) 4.   A FF_APPLYP   records per monitoring cycle  i  the average time  t i  to produce an  incoming tuple from the children 4.1  If  t i  decreases more than a threshold  the add stage is rerun 4.2  If  t i  increases we either  add no more children  or run a  drop stage  that  drops one  child and its  children  q0 q1 q3 q4 q2 q5 Coordinator   Level 1  q12 q10 Level 2  q6 q11
Adaptive results p - number of children added after each monitoring cycle Methods with different p value Non parallel plan Best FF_APPLYP Best AFF_APPLYP
[object Object],[object Object],Parameterized adaptive parallelization ,[object Object],WS 5 WS 1 WS 2 WS 3 WS 4 WS 1 WS 2 WS 3 WS 4 WS 5
PAP(Vector of Function   VPF ,  Stream   pstream , Vector   argorder,   Vector   resorder   ) ->   Stream   result ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],PAP operator (Parameterized Adaptive Parallelization)
Experimental study ,[object Object],[object Object],[object Object],WS 1 WS 2 WS 3 WS 4 WS 5 WS 1 WS 2 WS 3 WS 4 WS 5 Cache WS 5 WS 1 WS 2 WS 3 WS 4
Experimental results Experiments with adaptive strategies  Relative scalability
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Web service query service
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
Contributions of papers A - Answered  PA  – Partially answered 1.  Paper1  - Semantic enrichments  2.  Paper II  - Adaptive parallelization with dependent calls: AFF_APPLYP 3.  Paper III  - Adaptive parallelization with dependent & independent calls: PAP 4.  Paper IV  - Web service query service Research questions Paper I Paper II Paper III paper IV 1. How can web service standards be automatically utilized? A A A 2. How can views of web service operations be automatically generated?   PA A A 3. How can query optimization  be used to provide efficient and scalable search from web services? PA PA A 4. How can the query optimizer speed up queries without any cost estimate? PA PA A 5. How can data sources that are not accessible via web services be transformed into web services? A 6. How can Everything as a Service paradigm be used for querying web services? A
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Related work
Future directions ,[object Object],[object Object],[object Object],[object Object],[object Object]
Thank you for your attention ,[object Object],“ The un-queried life is not worth living”

More Related Content

Similar to Ph d defense_Department of Information Technology, Uppsala University, Sweden

Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play appsYevgeniy Brikman
 
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드confluent
 
Azure appservice
Azure appserviceAzure appservice
Azure appserviceRaju Kumar
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NETPeter Gfader
 
Web services Hand_Out
Web services Hand_OutWeb services Hand_Out
Web services Hand_OutKumar Gupta
 
REST to JavaScript for Better Client-side Development
REST to JavaScript for Better Client-side DevelopmentREST to JavaScript for Better Client-side Development
REST to JavaScript for Better Client-side DevelopmentHyunghun Cho
 
Passenger 6 generic language support presentation
Passenger 6 generic language support presentationPassenger 6 generic language support presentation
Passenger 6 generic language support presentationHongli Lai
 
Transforming Mobile Push Notifications with Big Data
Transforming Mobile Push Notifications with Big DataTransforming Mobile Push Notifications with Big Data
Transforming Mobile Push Notifications with Big Dataplumbee
 
On the need for applications aware adaptive middleware in real-time RDF data ...
On the need for applications aware adaptive middleware in real-time RDF data ...On the need for applications aware adaptive middleware in real-time RDF data ...
On the need for applications aware adaptive middleware in real-time RDF data ...Zia Ush Shamszaman
 
Introduction to Structured Streaming
Introduction to Structured StreamingIntroduction to Structured Streaming
Introduction to Structured StreamingKnoldus Inc.
 
Serverless ML Workshop with Hopsworks at PyData Seattle
Serverless ML Workshop with Hopsworks at PyData SeattleServerless ML Workshop with Hopsworks at PyData Seattle
Serverless ML Workshop with Hopsworks at PyData SeattleJim Dowling
 
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...Databricks
 
Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2zhang hua
 
Microsoft Windows Azure - Diagnostics Presentation
Microsoft Windows Azure - Diagnostics PresentationMicrosoft Windows Azure - Diagnostics Presentation
Microsoft Windows Azure - Diagnostics PresentationMicrosoft Private Cloud
 
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...Data Con LA
 

Similar to Ph d defense_Department of Information Technology, Uppsala University, Sweden (20)

les07.pdf
les07.pdfles07.pdf
les07.pdf
 
Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play apps
 
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드
Confluent Workshop Series: ksqlDB로 스트리밍 앱 빌드
 
Azure appservice
Azure appserviceAzure appservice
Azure appservice
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
les08.pdf
les08.pdfles08.pdf
les08.pdf
 
Serverless Apps with AWS Step Functions
Serverless Apps with AWS Step FunctionsServerless Apps with AWS Step Functions
Serverless Apps with AWS Step Functions
 
Web services Hand_Out
Web services Hand_OutWeb services Hand_Out
Web services Hand_Out
 
PDC Highlights
PDC HighlightsPDC Highlights
PDC Highlights
 
REST to JavaScript for Better Client-side Development
REST to JavaScript for Better Client-side DevelopmentREST to JavaScript for Better Client-side Development
REST to JavaScript for Better Client-side Development
 
Passenger 6 generic language support presentation
Passenger 6 generic language support presentationPassenger 6 generic language support presentation
Passenger 6 generic language support presentation
 
Transforming Mobile Push Notifications with Big Data
Transforming Mobile Push Notifications with Big DataTransforming Mobile Push Notifications with Big Data
Transforming Mobile Push Notifications with Big Data
 
On the need for applications aware adaptive middleware in real-time RDF data ...
On the need for applications aware adaptive middleware in real-time RDF data ...On the need for applications aware adaptive middleware in real-time RDF data ...
On the need for applications aware adaptive middleware in real-time RDF data ...
 
Introduction to Structured Streaming
Introduction to Structured StreamingIntroduction to Structured Streaming
Introduction to Structured Streaming
 
Serverless ML Workshop with Hopsworks at PyData Seattle
Serverless ML Workshop with Hopsworks at PyData SeattleServerless ML Workshop with Hopsworks at PyData Seattle
Serverless ML Workshop with Hopsworks at PyData Seattle
 
Advanced redux
Advanced reduxAdvanced redux
Advanced redux
 
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...
A Practical Approach to Building a Streaming Processing Pipeline for an Onlin...
 
Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2
 
Microsoft Windows Azure - Diagnostics Presentation
Microsoft Windows Azure - Diagnostics PresentationMicrosoft Windows Azure - Diagnostics Presentation
Microsoft Windows Azure - Diagnostics Presentation
 
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...
Big Data Day LA 2016/ Big Data Track - Portable Stream and Batch Processing w...
 

Recently uploaded

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 

Recently uploaded (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 

Ph d defense_Department of Information Technology, Uppsala University, Sweden

  • 1. Querying Data Providing Web Services Manivasakan Sabesan Uppsala DataBase Laboratory Dept. of Information Technology Uppsala University Sweden
  • 2.
  • 3.
  • 4. Search information Search information through web services Automatically generated parallel programs WSMED US States information Place Details Weather Forecast information Web service operations
  • 5. Our approach WSMED, a web service based mediator prototype: WSMED mediator SQL query result wrapper DPWSO 1 wrapper DPWSO 2 wrapper DPWSO n SOAP SOAP SOAP WSDL Data Providing Web Service Operations
  • 6. Relational WSMED view View food is based on the web service operation : SearchFoodByDescription select descry from food where gpcode = ’1900’ and keyword = ’Sweet’; SQL Query: WSDL document ≡ ndb keyword descry gpcode 19080 Sweet Candies, Sweet chocolate 1900 ……… . ……… ………… ……… .
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. create view food(ndb, keyword, descry, gpcode) as < wrapper definition >; create view foodclasses(ndb, keyword, gpcode) as select ndb, keyword, gpcode from food; create view fooddescriptions(ndb, descry) as select ndb, descry from food; Multi-level views SQL query accesses the above views: select fd.descry from foodclasses fc, fooddescriptions fd where fc.ndb=fd.ndb and fc.gpcode=’1900’;
  • 12.
  • 13. Comparison of query execution strategies
  • 14. Full semantic enrichment Vs hash join Hash join requires memory to materialize results of the web service calls 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 0 100 200 300 400 500 600 700 800 900 Number of Food Items Response Time(sec) hash join semantic enrichment
  • 15.
  • 16.
  • 17.
  • 18. Example query select gl.City , gl.TypeId from GetAllStates gs, GetPlacesWithin gp, GetPlaceList gl where gs.state=gp.state and gp.distance=15.0 and gp.placeTypeToFind='City' and gp.place='Atlanta' and gl.placeName=gp.ToPlace + ', ' + gp.ToState and gl.MaxItems=100 and gl.imagePresence='true' Finds information about places located within 15 km from each City named ’ Atlanta ‘ in all US states Invokes 300 web service calls and r eturns a stream of 360 tuples <City, TypeId> GetAllStates GetPlacesWithin GetPlaceList <state> <ToPlace, ToState> <15,’City’,’Atlanta’> <100,’true’>
  • 19. Parallel plans in WSMED Parallel query plan SQL query Calculus Generator Parallel pipeliner Plan function generator Central plan creator Plan splitter Phase 1 Phase 2 central plan
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. AFF_APPLYP (cont.) 2. Executes a monitoring cycle for each invocation of PF for argument tuple a i in non-leaf node 2.1 After the first monitoring cycle A FF_APPLYP adds p new child processes - an add stage to compare performance change 3. When an added node has several levels of children, recursive init stages of A FF_APPLYP s will produce a binary sub–tree q0 q1 q3 q4 q2 q5 Coordinator Level 1 q7 q9 q8 q10 Level 2 q6 q11
  • 25. AFF_APPLYP (cont.) 4. A FF_APPLYP records per monitoring cycle i the average time t i to produce an incoming tuple from the children 4.1 If t i decreases more than a threshold the add stage is rerun 4.2 If t i increases we either add no more children or run a drop stage that drops one child and its children q0 q1 q3 q4 q2 q5 Coordinator Level 1 q12 q10 Level 2 q6 q11
  • 26. Adaptive results p - number of children added after each monitoring cycle Methods with different p value Non parallel plan Best FF_APPLYP Best AFF_APPLYP
  • 27.
  • 28.
  • 29.
  • 30. Experimental results Experiments with adaptive strategies Relative scalability
  • 31.
  • 32.
  • 33.
  • 34. Contributions of papers A - Answered PA – Partially answered 1. Paper1 - Semantic enrichments 2. Paper II - Adaptive parallelization with dependent calls: AFF_APPLYP 3. Paper III - Adaptive parallelization with dependent & independent calls: PAP 4. Paper IV - Web service query service Research questions Paper I Paper II Paper III paper IV 1. How can web service standards be automatically utilized? A A A 2. How can views of web service operations be automatically generated? PA A A 3. How can query optimization be used to provide efficient and scalable search from web services? PA PA A 4. How can the query optimizer speed up queries without any cost estimate? PA PA A 5. How can data sources that are not accessible via web services be transformed into web services? A 6. How can Everything as a Service paradigm be used for querying web services? A
  • 35.
  • 36.
  • 37.

Editor's Notes

  1. Searching data through web services is an important class of application. What is data providing operation ! There are no query or view facilities provided by the web services. SQL- search data &amp; popular
  2. Web service provide a framework for applications by defining sets of operations that can be invoked over the web. Operations are described by WSDL and publicly available. Mediator don’t save any data itself. Import metadata from WSDL. Users allowed to create views and semantic enrichments. They issue SQL queries against these views. User query issued Mediator send sub queries Wrapper invokes the web service call User need to give WSDL URL Meta data imported User define views.
  3. publicly available web service to access and search to the National Nutrient Database for US Department of Agriculture contains information about the nutrient content of over 6000 food items. contains five different operations View is based 6 pages long clumsy wsdl document Explanation about attributes and key
  4. populate the web service descriptions by, given the URL of a WSDL document, reading the WSDL document using the Java tool kits WSDL4J and Castor . parses the retrieved WSDL document, converts it to the format used by the web service schema , and stores the extracted meta-data in the web service meta-database. In addition to the web service descriptions, WSMED also keeps additional user added WSMED enrichments in its local store. Query processor exploits the web service descriptions and WSMED enrichments to process queries. It utilizes an existing mediator engine Amos II query processor calls the web service manager component, which is implemented using the APIs SAAJ The web service manager is accountable for invoking web service calls using SOAP in order to retrieve the result for the user query - query processor- calculus generator produces a domain calculus expression from an SQL query expression is passed to the query rewriter for further processing to produce an equivalent but simpler domain calculus expression . query rewriter calls the view processor to translate SQL query fragments over the WSMED view into web service operations. An important task for the query rewriter is to identify overlaps between different sub-queries and views calling the same web service operation. This requires knowledge about the key constraints rewritten query is translated into an algebra expression by a cost-based optimizer that uses a generic web service cost model as default. The algebra has operators to invoke web services and to apply external functions implemented in WSDL . algebra expression is finally interpreted by the execution engine . It uses the web service meta-database to convert between the WSMED data representation and a SOAP message when a web service operation is called
  5. First approach for query optimization
  6. To illustrate the impact of key constraints we define two other views in terms of the WSMED view food . The view foodclasses is used to classify food items while fooddescriptions describes each food item. It is very natural to have these multi-level views. Multi-level view is known as defined based on the main view. Wrapper function is manually designed.
  7. Explain x, y axis values Default is 1.5 times faster than Naive Hash join is faster than 300 than default and 500 times than naive
  8. Full-semantic enrichment is 5 times faster No explicit cost model Only Key enrichment is the important
  9. A common need to search information through data providing web services , with out any side effects, returning set of objects for a given set of parameters.
  10. The views can be queried with SQL GetAllSates &amp; GetPlacesWithin with GeoPlaces web service- GetPlaceList with Terraweb service Our queries are concerning data from data providing web service- sql quite natural to express the queries and still popular around Go to demo Import terraservice and execute query
  11. Central plan – heuristic cost model- web service signature- assuming web service call is expensive Sequential execution is slow. Plan splitter can indetify the parallelizable web service calls Parallel pipe liner- generates parallel operators
  12. Multilevel execution plans generated with several layers of parallelism – process tree fanout central query plan to parallel query plan coordinator initiates communication between child processes and ships plan functions. Then it stream of different parameter tuples Algebra operators upside down results delivered as streams from child processes
  13. FF_APPLYP First Finished Apply in Parallel
  14. Manually investigation Based on the results- adaptive parallelization
  15. A common need to search information through data providing web services , with out any side effects, returning set of objects for a given set of parameters.
  16. End of call message
  17. A common need to search information through data providing web services , with out any side effects, returning set of objects for a given set of parameters.