CaGrid 1.0 Service Infrastructure


Published on

Title: CaGrid 1.0 Service Infrastructure
Author: Avinash Shanbhag

Published in: Technology, Education
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • CaGrid 1.0 Service Infrastructure

    1. 1. caGrid 1.0 Service Infrastructure ISMB/ECCB 2007 Bioinformatics Open Source Conference Vienna, Austria July 18, 2007 Avinash Shanbhag Director, Core Infrastructure Engineering National Cancer Institute Center for Biomedical Informatics and Information Technology USA
    2. 2. Agenda <ul><li>High Level Overview </li></ul><ul><li>caGrid Service Architecture </li></ul><ul><li>Component Highlights </li></ul><ul><li>Project Resources </li></ul>
    3. 3. What is caBIG? <ul><li>Common, widely distributed infrastructure that permits the cancer research community in USA to focus on secure data sharing </li></ul><ul><li>Shared, harmonized set of terminology, data elements, and data models that facilitate information exchange </li></ul><ul><li>Collection of interoperable applications developed to common standards </li></ul><ul><li>Cancer research data is available for mining and integration </li></ul>
    4. 4. caGrid – Service Infrastructure supporting caBIG <ul><li>Requirements: </li></ul><ul><ul><li>Support scientific requirements: Use cases from cancer research community </li></ul></ul><ul><ul><li>Support functional requirements: identifiers, workflow, query, etc </li></ul></ul><ul><ul><li>Support non-functional requirements: security, reliability, performance, etc </li></ul></ul><ul><li>Principles: </li></ul><ul><ul><li>Driven by cancer research community requirements </li></ul></ul><ul><ul><li>caBIG Principles </li></ul></ul><ul><ul><ul><li>Open Source, Open Access, Open Development </li></ul></ul></ul><ul><ul><ul><li>Federated </li></ul></ul></ul><ul><ul><ul><li>Syntactic and Semantic Interoperability </li></ul></ul></ul><ul><ul><li>Services-Oriented Architecture </li></ul></ul><ul><ul><li>Metadata driven and implements Virtualization </li></ul></ul><ul><ul><li>Standards based </li></ul></ul>
    5. 5. History of caGrid
    6. 6. What is a Community Provided caGrid Service? <ul><li>Standardized, common pattern and mechanism for remote access </li></ul><ul><ul><li>Language and implementation technology independent </li></ul></ul><ul><li>Common security infrastructure for authentication and authorization </li></ul><ul><li>Standardized service metadata models and metadata advertisement mechanisms </li></ul><ul><li>Community provided service types: </li></ul><ul><ul><li>Data Services </li></ul></ul><ul><ul><ul><li>Expose data to the grid in a unified way </li></ul></ul></ul><ul><ul><li>Analytical Services </li></ul></ul><ul><ul><ul><li>Expose analytical operations to the grid </li></ul></ul></ul>
    7. 7. caGrid Services - Strongly Typed and Semantically Rich <ul><li>Object Oriented APIs and data resources are developed using Object types and UML information models registered in the caDSR </li></ul><ul><li>These systems are grid-enabled by defining a grid service interface that defines the functionality to be exposed to the grid </li></ul><ul><li>The grid service interface uses the same Object types as the existing system, but leverages a platform and language neutral representation (XML) of them </li></ul><ul><li>The grid service implementation maps service invocations to API calls or queries into the existing system </li></ul>
    8. 8. Service Layers
    9. 9. Service Layers: caBIO Data Service example <ul><li>Common Data Service Operations (WSDL) </li></ul><ul><li>CQL, CQLResult, Data Service Faults (XSD) </li></ul><ul><li>caBIO Schemas (XSD) </li></ul><ul><li>caGrid Metadata Schemas (XSD) </li></ul><ul><li>WS-Enumeration Operations and Types (WSDL, XSD) </li></ul><ul><li>Introduce-managed Security constraints </li></ul><ul><li>GTS-managed Trusted Authorities </li></ul><ul><li>CSM/Grid Grouper Authorization </li></ul><ul><li>Introduce-generated ServiceMetadata </li></ul><ul><li>Introduce-generated DomainModel </li></ul><ul><li>Introduce-generated Resource to manage metadata </li></ul><ul><li>Introduce-generated Resources to manage enumerations </li></ul><ul><li>Introduce-generated code to manage service group registration and maintenance </li></ul><ul><li>Introduce managed configuration points: </li></ul><ul><ul><li>Index Service Location </li></ul></ul><ul><ul><li>Data Service Component Implementations (CQL Processor, Validators) </li></ul></ul><ul><ul><li>ApplicationService Information </li></ul></ul><ul><ul><li>Other options </li></ul></ul><ul><li>Introduce-provided common operation implementations (Resource Property, Security Metadata) </li></ul><ul><li>caGrid-provided CQL implementation to query ApplicationService </li></ul>
    10. 10. caGrid Components <ul><li>Leverage existing technologies: </li></ul><ul><ul><li>caDSR, EVS, Mobius GME: Common data elements, controlled vocabularies, schema management </li></ul></ul><ul><ul><li>Globus Toolkit (currently version 4.0.3) </li></ul></ul><ul><ul><ul><li>Core grid services infrastructure </li></ul></ul></ul><ul><ul><ul><li>Service deployment, service registry, invocation, base security infrastructure </li></ul></ul></ul><ul><li>Additional Core Infrastructure </li></ul><ul><ul><li>Higher-level security services </li></ul></ul><ul><ul><li>Grid service access to metadata components (caDSR, EVS, GME, etc) </li></ul></ul><ul><ul><li>Workflow, Identifier, Federated Query services </li></ul></ul><ul><li>Service Provider Tooling (Introduce) </li></ul><ul><ul><li>Graphical service development and configuration environment </li></ul></ul><ul><ul><li>Abstractions from grid service infrastructure for Data and Analytical services </li></ul></ul><ul><ul><li>Deployment wizards </li></ul></ul><ul><li>Client Tooling </li></ul><ul><ul><li>Installer </li></ul></ul><ul><ul><li>High-level APIs for interacting with core components and services </li></ul></ul><ul><ul><li>Graphical Tools (administration tools, sample applications, etc) </li></ul></ul><ul><li>Production Deployment and Support of Infrastructure Services </li></ul>
    11. 11. caGrid Production Environment
    12. 12. caGrid Projects <ul><li>The caGrid release is oriented around a number of individual projects </li></ul><ul><li>Build process manages inter-project dependencies </li></ul><ul><li>Each project provides a specific set of functionality, and is self contained once caGrid is built </li></ul><ul><li>Grid Services: </li></ul><ul><ul><li>authentication-service, cadsr, dorian, evs, fqp, gme, gridgrouper, gts, index, syncgts, workflow, ws-naming, ws-transfer </li></ul></ul><ul><li>Grid Service Components and Extensions: </li></ul><ul><ul><li>authz, bulkDataTransfer, cabigextensions, data, sdkQuery, sdkQuery32, service-security-provider, ws-enum, ws-handlesystem </li></ul></ul><ul><li>Utilities and APIs: </li></ul><ul><ul><li>AntInstallerFramework, core, discovery, graph, gridca, metadata, metadatautils, opensaml </li></ul></ul><ul><li>Applications: </li></ul><ul><ul><li>installer, introduce, portal, security-ui </li></ul></ul>
    13. 13. Metadata Services <ul><li>Cancer Data Standards Repository (caDSR) </li></ul><ul><ul><li>caBIG projects register their data models as Common Data Elements (CDEs) which are semantically harmonized and then centrally stored and managed the caDSR </li></ul></ul><ul><ul><li>The caDSR grid service provides: </li></ul></ul><ul><ul><ul><li>Model discovery and traversal </li></ul></ul></ul><ul><ul><ul><li>caGrid standard metadata generation capabilities </li></ul></ul></ul><ul><li>Enterprise Vocabulary Services (EVS) </li></ul><ul><ul><li>EVS is set of services and resources that address the need for controlled vocabulary </li></ul></ul><ul><ul><li>The EVS grid service provides: </li></ul></ul><ul><ul><ul><li>Query access to the data semantics and controlled vocabulary managed by the EVS </li></ul></ul></ul><ul><li>Global Model Exchange (GME) </li></ul><ul><ul><li>GME is a DNS-like data definition registry and exchange service that is responsible for storing and linking together data models in the form of XML schema. </li></ul></ul><ul><ul><li>The GME grid service provides: </li></ul></ul><ul><ul><ul><li>Access to the authoritative structural representation of data types on the grid </li></ul></ul></ul><ul><li>Globus Information Services: Index Service </li></ul><ul><ul><li>The Globus Information Services infrastructure provides a generic framework for aggregation of service metadata, a registry of running Grid services, and a dynamic data-generating and indexing node, suitable for use in a hierarchy or federation of services </li></ul></ul><ul><ul><li>The Index grid service provides: </li></ul></ul><ul><ul><ul><li>Yellow and white pages for the grid </li></ul></ul></ul>
    14. 14. caGrid Security Components <ul><li>Dorian </li></ul><ul><ul><li>Grid User Account Management </li></ul></ul><ul><ul><li>Enables Identity Management and Federation </li></ul></ul><ul><li>Authentication Service </li></ul><ul><ul><li>Provides a uniform authentication interface in which applications can be built on, and a framework for issuing SAML assertions for existing credential providers such that they may easily integrated with Dorian and other grid credential providers </li></ul></ul><ul><li>Grid Trust Service (GTS) </li></ul><ul><ul><li>Creation and Management of a federated trust fabric. </li></ul></ul><ul><ul><li>Supports applications and services in deciding whether or not signers of digital credentials/user attributes can be trusted. </li></ul></ul><ul><li>Grid Grouper </li></ul><ul><ul><li>Grid Group / VO Management </li></ul></ul><ul><ul><li>Enables Group/VO Based Authorization </li></ul></ul><ul><li>Authorization Support </li></ul><ul><ul><li>Provides a framework to perform service authorization based on permissions from both the Common Security Module (CSM) as well as Grid Grouper groups </li></ul></ul><ul><li>Security Communication Metadata </li></ul><ul><ul><li>Metadata providing the ability for two parties to negotiate a communication mechanism which meets the service’s requirements </li></ul></ul><ul><li>Grid CA </li></ul><ul><ul><li>APIs and Command Line for platform independent certificate authority </li></ul></ul>
    15. 15. Introduce Overview <ul><li>A framework which enables fast and easy creation of strongly typed and highly interoperable grid services </li></ul><ul><li>Provides a powerful extension system wherein specific functionality can be added to the service or service editing process </li></ul><ul><ul><li>Support for caDSR, GME, caGrid metadata, Data Services, and caGrid authorization services are all added this way </li></ul></ul><ul><li>Abstracts all the details of the grid from the developer, allowing them to focus on the business logic being exposed </li></ul><ul><li>Provides a graphical environment </li></ul>
    16. 16. Introduce Graphical Development Environment <ul><li>GUI for creating and manipulating a grid service </li></ul><ul><ul><li>Provides means of simple creation of service skeleton that a developer can then implement, build, and deploy </li></ul></ul><ul><ul><li>Automatic code generation of complete caBIG compliant grid service which is configured to provide: </li></ul></ul><ul><ul><ul><li>Advertisement </li></ul></ul></ul><ul><ul><ul><li>Standard Metadata </li></ul></ul></ul><ul><ul><ul><li>Security </li></ul></ul></ul><ul><ul><ul><li>Complete Client API </li></ul></ul></ul>
    17. 17. GAARDS Security Infrastructure
    18. 18. Project Resources and Communication <ul><li>caGrid Homepage: </li></ul><ul><ul><li> </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>caGrid 1.0 Release: </li></ul><ul><ul><li>Release Notes: </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>caGrid 1.0 GForge Home: </li></ul><ul><ul><li>Feature Requests </li></ul></ul><ul><ul><li>Bug Reports </li></ul></ul><ul><ul><li>Discussion Forums </li></ul></ul><ul><ul><li>Public Wiki </li></ul></ul><ul><ul><li>Downloads / Source Repository </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>caGrid Users Mailing List </li></ul><ul><ul><li> </li></ul></ul><ul><ul><li>[email_address] </li></ul></ul><ul><li>Architecture Workspace </li></ul><ul><ul><li>Community direction from Working Groups </li></ul></ul><ul><ul><li>Report out and feedback during WS calls </li></ul></ul>
    19. 19. Acknowledgements : caGrid Team <ul><li>Ohio State University </li></ul><ul><ul><li>Joel Saltz </li></ul></ul><ul><ul><li>Scott Oster </li></ul></ul><ul><ul><li>Shannon Hastings </li></ul></ul><ul><ul><li>Stephen Langella </li></ul></ul><ul><ul><li>David Ervin </li></ul></ul><ul><ul><li>Tahsin Kurc </li></ul></ul><ul><li>Argonne National Laboratory </li></ul><ul><ul><li>Ian Foster </li></ul></ul><ul><ul><li>William E. Allcock </li></ul></ul><ul><ul><li>Frank Siebenlist </li></ul></ul><ul><ul><li>Mike Wilde </li></ul></ul><ul><ul><li>Ravi Madduri </li></ul></ul><ul><ul><li>Jarek Gawor </li></ul></ul><ul><ul><li>Rachana Ananthakrishnan </li></ul></ul><ul><li>Duke University </li></ul><ul><ul><li>Patrick McConnell </li></ul></ul><ul><li>Georgetown University </li></ul><ul><ul><li>Steve Moore </li></ul></ul><ul><ul><li>Arnie Miles </li></ul></ul><ul><ul><li>Paul Kennedy </li></ul></ul><ul><ul><li>Chad La Joie </li></ul></ul><ul><li>Science Applications International Inc. </li></ul><ul><ul><li>Manav Kher </li></ul></ul><ul><li>ScenPro Inc </li></ul><ul><ul><li>David Wellborn </li></ul></ul><ul><ul><li>Val Bragg </li></ul></ul><ul><li>SemanticBits, LLC </li></ul><ul><ul><li>Vinay Kumar </li></ul></ul><ul><li>Oracle Corp. </li></ul><ul><ul><li>Christophe Ludet </li></ul></ul><ul><li>Booz Allen Hamilton </li></ul><ul><ul><li>Arumani Manisundaram </li></ul></ul>
    20. 20. Acknowledgements <ul><li>National Cancer Institute Center for Bioinformatics </li></ul><ul><ul><li>George Komatsoulis </li></ul></ul><ul><ul><li>Frank Hartel </li></ul></ul><ul><ul><li>Denise Warzel </li></ul></ul><ul><ul><li>Peter Covitz </li></ul></ul>