Download Documento ppt

Document related concepts
no text concepts found
Transcript
Sistema de análisis distribuido de
ATLAS (ADA)
Farida Fassi / Mª Dolores Jordán
IFIC
Contenido
 Introducción al sistema
 Modelo de ADA
 Componentes
 Dataset
 Transformación
 trabajo
 AJDL (Abstract Job Description Language)
 Arquitectura de ADA
 El entorno de usuario
 Servicio de catálogos
 Servicios de análisis
 DIAL, ATPROD y ARDA
 Componentes de DIAL
 Transformaciones
Farida Fassi/M.D. Jordán
2/20
Introducción (1)
 ADA es un sistema de análisis de datos que permite hacer uso
de las tecnologías GRID
 su ámbito de aplicación es la física de Altas Energías
 Toma de otros proyectos las herramientas necesarias para
identificar algunos de sus componentes
 Proporciona a los usuarios mecanismos para:
 acceder fácilmente a los datos
 seleccionar datos relevantes para un determinado análisis
 realizar el análisis y el procesamiento de dichos datos
 Permite el análisis en un entorno donde los usuarios, los datos
y el procesamiento están distribuidos geográficamente
Farida Fassi/M.D. Jordán
3/20
Introducción (2)
 ¿En qué se basa ADA?
Está basada en una colección de Servicios WEB (High level
services), donde el usuario interacciona con el sistema mediante
una interfaz (AJDL) bien integrada con el entorno de análisis, y
que permite:
 ocultar los detalles y la complejidad del middleware
del que hace uso ADA
 facilitar el uso del sistema permetiendo:
 el envío de los trabajos y su monitorización
 el acceso a los catálogos, a los ficheros y al
software necesario para las aplicaciones.
Farida Fassi/M.D. Jordán
4/20
Modelo de ADA (1)
 Componentes
 Dataset
 describe los datos
 proporciona al usuario información para:
 localizar datos
 conocer su tipo, y el número de sucesos que
contiene
 Transformación
 permite la manipulación y la explotación de los datasets
 describe una operación que actúa sobre un dataset
produciendo un nuevo dataset
Farida Fassi/M.D. Jordán
5/20
Modelo de ADA (2)
 Está dividida en:
 Aplicación  especifica los ejecutables
y las librerías compartidas
 Tarea  especifica la configuración del
usuario para una aplicación
 Trabajo:
 ejemplo particular de transformación que actúa
sobre un dataset.
Farida Fassi/M.D. Jordán
6/20
Modelo de ADA (3)
 AJDL (Abstract Job Definition Language)
 AJDL son clases de C++ con métodos para escribir y leer
desde ficheros XML
 Interfaz que define los componentes del modelo de ADA
 permite al usuario, desde su entorno, comunicarse con
el servicio de análisis y de catálogos.
 proporciona una implementación genérica de los servicios
de ADA de modo que éstos se pueden usar con:
 Datasets
 Transformación (aplicación + tarea)
 Trabajo
 JobConfiguration (la configuración de un trabajo)
 Scheduler (servidor que lleva a cabo el procesamiento
de los trabajos)
Farida Fassi/M.D. Jordán
7/20
Arquitectura de ADA (1)
 Se estructura en tres niveles:
 Entorno de usuario
 Servicios de análisis y de catálogos
 Sistema de procesamiento de los trabajos
 Permite realizar el análisis en un entorno donde los
usuarios, los datos y el procesamiento están distribuidos
geográficamente.
Farida Fassi/M.D. Jordán
8/20
Arquitectura de ADA (2)
GUI and
command line
clients
PYTHON
ROOT
AJDL
AMI ws
High level services
for cataloging and
job submission and
monitoring
AJDL
AMI DBS
DIAL AS
sh
ATPROD AS
SQL
ARDA AS
gLite
Workload
management
systems
LSF, CONDOR
ATPROD
gLite WMS
Farida Fassi/M.D. Jordán
9/20
Entorno de usuario (1)
 Proporciona al usuario los medios para comunicarse
con los servicios de ADA
 Permite al usuario:
 acceder fácilmente a los datos
 monitorizar el progreso de los trabajos
 obtener un resultado parcial o
completo de los trabajos
 Facilita al usuario los recursos
para examinar y crear los
componentes de AJDL, en
especial datasets,
transformaciones y trabajos
PYTHON
ROOT
AJDL
AMI ws
AJDL
AMI DBS
DIAL AS
sh
LSF, CONDOR
ATPROD AS
SQL
ATPROD
Farida Fassi/M.D. Jordán
ARDA AS
gLite
gLite WMS
10/20
Entorno de usuario (2)
 Está desarrollado por:
 GANGA implementado en Python
(http://ganga.web.cern.ch/ganga/)
 ROOT implementado en C++
PYTHON
ROOT
(http://root.cern.ch/root/)
AJDL
AMI ws
AJDL
AMI DBS
DIAL AS
sh
LSF, CONDOR
ATPROD AS
SQL
ATPROD
Farida Fassi/M.D. Jordán
ARDA AS
gLite
gLite WMS
11/20
Servicio de Catálogos (1)
 Proporciona un repositorio para los componentes
(objetos de C++) del AJDL
 Permite a los usuarios:
 asignar metadata (atributos de nombre) a dichos objetos
 Registrar la procedencia de los datasets
 monitorizar el progreso de los trabajos
 Tres tipos de catálogos:
PYTHON
ROOT
 Repositorio  para todo tipo
de AJDL
 Almacena descripciones
AMI DBS
ATPROD AS
ARDA AS
DIAL AS
de objetos XML
asociándoles un
identificador (ID)
ATPROD
gLite WMS
LSF, CONDOR
AJDL
AMI ws
AJDL
sh
SQL
Farida Fassi/M.D. Jordán
gLite
12/20
Servicio de Catálogos (2)
 Catálogo de selección  para datasets
 Asocia metadata con los ID’s de los objetos
 Catálogo de réplicas  para datasets
 Asocia un ID lógico con una
colección de ID’s de réplicas
PYTHON
ROOT
AJDL
AMI ws
 Actualmente se usa AMI
como servicio de catálogos
AJDL
AMI DBS
DIAL AS
sh
LSF, CONDOR
ATPROD AS
SQL
ATPROD
Farida Fassi/M.D. Jordán
ARDA AS
gLite
gLite WMS
13/20
Servicios de Análisis (1)
 Objetivo
 Proporcionar al usuario los mecanismos necesarios
para llevar a cabo el análisis de los datos
 métodos para la instalación de transformaciones,
el envío de los trabajos y su monitorización.
 Procedimiento
 Recibe una petición de trabajo
PYTHON
ROOT
desde AJDL
 Crea el correspondiente trabajo
asignándole un identificador
AMI DBS
ATPROD AS
DIAL AS
 Envía el trabajo para su
ejecución al sistema
de procesamiento
AMI ws
AJDL
AJDL
sh
LSF, CONDOR
SQL
ATPROD
Farida Fassi/M.D. Jordán
ARDA AS
gLite
gLite WMS
14/20
Servicios de Análisis (2)
 Actualmente ADA posee tres servicios de análisis:
 DIAL
 ATPROD
 ARDA
PYTHON
ROOT
AJDL
AMI ws
AJDL
AMI DBS
DIAL AS
sh
LSF, CONDOR
ATPROD AS
SQL
ATPROD
ARDA AS
gLite
gLite WMS
Farida Fassi/M.D. Jordán
15/20
DIAL (Distributed Interactive Analysis of Large datasets) (1)
 Demuestra la viabilidad del análisis distribuido e interactivo de
grandes cantidades de datos, y el no-interactivo de los mismos
 análisis interactivo  colas rápidas de LSF
 análisis no-interactivo  colas lentas de Condor
 Su componente principal es el Scheduler que:
 recibe una petición del usuario
(transformación + dataset)
 divide el dataset en sub-datasets
PYTHON
ROOT
 por cada sub-dataset crea un
sub-trabajo
 los envía al sistema de
ATPROD AS
ARDA AS
procesamiento para su ejecuciónAMI DBS DIAL AS
 concatena los diferentes
resultados dando el resultado final
AJDL
AMI ws
AJDL
SQL
sh
LSF, CONDOR
ATPROD
Farida Fassi/M.D. Jordán
gLite
gLite WMS
16/20
DIAL (2)
 Proporciona al usuario el análisis interactivo procesando los
trabajos de forma distribuida entre diferentes:
 sitios, granjas y nodos
Interactive analysis
e.g. ROOT, JAS, ...
DIAL
Dataset
Job
Scheduler
AAA
Distributed processing running data-specific application
Farida Fassi/M.D. Jordán
17/20
Componentes de DIAL
Transformación
Farida Fassi/M.D. Jordán
18/20
ATPROD y ARDA
ATPROD
 Sistema de producción de datos de ATLAS
 ADA permite a los usuarios producir, simular y reconstruir
muestras de datos utilizando ATPROD
 El uso de ATPROD en ADA aún está en fase de desarrollo
ARDA (gLite  ver presentación de Álvaro)
coordina las actividades de los proyectos
del LHC para tener un sistema
ROOT
de análisis común
 basado en el middleware de gLite
 permite el envío de trabajos al
AMI DBS
DIAL AS
sistema de gestión de los
trabajos (WMS/gLite)
PYTHON
AJDL
AMI ws
AJDL
ATPROD AS
SQL
sh
LSF, CONDOR
ATPROD
Farida Fassi/M.D. Jordán
ARDA AS
gLite
gLite WMS
19/20
Transformaciones
 ADA soporta un amplio rango de transformaciones, pero se
centra en aquellas que permiten el análisis, la generación,
la simulación, y la reconstrucción de datos
 Para satisfacer la estrategia de ADA, una transformación
se lleva a cabo en dos pasos:
1) toma los ficheros de la tarea y las librerías
y realiza la compilación
 Build_task
2) coge el dataset de entrada y el build_task para su
procesamiento, produciendo un nuevo dataset
 Run_task
 Build y Run son ficheros de bash
 Actualmente ADA posee los siguientes transformaciones:
 aodhisto, atlasdev, atlasopt y esd2aod
Farida Fassi/M.D. Jordán
20/20