OGSA-DAI Architecture The OGSA-DAI Team

Slides:



Advertisements
Similar presentations
OGSA-DAI Activities OGSA-DAI for Developers GridWorld 2006, Washington DC 11 September 2006.
Advertisements

Integrated Platform version 5.2
Connecting to Databases. relational databases tables and relations accessed using SQL database -specific functionality –transaction processing commit.
“Workflow” in Data Access and Integration An OGSA-DAI/DAIS Perspective Mario Antonioletti EPCC
A Prototype Implementation of a Framework for Organising Virtual Exhibitions over the Web Ali Elbekai, Nick Rossiter School of Computing, Engineering and.
1 XML Web Services Practical Implementations Bob Steemson Product Architect iSOFT plc.
1.  Understanding about How to Working with Server Side Scripting using PHP Framework (CodeIgniter) 2.
OGSA-DAI Lectures Part 2 Tom Sugden, EPCC 2 nd International Summer School on Grid Computing, Vico Equense, Italy.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Amy Krause Applications Consultant, EPCC Tom Sugden Applications Consultant, EPCC OGSA-DAI Client Toolkit Principles.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 13 Introduction to SQL Programming Techniques.
Implementing an Activity EPCC, University of Edinburgh Tom Sugden First International Summer School on Grid Computing, Vico Equense,
Inside the GDS The Engine, Activities, Data Resource Implementations and Role Mapping EPCC, University of Edinburgh Tom Sugden First.
1 An Introduction to OGSA-DAI Konstantinos Karasavvas 13 th September 2005.
Writing Perform Documents EPCC, University of Edinburgh Amy Krause ( Tom Sugden First International Summer.
Mike Jackson EPCC OGSA-DAI Today Release 2.2 Principles and Architectures for Structured Data Integration: OGSA-DAI.
Amy Krause Applications Consultant, EPCC Extending OGSA-DAI Principles and Architectures for Structured Data Integration: OGSA-DAI.
Chapter 14 Database Connectivity and Web Technologies
17 July 2006ISSGC06, Ischia, Italy1 Agenda Session 26 – 14:30-16:00 An Overview of OGSA-DAI OGSA-DAI today – and future features How to extend OGSA-DAI.
SQL Server 2000 and XML Erik Veerman Consultant Intellinet Business Intelligence.
MTEI Methods & Tools for Enterprise Integration
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
UNIT-V The MVC architecture and Struts Framework.
CVSQL 2 The Design. System Overview System Components CVSQL Server –Three network interfaces –Modular data source provider framework –Decoupled SQL parsing.
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
JSP Standard Tag Library

Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 1 Quick Tutorial – Part 1 Using Oracle BPM with Open Data Web Services David Webber.
Session II Chapter 2 – Chapter 2 – XSLhttp://
Dynamic Data Exchanges with the Java Flow Processor Presenter: Scott Bowers Date: April 25, 2007.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
Data File Access API : Under the Hood Simon Horwith CTO Etrilogy Ltd.
OracleAS Reports Services. Problem Statement To simplify the process of managing, creating and execution of Oracle Reports.
CSCI 6962: Server-side Design and Programming Introduction to Java Server Faces.
Copyright © Orbeon, Inc. All rights reserved. Erik Bruchez Applications of XML Pipelines XML Prague, June 16 th, 2007.
Struts J2EE web application framework “ Model 2 ” Model View Controller Controller Servlet Key features XML metadata Struts taglib Simplified form validation.
Creating Dynamic Web Pages Using PHP and MySQL CS 320.
JSTL, XML and XSLT An introduction to JSP Standard Tag Library and XML/XSLT transformation for Web layout.
SaveUML System design. System overview Possible...
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
JSTL Lec Umair©2006, All rights reserved JSTL (ni) Acronym of  JavaServer Pages Standard Tag Library JSTL (like JSP) is a specification, not an.
OGSA-DAI in OMII-Europe Neil Chue Hong EPCC, University of Edinburgh.
1 1 EPCC 2 Curtin Business School & Edinburgh University Management School Michael J. Jackson 1 Ashley D. Lloyd 2 Terence M. Sloan 1 Enabling Access to.
© Drexel University Software Engineering Research Group (SERG) 1 An Introduction to Web Services.
Data access and integration with OGSA-DAI: OGSA-DQP Steven Lynden University of Manchester.
Copyright © 2002 ProsoftTraining. All rights reserved. JavaServer Pages.
INFSO-RI Enabling Grids for E-sciencE OGSA DAI Data Access and Integration Marek Ciglan Institute of Informatics, Slovac Academy.
The OGSA-DAI Client Toolkit The OGSA-DAI Team
Mike Jackson EPCC OGSA-DAI Architecture + Extensibility OGSA-DAI Tutorial GGF17, Tokyo.
Amy Krause EPCC OGSA-DAI An Overview OGSA-DAI Technology Update GGF17, Tokyo (Japan)
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Objective What is RFT ? How does it work Architecture of RFT RFT and OGSA Issues Demo Questions.
JAVA BEANS JSP - Standard Tag Library (JSTL) JAVA Enterprise Edition.
JDBC CS 260 Database Systems. Overview  Introduction  JDBC driver types  Eclipse project setup  Programming with JDBC  Prepared statements  SQL.
Martin Kruliš by Martin Kruliš (v1.1)1.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
Mike Jackson EPCC OGSA-DAI Today – Release 8 OGSA-DAI Tutorial GGF17, Tokyo.
Fundamentals of MyBATIS
1 CLASS – Simple NOAA Archive Access Portal SNAAP Eric Kihn and Rob Prentice NGDC CLASS Developers Meeting July 14th, 2008 Simple NOAA Archive Access Portal.
D Copyright © 2004, Oracle. All rights reserved. Using Oracle XML Developer’s Kit.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
Apache Cocoon – XML Publishing Framework 데이터베이스 연구실 박사 1 학기 이 세영.
Design of a Notification Engine for Grid Monitoring Events and Prototype Implementation Natascia De Bortoli INFNGRID Technical Board Bologna Feb.
OGSA-DAI.
Business Process Execution Language (BPEL) Pınar Tekin.
Amy Krause EPCC OGSA-DAI An Overview OGSA-DAI on OMII 2.0 OMII The Open Middleware Infrastructure Institute NeSC,
XML: Extensible Markup Language
Optimising the OGSA-DAI Enactment Model
Presentation transcript:

OGSA-DAI Architecture The OGSA-DAI Team

2 Grid Data Service Data Resource Perform Document Response Document Result Data

3 Overview  Low-level components of a Grid Data Service –Engine –Activities –Data Resource Implementation –Role Mapper  Extensibility of OGSA-DAI architecture –Interfaces and abstract classes –Design Patterns

4 Data Resource Implementation Role Mapper The Engine data query perform document response document element credentials Query Activity Transform Activity Delivery Activity role credentials connection role GDS Internals

5 Grid Data Service  GDS has a document based interface –Consumes perform documents –Produces response documents –Additional operations for 3 rd party data delivery  Motivation for using a document interface –Change in behaviour ≠> interface change –Reduce number of operation calls –Extensible

6 The GDS Engine  Engine is the central GDS component  Dictates behaviour when perform documents are submitted –Parses and validates perform document –Identifies required activities –Processes activities –Composes response document –Returns response document to GDS

7  Perform documents –Encapsulate multiple interactions with a service into a single interaction –Abstract each interaction into an “activity” –Data can flow from one activity to another –Not quite workflow No control constructs present (conditionals, loops, variables) Query  Transformation  Delivery Perform Documents

8 Activities  An Activity dictates an action to be performed –Query a data resource –Transform data –Deliver results  Engine processes a sequence of activities  Subset of activities available to a GDS –Specified in a configuration file  Data can flow between activities (chained) HTML data WebRowSet data SQL Query Statement XSLT Transform Delivery ToURL

9 Activity Taxonomy  Statement –Interact with the data resource  Delivery –Deliver data to and from 3 rd parties  Transform –Perform transformations on data Activity StatementDeliveryTransform l Activities fall into three main functional groups

10 gzipCompression zipArchive xslTransform Predefined Activities sqlQueryStatement sqlStoredProcedure sqlUpdateStatement sqlBulkLoadRowset xPathStatement xUpdateStatement xQueryStatement xmlResourceManagement xmlCollectionManagement relationalResourceManager inputStream outputStream DeliverFromURL DeliverToURL DeliverToGFTP DeliverFromGFTP DeliverToStream DeliverFromGDT DeliverToGDT DeliverToFile DeliverFromFile fileWriting directoryAccess fileAccess fileManipulation

11 The Activity Framework  Extensibility point  Users can develop additional activities –To support different query languages XQuery –To perform different kinds of transformation STX –To deliver results using a different mechanism WebDAV  An activity requires –XSD schema sql_query_statement.xsd –Java implementation SQLQueryStatementActivity

12 The Activity Class  All Activity implementations extend the abstract Activity class Activity ~ mContext: ActivityContext + Activity( element: Element ) ~ cleanUp() ~ initialise() ~ processBlock() : void ~ setCompleted()

13 Connected Activities Sql Query Statement Deliver ToURL select * from myTable where id=10

14 Connected Activities cont. Deliver ToURL select * from myTable where id=10 Sql Query Statement

15 <gridDataServicePerform xmlns=" xmlns:xsi=" xsi:schemaLocation=" This example performs a simple select statement to retrieve one row from the test database then delivers the results to an FTP location. select * from littleblackbook where id=10 The Perform Document

16 SQL Query Statement Activity Inputs and Outputs  Activities read and write blocks of data –Allows efficient streaming between activities –Reduces memory overhead  A block is a Java Object –Untyped but usually a String or byte array  Interfaces for reading and writing –BlockReader and BlockWriter XSL Transform Activity Deliver To URL

17 Relational database Data Resource Implementations  Governs access to a data resource –Open/close connections –Validate user credentials using a RoleMapper –Facilitate connection pooling  Provided for JDBC, XML:DB, and Files open connection close connection JDBC Data Resource get connection return connection SQL Query Statement

18 Accessing Data Resource Sequence Diagram :Activity:RoleMapper :DataResource Implementation Get connection using user credentials Get database role using user credentials :DatabaseRole Get user ID and password open connection using user ID and password Do exciting things with the connection Return connection :Context Get user credentials and data resource implementation

19 Advantages of the Activity Model  Avoid multiple message exchanges –Multiple activities within a single request  Extensible –Developers can add functionality –Could import third party trusted activities  Simplicity –Internal classes manage data flow, access to databases, etc  Allows for optimisation –GDS engine can optimise internals

20 Issues with Activity Model  Incomplete syntax –No typing of inputs and outputs How do you determine the data types that can be accepted?  Incomplete semantics –What does it mean to be a FilterActivity?  Keeping implementation and XML Schema fragment in synch  Puts workload on the server –May need dynamic job placement

21 Summary  The Engine is the central component of a GDS  Activities perform actions –Querying, Updating –Transforming –Delivering  Data Resource Implementations manage access to underlying data resources  Architecture designed for extensibility –New Activities –New Role Mappers –New Data Resource Implementations