OGSA-DAI An Overview OGSA-DAI on OMII 2.0 OMII The Open Middleware Infrastructure Institute NeSC, Edinburgh, 14 September 2005 Amy Krause EPCC a.krause@epcc.ed.ac.uk Goals for this presentation • Overview of OGSA-DAI • How to install, configure and use OGSA-DAI WSI 1.0 on OMII 2.0 14 March 2005 http://www.ogsadai.org.uk/ 2 Goals for OGSA-DAI • Aim to deliver application mechanisms that: – Meet the data requirements of Grid applications – Functionality, performance and reliability – Reduce development cost of data centric Grid applications – Provide consistent interfaces to data resources – Acceptable and supportable by database providers – Trustable, imposed demand is acceptable, etc. – Provide a standard framework that satisfies standard requirements • A base for developing higher-level services – – – – Data federation Distributed query processing Data mining Data visualisation 14 March 2005 http://www.ogsadai.org.uk/ 3 Terminology - Data • Data Resource – Any object that can source/sink data – Example: relational databases, a file system • Data Service – Common interface to a data resource – Exposes capabilities of the data resource – SQL Queries, XPath Queries – May provide additional capabilities – Data transformations, 3rd party data delivery • OGSA-DAI – Open Grid Services Architecture Data Access and Integration 14 March 2005 http://www.ogsadai.org.uk/ 4 OGSA-DAI in a Nutshell • All you need to know about OGSADAI in a handy pocket sized book! • Updated for Version 6.0 14 March 2005 http://www.ogsadai.org.uk/ 5 High Level Design Client Client Toolkit API Client OGSA-DAI Data Services WS-RF WS-RF OGSI WS-I OGSI WS-I SOAP over HTTP WS-RF Server Presentation WS-I Business Logic DAI Core Relational 14 March 2005 OGSI XML http://www.ogsadai.org.uk/ File Data 6 OGSA-DAI Services • OGSA-DAI uses data services to represent and provide access to a number of data resources Data Service accesses Data Resource 14 March 2005 Data Resource http://www.ogsadai.org.uk/ Data Resource 7 Heterogeneity Data Service Xindice MySQL Oracle DB2 • Data source abstraction behind data service – plug in data resources for different data source technologies – does not mandate any particular query language or data format 14 March 2005 http://www.ogsadai.org.uk/ 8 Multiple Service Interfaces • WS-I: – WSDL, SOAP, WS-I 1.0. – Axis 1.2, OMII 1.0 or OMII 2.0 • WS-RF: – WS-Addressing, WS-RF. – Globus Toolkit 4. • OGSI (deprecated in R7): – OGSI 1.0. – Globus Toolkit 3. 14 March 2005 http://www.ogsadai.org.uk/ 9 Supported Data Resources Relational XML MySQL Xindice DB2 eXist Oracle PostgreSQL SQLServer 14 March 2005 Other Files ? http://www.ogsadai.org.uk/ 10 Activities • An Activity dictates an action to be performed, e.g. – Query a data resource – Transform data – Deliver results • Engine processes a sequence of activities • Subset of activities available to a Data Resource – Specified in configuration files • Data can flow between activities SQL Query Statement 14 March 2005 WebRowSet xml data XSLT Transform http://www.ogsadai.org.uk/ HTML data Delivery ToURL 11 OGSA-DAI Deck of Activities 14 March 2005 http://www.ogsadai.org.uk/ 12 Client Toolkit • Why? Nobody wants to write XML! • A programming API which makes writing applications easier – Now: Java – Next: Perl, C, C#? // Create a query SQLQuery query = new SQLQuery(SQLQueryString); ActivityRequest request = new ActivityRequest(); request.addActivity(query); // Perform the query Response response = gds.perform(request); // Display the result ResultSet rs = query.getResultSet(); displayResultSet(rs, 1); 14 March 2005 http://www.ogsadai.org.uk/ 13 Interaction Examples Container Data Service Client List Resources Data Resource3 Data Resource2 Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 14 Interaction Examples Data Resource1 Data Resource2 Data Resource3 Container Data Service Client List Resources Data Resource3 Data Resource2 Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 15 Interaction Examples To: Data Resource1 <query> Select name from … </query> Client Query Container Data Service Data Resource3 Data Resource2 Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 16 Interaction Examples Container Query Client <webRowSet> <data> <row> … </data> </webRowSet> Data Service Data Resource3 Data Resource2 Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 17 Interaction Examples Container Query + Delivery Client Data Service Data Resource3 Data Resource2 Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 18 Interaction Examples Container Query Client Data Service Data Resource3 Data Resource2 <webRowSet> <data> <row> … </data> </webRowSet> Data Resource1 Data Resource 14 March 2005 http://www.ogsadai.org.uk/ 19 Why OGSA-DAI? • Why use OGSA-DAI over JDBC? – Can embed additional functionality at the service end – Transformations, compressions – Third party delivery – The extensible activity framework – Avoiding unnecessary data movement – Common interface to heterogeneous data resources – Relational, XML databases, and files – Usefulness of the Registry for service discovery – Dynamic service binding process – Provision of good meta-data is necessary – Language independence at the client end – Do not need to use Java – Platform independence – Do not have to worry about connection technology, drivers, etc 14 March 2005 http://www.ogsadai.org.uk/ 20 Current release: OGSA-DAI WS-I 1.0 • Based on Apache Axis, also works with OMII 2.0 • middleware distribution – An OGSA-DAI “Data Service” combining metadata, configuration and perform document capabilities – Access to service metadata provided by a partial implementation of the WS-ResourceProperties specification. – Example clients for testing and coding reference. – Client Toolkit Caveats/Issues: – No security support – Interfaces will be extended for R7 14 March 2005 http://www.ogsadai.org.uk/ 21 OGSA-DAI Project Webpage • http://www.ogsadai.org.uk Background News & Events Software Releases Documentation On-line Tutorials Support Training Courses Links 14 March 2005 http://www.ogsadai.org.uk/ 22 FAQ, Support, Mailing List • Frequently Asked Questions – http://www.ogsadai.org.uk/support/faq.php – Updated as common problems become clear • Support for OGSA-DAI releases – http://www.ogsadai.org.uk/support – support@ogsadai.org.uk – Use to report problems • Discussion list – users@ogsadai.org.uk – http://www.ogsadai.org.uk/support/list.php – General discussion of OGSA-DAI, data and the Grid 14 March 2005 http://www.ogsadai.org.uk/ 23