Physics data processing with SOA

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
Reliability on Web Services Presented by Pat Chan 17/10/2005.
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Web Services Michael Smith Alex Feldman. What is a Web Service? A Web service is a message-oriented software system designed to support inter-operable.
CHAPTER FIVE Enterprise Architectures. Enterprise Architecture (Introduction) An enterprise-wide plan for managing and implementing corporate data assets.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
DISTRIBUTED COMPUTING
CLAs Reconstruction and Analysis Physics Data Processing with SOA based Framework Vardan Gyurjyan on behalf of Clas12 software group.
Web Services Description Language (WSDL) Jason Glenn CDA 5937 Process Coordination in Service and Computational Grids September 30, 2002.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
AGENT BASED FRAMEWORK FOR EXPERIMENT CONTROL SYSTEMS … JEFFESON LAB V. GYURJYAN, D. ABBOTT, G. HEYES, E. JASTRZEMBSKI, C. TIMMER, E. WOLIN AFECS.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
CORBA1 Distributed Software Systems Any software system can be physically distributed By distributed coupling we get the following:  Improved performance.
Software Design: Principles, Process, and Concepts Getting Started with Design.
Kemal Baykal Rasim Ismayilov
Independent Insight for Service Oriented Practice Summary: Service Reference Architecture and Planning David Sprott.
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
CODA run-control JLAB DAQ Group V. Gyurjyan C. Timmer A. Smith New Horizons governor school.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
Added Value to XForms by Web Services Supporting XML Protocols Elina Vartiainen Timo-Pekka Viljamaa T Research Seminar on Digital Media Autumn.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Service Oriented Architecture & Grid Computing
Chapter 1 Characterization of Distributed Systems
Enterprise Service Bus
Case Study -- Weather system
Sabri Kızanlık Ural Emekçi
WEB SERVICES.
Unit – 5 JAVA Web Services
SOA (Service Oriented Architecture)
Software Connectors.
Distribution and components
Database Architectures and the Web
Hierarchical Architecture
#01 Client/Server Computing
Software Testing and Maintenance Designing for Change
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Service Oriented Architecture & Grid Computing
Introduction to Web Services and SOA
Inventory of Distributed Computing Concepts and Web services
Service-centric Software Engineering
Service-centric Software Engineering 1
Inventory of Distributed Computing Concepts
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Service Oriented Architecture (SOA)
Architectures of distributed systems Fundamental Models
Software Engineering with Reusable Components
Architectures of distributed systems Fundamental Models
An Introduction to Software Architecture
Distributed Systems through Web Services
Service-Oriented Computing: Semantics, Processes, Agents
AFECS Multi-Agent Framework for Experiment Control Systems
Service Oriented Architecture (SOA)
Enterprise Integration
AGENT FRAMEWORK By- Arpan Biswas Rahul Gupta.
Clas Reconstruction and Analyses framework
Introduction to Web Services and SOA
Introduction To Distributed Systems
CLAs Reconstruction and Analysis
Architectures of distributed systems Fundamental Models
The only thing worse than an experiment you can’t control is an experiment you can. May 6, 2019 V. Gyurjyan CHEP2007.
Distributed System using Web Services
Distributed Systems Architectures
#01 Client/Server Computing
Presentation transcript:

Physics data processing with SOA 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Architecture Formal description Purpose, functions, external visible properties, interfaces Internal components and their relationships Scalability and maintenance Evolution 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting What is SOA? Style of building reliable systems that deliver functionality as services Loose coupling between interacting services 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Service Atomic unit of an SOA. Encapsulates logic, data, or process. Autonomous Location Transparency It is defined by the messages it can accept and the responses it can give. Messages can be one-way, synchronous or asynchronous. They can be integrated to provide higher-level services It can be completely self-contained, or it may depend on the availability of other services or other resources. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Service interaction Service Registry Discover Advertise Service Consumer Service Provider Interact 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Loose Coupling Flexibility Scalability Replaceability Fault tolerance 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Statelessness Service Registry Discover Discover Advertise Service Provider Service Consumer 1 Data storage Service Provider 2 3 Service Provider 4/10/2019 V. Gyurjyan. CLAS12 software meeting

SOA is for distributed computing SOA design can be used for a single system - individual processes as services - communication through well defined interfaces, using local channels or high-speed interconnect. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting SO vs. OO OO advocates tight coupling, i.e. users have static knowledge of the object. Service has an internal thread of control. SOA promotes the design of the system in which it is not necessary that requests and responses are handled by the same set of communicating entities. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Do we need distributed physics data processing? HEP and NEP go GRID GRID – distributed computing in which resources often spread across different physical locations and administrative domains. Two classifications for GRID: - compute - data 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting SO GRID Grid Standards OGSI Extension to WSDL WS-Resource WS-ResourceLifetime WS-ResourceProperties WS-RenewableReferences WS-ServiceGroup WS-BaseFaults SOA Standards WSDL UDDI BPEL WS-Profile WS-Security WS-Choreography 4/10/2019 V. Gyurjyan. CLAS12 software meeting

CLAS12 mini-GRID infrastructure CNU Grid infrastructure ODU JLAB UVA 4/10/2019 V. Gyurjyan. CLAS12 software meeting

CLAs Reconstruction and Analyses framework CLAS12 software framework and middleware CLAS12 physics data processing services 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Framework design choices Separation between: a) data and algorithm b) transient and persistent data 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Algorithm services Algorithm services will process one type of data and generate data objects of a different type. Algorithm Service Data Data Data 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Persistent and Transient Data Algorithm service should not use directly data objects in the persistent storage. Transient data storage as a means of communication between physics algorithm services. Data service translates data from persistent storage into transient storage. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Why not one data object? Two different optimization criteria for applications using persistent and transient data. Being independent from the persistent storage technology. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Data service Persistent Data Transient Data Data Data Service Adapter 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Data Object categories Event data Detector data Statistical data 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Framework Services One Supervisor service for each application. Algorithm services (Tracking, Calibration, SegmentFinder, VertexReconstruction, TruthAssociation,etc.) Data services (Geometry, PersistentEvtData, PersistentDetectorData, TransientEvtData, etc.) JobOptions Messaging etc. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Hypothetical tracking Supervisor start retrieve SpacePointFormation EvtData TransientEvtData record start CoarseTrackFinder DetectorData retrieve Raw Data SeadMaker StatData Space Points VertexFinder record ClusterAnalyzer Track candidates TransientDetData retrieve start AmbiguitySolver TransientStatData record Resolved Tracks start retrieve TrackFitter Final Tracks TrackScoring Transient Storage Tracking State machine 4/10/2019 V. Gyurjyan. CLAS12 software meeting

ClaRA implementation details Platform 4/10/2019 V. Gyurjyan. CLAS12 software meeting

ClaRA Service Categories Normative services administrative service Crate and manage all other services Environment administration Supervisor service - Contains state machine of the particular data processing Data processing service NS SS S 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Communication between services All service communications are through message transfer. Message format is ACL (Agent Communication Language) defined by FIPA (Foundation for Intelligent Physical Agents). Each message is one of several predefined communication types. Message structure: - Sender - Receiver - Content (Data Object or Ontology Object) - Language - Ontology - Protocol Not understood Inform-content Refuse-reason Types Agree Failure-reason 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Service Creation NC NR NA ClaRA platform Data processing description Administrative domain and container ClaRA platform NC NR Data processing description NA Service Service container Service: Java or c/c++ through JNI 4/10/2019 V. Gyurjyan. CLAS12 software meeting

Legacy software/hardware virtualization Service abstracts software/hardware component Service invoke actions which monitor or change the component state. S S S ClaRA Platform IPC IPC IPC Fortran Program Farm Node Storage 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Summary SOA is widely seen as the basis for developing flexible, highly scalable software systems, that can span management and ownership domains, regardless of the hardware and software platforms deployed in each. SOA encourages modularity and encapsulation, and promotes system hierarchical structure. Normative services of the framework are programmed and tested. Legacy software/hardware virtualization as a service has bin developed and tested. System distribution and scalability has bin tested. 4/10/2019 V. Gyurjyan. CLAS12 software meeting

V. Gyurjyan. CLAS12 software meeting Future plans Develop PersistentEvtDataService, capable of handling EVIO data format (based on JEVIO). Define persistent detector data IO, and develop PersistentDetectorDataService. Define persistent statistics data format, and develop PersistentStatisticsDataService. Define transient data format and interface, and develop TransientDataServices. Develop ClaRA specific ontology concepts, used in service description and communications. 4/10/2019 V. Gyurjyan. CLAS12 software meeting