abstraction layers why do we need them? –protection against change where in the hourglass do we...

10
Abstraction Layers Why do we need them? Protection against change Where in the hourglass do we put them? Computer Scientist perspective • Expose low-level services • Use SOAP as a wire protocol? Working Scientist perspective • Want high-level services • Use C/C++/Java APIs • Opaque Service & Interaction Handles

Upload: ella-mackenzie

Post on 28-Mar-2015

215 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

Abstraction Layers

• Why do we need them?– Protection against change

• Where in the hourglass do we put them?– Computer Scientist perspective

• Expose low-level services• Use SOAP as a wire protocol?

– Working Scientist perspective• Want high-level services• Use C/C++/Java APIs• Opaque Service & Interaction Handles

Page 2: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

What Services / Abstractionsdo we need?

• Look at some projects:– CLRC e-Science Centre – AstroGrid– MyGrid– ICENI– OGSA

Page 3: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

CLRC e-Science Centre

• Single sign-on authentication• Security service• Authorisation• Additional user services

(including local user management)

• Resource discovery service• Workspace creation service• 3rd party file transfer facility• XML parser service• Query generation• Replication

• Data source discovery• Results collation• Dynamic resource monitoring• Event handling services• Messaging service• Job submission• Job monitoring• Visualisation• Computational steering• Thesaurus service• Ontology service.

Page 4: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

AstroGrid

VO=Virtual Observatory

Page 5: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

MyGrid – Architecture

Page 6: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

MyGrid Services• User Agent & Repository• Notification• Workflow: Personalisation, Resolution, Enactment & Serialisation• Databases & Distributed Query• Job Scheduling & Resource Management• Information Extraction• Authentication• Service Directory• User, Group & Roles Directory• Workflow Provenance & Repository• Ontologies – Service function & metadata

Page 7: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

ICENI

• Low-level services– Computational

– Storage

– Software

– Networking

• High-level services– Application composition to define workflow

– Scheduling (mapping components to resources)

– Throughput (resource brokering)

Page 8: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

OGSA (17/2/02)• Is a Grid Service also a Web Service?

– YES as it has ports (described in WSDL) for:• Grid Service (Introspection & termination)• Notification Source & Sink• Registration of Grid Service Handles• Service creation (factory) • Primary Key (map key to GSH)• Mapping (map GSH to GSR)

– BUT can only be deployed in an OSGA compatible hosting environment

• Is a Web Service also a Grid Service?– NO as it ‘misses’ out on the extra capability– BUT can be deployed within an OGSA environment

Page 9: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

OGSA Services

• Low-level services– Execution, file transfer & service meta-data (?)

• Higher-level services– Distributed Data Management

– Work flow

– Auditing

– Instrumentation & monitoring

– Problem determination (e.g. dump, trace & log)

– Security protocol mapping

Page 10: Abstraction Layers Why do we need them? –Protection against change Where in the hourglass do we put them? –Computer Scientist perspective Expose low-level

Common Requirements?

• Low-level:– Security– Execution– Database Access– Data movement– Service Management

• High-level:– Workflow management (Scheduling)– Usage & Access Policy– Notification (Events & Messaging)