1 / 16

AJDL: Analysis Job Description Language

AJDL: Analysis Job Description Language. PPDG Collaboration Meeting LBL. David Adams BNL December 15, 2003. Analysis AJDL Data object types Service functions Conclusions. Contents. Analysis service. Functionality User specifies application, task and dataset

kelvin
Download Presentation

AJDL: Analysis Job Description Language

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AJDL: Analysis Job Description Language PPDG Collaboration Meeting LBL David Adams BNL December 15, 2003

  2. Analysis AJDL Data object types Service functions Conclusions Contents AJDL PPDG All Hands – uJDL session

  3. Analysis service • Functionality • User specifies application, task and dataset • Service processes and returns result • User examines result, modifies task or changes dataset and resubmits • User monitors job during processing • User has option to kill job • Common interface • Provides the above • Allows generic service to be shared • Robust, efficient analysis service is difficult AJDL PPDG All Hands – uJDL session

  4. 9. fill Job 1 Dataset 1 Dataset 2 Result 7. create Dataset 6. split 10. gather Analysis Svc 4. select e.g. ROOT User Analysis 1. Create or locate 5. submit(app,tsk,ds,cfg) e.g. athena Job 2 2. select 3. Create or select Result Application Task 9. fill Analysis service Result Code AJDL PPDG All Hands – uJDL session

  5. AJDL as a bridge AJDL PPDG All Hands – uJDL session

  6. AJDL • Analysis Job Description Language (AJDL) includes • Data object types • E.g. could be expressed in XML • Analysis service functions taking objects as arguments • E.g. SOAP messages • For now, we are more concerned with the content of these objects and messages • Rather than the format • However, need format for implementation • DIAL WSDL and DTD is close AJDL PPDG All Hands – uJDL session

  7. Data object types • Application • Task • Dataset (and subtypes) • Configuration • Result (and subtypes?) • Job AJDL PPDG All Hands – uJDL session

  8. Application • Purpose • Specify the application executable • Content • Name and version (of application SW package) • Analysis service usage • Locate script to build task • Locate script to process dataset and generate result • Package management service • Provides location of app package (name, version) • May install app package and dependencies • Exe is likely in separate package AJDL PPDG All Hands – uJDL session

  9. Task • Purpose • Allow user to configure application • Content • Collection of named files • Embedded text or • Logical files • Files contain parameters and code • Analysis service usage • Use with script to build task • Stage files for building task AJDL PPDG All Hands – uJDL session

  10. Dataset • Purpose • Specify and split data for processing • Content • Description used by application processing script • Dataset subtype • Event count and ID list • EventDataset • List of constituent datasets • CompoundDataset • Abstract dataset specification • VirtualDataset (no location) • QueryDataset AJDL PPDG All Hands – uJDL session

  11. Dataset (cont) • Analysis service usage • Used with script to process data and generate result • Pass dataset to script • Split dataset to create sub-jobs • EventDataset to split along event boundaries • CompoundDataset provides guidance for splitting • Find concrete dataset for abstract specification • Use dataset selection service for QueryDataset • Use dataset replica service for VirtualDataset AJDL PPDG All Hands – uJDL session

  12. Configuration • Purpose • Specify how to process dataset • Content • User identity and role • Response time • Desired • Maximum acceptable • Accounting • Account to charge • Budget AJDL PPDG All Hands – uJDL session

  13. Result • Purpose • Communicate results to user • Content • Datasets • Named files • Embedded or logical • For arbitrary data • E.g. collection of histograms • Or use Result subtype? AJDL PPDG All Hands – uJDL session

  14. Job • Purpose • Communicate job status and results to user • Content • Application, task, dataset and configuration • Result • Possibly partial • Status • Running, done, failed, … • Start, stop and update times AJDL PPDG All Hands – uJDL session

  15. Service functions • Analysis service includes • bool has_application(Application) • bool has_task(Application, Task) • bool install_task(Application, Task) • JobId submit(Application, Task, Dataset, Config) • Job job(JobId) • bool kill(JobId) AJDL PPDG All Hands – uJDL session

  16. Conclusions • Standard analysis service interface • Allow common service to be shared • First pass presented here • More information • AJDL document • DIAL JDL page AJDL PPDG All Hands – uJDL session

More Related