Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Status of FJPPL Lyon, 13 March 2012 Sylvain Reynaud, Lionel Schwarz Plan Overview of JSAGA Adaptors – New adaptors – New contributors Standardization of Python bindings Perspectives JSAGA 2 Overview of JSAGA a Java implementation of the SAGA specification focuses on – – – – – uniform usage of middleware…. ease of extension………………. efficiency and scalability………. control of the API behavior........ operating-system independency (beyond what they natively support) (thanks to the design of adaptor interfaces) (contexts bound to remote systems) (tested on ) Under LGPL license JSAGA 3 interface Layered software architecture user applications SAGA Java binding JSAGA core engine JSAGA JSAGA adaptors interfaces JSAGA Used by end users – web portals, GUI, CLI… Used by application developers – a single uniform interface – object oriented, high-level Implemented by adaptors – each "way" to implement a given feature has 1 interface – service oriented, low-level adaptors middleware APIs implementation Implemented by middleware – each technology has its own interfaces 4 Supported technologies Batch SSH local SSH Cream Unicore6 Genesis II ARC BES wsgram gLite-WMS zip ftp file SRB SFTP HTTPS HTTP iRODS Unicore6 SRM gsiFTP Local catalog iRODS SRB LFC Data Globus G. Legacy G. RFC820 MyProxy VOMS JKS SSH Login / pwd X509 .netrc Secret Svc done InMemCred 5 Physical Logical in progress Security gatekeeper Execution New contributors for JSAGA From CHAIN consortium – Diego Scardaci • OurGrid (Brazil and Latin America) – a Desktop Grid – Meng You • Grid Operating System for CNGRID (China) –? • GARUDA (India) JSAGA 6 The SAGA specification SAGA : the specification – aS Simple A API – for using G Grid middleware • execution management …in a uniform way use middlewares in a uniform way (independent of middlewares) – job submission, monitoring... • data management – transfer, list files, search… • service discovery • … – in user A Applications • implementations (or wrappers) exist for C++, Java and Python use functionalities in a uniform way (consistent "look-and-feel") use language bindings in a similar way (language-independent specification) …but not yet uniform between Python implementations JSAGA 7 SAGA Python bindings application (Python) SAGA (Python) legacy python binding (C++) SAGA-CPP JSAGA application application (Java) (Python) SAGA interfaces (Python) JySAGA JPySAGA SAGA interfaces (Java) JSAGA Java SAGA 8 SAGA Python binding application application (Java) (Python) SAGA interfaces (Python) TO BE DONE legacy python binding (C++) SAGA-CPP JSAGA JySAGA JPySAGA SAGA interfaces (Java) JSAGA Java SAGA 9 Standardization of Python binding Based on PySAGA – Designed by Vrije University – Implemented by • JySAGA (Vrije University) • JPySAGA (CC-IN2P3) OGF doc in progress – HTML (generated from commented python code) – PDF By – Julien Devemy (CC-IN2P3) – Mark Santcroos (CCT-LSU) JSAGA 10 Perspectives Next adaptors – Grid Engine • DRMAA-based • CLI-based, with SSH – … Implement API extensions – Service Discovery API • with plug-ins for technologies – BDII • with plug-ins for schemas Engine improvement – adaptors isolation • ease integration of contributions – GLUE – CIM – Resource API • with plug-ins for pilot-jobs – DIRAC • with plug-ins for clouds – OpenNebula – openstack JSAGA 11 JSAGA 12