SlideShare ist ein Scribd-Unternehmen logo
1 von 167
Downloaden Sie, um offline zu lesen
Sistemi Distribuiti
Corso di Laurea in Ingegneria
                   Prof. Paolo Nesi
  Parte 5: Architetture Parallele, Sistemi GRID x Big Data
            Department of Systems and Informatics
                     University of Florence
                Via S. Marta 3, 50139, Firenze, Italy
          tel: +39-055-4796523, fax: +39-055-4796363
Lab: DISIT, Sistemi Distribuiti e Tecnologie Internet
           nesi@dsi.unifi.it, paolo.nesi@unifi.it
                 http://www.disit.dsi.unifi.it


                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   1
Il Contesto Tecnologico
Crescita delle risorse
O Il numero di transistor raddoppia ogni 18 mesi
  (Legge di Moore)
O La velocità dei computer raddoppia ogni 18 mesi
O La densità di memoria raddoppia ogni 12 mesi
O La velocità della rete raddoppia ogni 9 mesi


Differenza = un ordine di grandezza ogni 5 anni




                   Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   2
Beyond Moore’s Law
                           Estimated CPU Capacity at CERN
                                      Intel CPU (2 GHz) = 0.1K SI95

         6,000                                                               CPU
         5,000                                                           Requirements
         4,000                        Moore’s Law
K SI95




         3,000                          (2000)
         2,000
         1,000
            0
                 1998

                        1999

                               2000

                                       2001

                                                2002

                                                           2003

                                                                       2004

                                                                                   2005

                                                                                              2006

                                                                                                         2007

                                                                                                                2008

                                                                                                                       2009

                                                                                                                              2010
                                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                          3
Network Exponentials
O  Network vs. computer performance
     Computer speed doubles every 18 months
     Network speed doubles every 9 months
     Difference = one order of magnitude every 5 years
O 1986 to 2000
     Computers: x 500
     Networks: x 340,000
O 2001 to 2010
     Computers: x 60
     Networks: x 4000
 Q Moore’s Law vs. storage improvements vs.
 optical improvements. Graph from Scientific
    American (Jan-2001) by Cleo Vilett, source
    Vined Khoslan, Kleiner, Caufield and Perkins.



                                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   4
Frieda’s Application …
Simulate the behavior of F(x,y,z) for 20 values of
x, 10 values of y and 3 values of z (20*10*3 =
600 combinations)
 F takes on the average 6 hours to compute on
   a “typical” workstation (total = 3600 hours)
 F requires a “moderate” (128MB) amount of
   memory
 F performs “moderate” I/O - (x,y,z) is 5 MB and
   F(x,y,z) is 50 MB

 Non posso aspettare 3600 ore
                   Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   5
Grid vs Distributed and Parallel


    Parallel                         Distributed
   Computing                         Computing




            GRID
          Computing
           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   6
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   7
Architetture Parallele
O   La definizione di un’architettura ottima in termini di
    processi paralleli per il calcolo scientifico dipende dal
    problema

O   Vi sono problemi
       intrinsecamente sequenziali
       Lineari vettoriali
       Multidimensionali vettoriali
       Paralleli nei dati di ingresso
       Paralleli nei dai di uscita
       Paralleli nei servizi
       Paralleli nella procedura
       Etc..


                           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   8
Esempio di caso Lineare
O   VettC = VettA + VettB
O   In modo sequenziale il Costo e’ o(N), in
    parallelo il costo e’ 1
O   Soluzione parallela:
        N nodi
        Un concentratore per raccolta dati
        Comunicazione fra nodi: assente
        Comunicazione con il nodo concentratore                                   1.    Passa A e B

                                  1                                                2.    Passa Ai, Bi
                      5
                                            6                                      3.    Calcola Ai+Bi
                                                                                   4.    Passa Ci
     2                                4
             4    4
         2                    4                                                    5.    Metti insieme C
                          2           2
                 …………….                                                            6.    Passa C
3    3                            3             3
                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                     9
Esempio di caso 2D, (..nD)
O   MatC = MatA + MatB
O   In modo sequenziale il Costo e’ o(NM), in
    parallelo il costo e’ 1
O   Soluzione parallela:
       N*M nodi
       Un concentratore per raccolta dati
       Comunicazione fra nodi: assente
       Comunicazione con il nodo concentratore                                         1.    Passa A e B

                                       1                                                2.    Passa Aij, Bij
                           5
                                                 6                                      3.    Calcola Aij+Bij
                                                                                        4.    Passa Cij
          2                                4
                  4    4
              2                    4                                                    5.    Metti insieme C
                               2           2
                      …………….                                                            6.    Passa C
    3     3                            3             3
                                   Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                     10
Comunicazione fra processi
O   In alcuni casi vi e’ la necessita’ di effettuare
    connessioni/comunicazioni dirette fra modi
    dell’architettura parallela
O   Se queste comunicazioni sono in parallelo si risparmia
    tempo rispetto a farle convergere e gestire tutte da un
    nodo centrale come in molti GRID

O   In un GRID
     Il GRID deve permettere di mappare in modo logico una
      architettura qualsiasi sul’architettura fisica del GRID
     I nodi devono comunicare chiamandosi in modo logico e
      non fisico
     Identificazione dei nodi.



                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   11
Soluzioni parallele diverse




        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   12
Soluzioni parallele diverse




        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   13
Piramide detta anche grid




       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   14
3 P in forma ciclica o consecutiva




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   15
8 P in forma ciclica o consecutiva




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   16
Comunicazioni fra processi
O   Comunicazione fra processi per congiungere dati parziali
       Spesso necessarie per processi iterativi
       Soluzioni di equazioni alle derivate parziali
       Soluzioni agli elementi finiti
       Inversioni di matrici a blocchi

O   Condizioni al contorno
     Soluzioni di equazioni alle derivate parziali
     Soluzioni agli elementi finiti

O   Integrazione del calcolo
     Equazioni differenziali alle derivate parziali
     Calcolo di Flussi
     Calcolo per antenne


                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   17
Speed Up




Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   18
Speed Up




Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   19
An example
quicksort
                      merge
quicksort
                                              merge
quicksort
                      merge
quicksort
                                                                          File
                                                                merge
                                                                        ordinato
quicksort
                      merge
quicksort
                                              merge
quicksort
                      merge
quicksort


             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012              20
Un Esperimento CONDOR at DISIT

                                                  Risultati finali

                                                                         2680
                             2800
Tempo esecuzione (secondi)




                             2400
                                                                                   1800
                             2000

                             1600

                             1200                                                                            Esecuzione Locale
                                                                                                             Condor
                                                  667
                             800                          535

                             400           140
                                    15
                               0
                                    4000         32000                   64000
                                         N° stringhe input file

                                                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                       21
Scelte che hanno condizionato il risultato
O   Non si e’ utilizzato un merge sort dall’inizio perche’ non
    e’ efficiente visto che inviare due valori ad un nodo per
    sapere quale dei due e’ maggiore costa di piu’ che farlo
    in locale
     Andamento del costo locale e distribuito del merge, per
      decidere
O   Si poteva utilizzare:
     Algoritmi di ordinamento diversi
     Una partizione diversa dei dati, non 8 processi ma per
      esempio 4, con due livelli e non 3
     Questo poteva permettere di avere maggiori vantaggi in
      certe condizioni




                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   22
Allocazione dei processi
O   Caso 1:
     Ho 8+4+2+1 processori e un processo per processore.
     Ogni processo sa da dove prendere I dati e dove mandare I
      risultati
O   Caso 2:
     Ho 8 processore, questi computano la prima fase, poi quelli
      pari comunicano il risultato ai dispari, che
     divengono pertanto I 4 processore fase 2
     Quelli che hanno id divisibile per 4 passano I risultati a
      quelli modulo 4 + 1, questi divengono quelli della fase 3
     Etc. etc.




                         Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   23
Problemi
O   Parallelizzazione degli algoritmi
      Progettazione parallela
      Non tutti gli algoritmi si possono parallelizzare in modo facile e poco
       costoso..
      Bilanciamento fra vantaggi e costi di comunicazione
      Massimizzazione dello Speed Up:
        Efficienza della soluzione parallela
O   Allocazione ottima dei processi sui peer:
      Capacità dei peer, che cambiano nel tempo
      Costi di comunicazione che cambiano nel tempo
      Problema di allocazione:
        Genetic Algorithms, Taboo Search, etc.
O   Tolleranza ai fallimenti
      Ridondanza dei processi
      Migrazione dei processi, salvataggio del contesto
O   Limitato controllo delle capacità dei peer
O   Limitato controllo delle prestazioni rete… QoS….

                                Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   24
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   25
The GRID
O   “the Grid” term coined in the mid 1990s to denote a distributed
    computing infrastructure for advanced science and engineering
O   “Resource sharing & coordinated problem solving in dynamic, multi-
    institutional virtual organizations” (Ian Foster, Karl Kesselman)

O   Un insieme di risorse computazionali, di dati e reti appartenenti a
    diversi domini amministrativi
O   Fornisce informazioni circa lo stato delle sue componenti tramite
    Information Services attivi e distribuiti.
O   Permette agli utenti certificati di accedere alle risorse tramite un’unica
    procedura di autenticazione
O   Gestisce gli accessi concorrenti alle risorse (compresi i fault)
      No single point of failure




                                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   26
Per essere un GRID
•   coordina risorse e fornisce meccanismi di sicurezza,
    policy, membership…

•   Usa protocolli ed interfacce standard, open e general-
    purpose.

•   permette l’utilizzo delle sue risorse con diversi livelli di
    Qualities of Service ( tempo di risposta, throughput,
    availability, sicurezza…).

•   L’utilità del sistema (middle tier) e molto maggiore a
    quella della somma delle sue parti nel supporto alle
    necessità dell’utente.



                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   27
Scienze Data Intensive
O   Fisica nucleare e delle alte energie
     Nuovi esperimenti del CERN
O   Ricerca onde gravitazionali
     LIGO, GEO, VIRGO
O   Analisi di serie temporali di dati 3D
    (simulazione, osservazione)
     Earth Observation, Studio del clima
     Geofisica, Previsione dei terremoti
     Fluido, Aerodinamica
     Diffusione inquinanti
O   Astronomia: Digital sky surveys

                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   28
BigData Science
O   How to: compute, process, simulate, extract meaning, of
    vaste/huge amount of data to create knowledge
O   Exploit efficiently the hugh amount of data/knowledge
O   Issues:
       Data representation: indexing, search, execute, etc..
       Data computing: sparse, uncertain, fast, etc.
       Data understanding: mining, analize, etc.
       Data view: fast, navigate,
O   Applications:
       Recommendations, suggestions, semantic computing
       Business intelligence: health, trends, genomic, HBP,
       Distributed database
       Social networking
       Event detection,

                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   29
Supercomputer-Enhanced Instrumentation
                  Source: Globus 2002 Tutorial
                                             Virtual Reality
                                             Cave




Advanced Photon
    Source

                  Avatar                        Scientis
                                                t
                                                                                       Supercomput
                                                                                            er




                        Electronic                                     Computing
                         Library                                      Portal Clients
                           and
                        Databases
                   Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                    30
Distribution of Servers in Enterprise Computing
            Source: IBM, Global Grid Forum 4, 2002




                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   31
Home Computers
                   Evaluate AIDS Drugs
O   Community =
     1000s of home
      computer users
     Philanthropic
      computing vendor
      (Entropia)
     Research group
      (Scripps)
O   Common goal=
    advance AIDS
    research




                         Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   32
Mathematicians Solve NUG30
O   Looking for the solution to the
    NUG30 quadratic assignment
    problem
O   An informal collaboration of
    mathematicians and computer
    scientists
O   Condor-G delivered 3.46E8 CPU
    seconds in 7 days (peak 1009
    processors) in U.S. and Italy (8
    sites)                                                Q 14,5,28,24,1,3,16,15,
                                                          Q 10,9,21,2,4,29,25,22,
Q MetaNEOS: Argonne, Iowa,                                Q 13,26,17,30,6,20,19,
Northwestern, Wisconsin
                                                          Q 8,18,7,27,12,11,23



                           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   33
Earth Observation
        ESA missions:

           • about 100 Gbytes of data per day
             (ERS 1/2)
           • 500 Gbytes, for the next
             ENVISAT mission (2002).




                                                            DataGrid contribute to EO:

                                                              • enhance the ability to access high level
                                                                products
                                                              • allow reprocessing of large historical
                                                                archives
                                                              • improve Earth science complex
                                                                applications (data fusion, data mining,
                                                                modelling …) Source: L. Fusco, June 2001
Federico.Carminati , EU review presentation, 1 March 2002

                                                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   34
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   35
Concetti Estesi del GRID
O    Virtual Organization (VO) è costituita da:
     un insieme di individui o istituzioni
     un insieme di risorse da condividere
     un insieme di regole per la condivisione
O   VO: utenti che condividono necessità e requisiti
    simili per l’accesso a risorse di calcolo e a dati
    distribuiti e perseguono obiettivi comuni.
O   abilità di negoziare le modalità di condivisione
    delle risorse tra i componenti una VO (providers
    and consumers) ed il successivo utilizzo per i propri
    scopi. [I.Foster]



                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   36
iVDGL:
                     International Virtual Data Grid Laboratory




                                                                                       Tier0/1 facility
                                                                                       Tier2 facility
                                                                                       Tier3 facility
                                                                                       10 Gbps link
                                                                                       2.5 Gbps link
                                                                                       622 Mbps link

U.S. PIs: Avery, Foster, Gardner, Newman, Szalay                                       Other link


www.ivdgl.org               Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                    37
To Russia/Japan

To USA
                                       Cern
                                                           Milano Padova/LNL



                                                Torino                       Bologna


                                                                              Pisa



                                                             Cagliari


                                                                                     Catania

  Prototipo di interconnessione tra INFN DataGrid,
  l’EDG e progetti in US ed ASIA
                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                     38
Coordinamento Programma Nazionale FIRB

   TORINO
            MILANO                        CNR e Università
                   PADOVA
         PAVIA                                                  HPC, Programmazione parallela, Grid computing,
                        BOLOGNA                                 Librerie scientifiche, Data base e knowledge discovery,
GENOVA
                                                                Osservazione della terra, Chimica computazionale,
                                                                Elaborazione di immagini, …
          PISA
                                             INFN e Università
                           PERUGIA
                                                                   Grid (INFN-Grid, DataGrid, DataTag) ,
                                                                   Applicazioni di e-science: Astrofisica,
                 ROMA                                              Biomedicina, Geofisica, …

                                                          BARI
                         NAPOLI
                                                       MATERA
                                                                                        ASI
                                                                      LECCE
                                                                                                Applicazioni di
         CAGLIARI                                                                               osservazione della Terra
                                                   COSENZA
                                                                             CNIT
                           PALERMO                                                       Tecnologie e infrastrutture
                                                                                         hardware-software
                                                                                         di comunicazione
                                                                                         ad alte prestazioni,
                                                                                         Tecnologia ottica, …



                                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                              39
Grid of Cluster computing
O   GRID
     collezione di risorse distribuite, possibilmente
      eterogenee, ed una infrastruttura hardware e software
      per calcolo distribuito su scala geografica.
     mette assieme un insieme distribuito ed eterogeneo di
      risorse da utilizzare come piattaforma per High
      Performance Computing.
O   Cluster, a micro-grid
     Usualmente utilizza piattaforme composte da nodi
      omogenei sotto uno stesso dominio amministrativo
     spesso utilizzano interconnessioni veloci (Gigabit,
      Myrinet).
     Le componenti possono essere condivise o dedicate.



                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   40
Applicazioni dei GRID
O   Calcolo parallelo: sfruttamento di risorse distribuite a basso
    costo al posto di supercalcolatori
O   Applicazioni di calcolo massivo:
      Medicali
        E.g.: From TAC to 3D real models
      Profiling and personalization
      Visione artificiale
        E.g.: Composition/mosaicing of GIS images
      Risoluzione delle license per DRM
      Adattamento di risorse digitali, coversione di formato
      Stima di fingerprint di risorse digitali
      Generazione di descrittori di risorse digitali
      Simulazione strutturali, fluidodinamica, deformazioni, finanziarie,
       servizi, etc.
      Predizioni del tempo
      Predizioni finaziarie



                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   41
Alcuni dettagli
 Profiling and personalization
   Profilo del cellulare, capabilities, preferenze utenti
   Richiesta di contenuti, formati, img, doc, etc.
   Milioni di utenti al secondo
 Visione artificiale
   E.g.: Composition/mosaicing of GIS images
 Risoluzione delle license per DRM
   Richieste di risoluzione delle license
 Adattamento di risorse digitali, coversione di formato
 Stima di fingerprint di risorse digitali
   Riconoscimento delle tracce audio
 Generazione di descrittori di risorse digitali
   Produzione di descrittori per inserirle in metadata, quando
      viene riprodotto un catalogo

                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   42
Types of Grid Computing

Compute     share access
            to computing                                       Utility grids
 grids        resources


           share                      share access to
          access                    application software
Data         to                        and services
grids   databases
         and files
         systems


            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012           43
Types of Grid Computing
O   GRID Compute
     Per esempio ricerca dello spazio delle soluzioni
       Predizione finanziaria, del tempo
       Problema del Commesso viaggiatore
       Analisi del genoma
       Produzione delle possibili tracce, evoluzioni dello stato in
         una macchina a stati
       Model checking, history checking


O   GRID Data
     Database frazionato: da1M record in 10 da 100000 che in
      parallelo danno un risposta alla query
     Query replicate


                           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   44
Types of Grid Computing

O   GRID Service
     Database replicato per dare un servizio a molte persone, il
      parallelismo e’ sulle persone, sugli accessi al servizio.
       Query diverse sullo stesso database



O   I probemi reali in effetti integrano I vari aspetti
    producendo la necessita’ di gestire GRID che hanno vari
    aspetti




                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   45
One View of Requirements
O   Identity & authentication                          O     Security: intrusion detection
O   Authorization & policy                             O     Accounting: Grid cost
O   Resource discovery
                                                       O     Fault management
O   Resource characterization
                                                       O     Fault tolerance
O   Resource allocation, management
O   (Co-)reservation, workflow                                 O     Recovery from failure
O   Distributed algorithms                             O     Grid System evolution
O   Remote data access                                 O     Etc.
O   High-speed data transfer                           O     …
O   Performance guarantees

O   Monitoring, se non misuri non
    controlli



                             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012        46
The Systems Problem:
     Resource Sharing Mechanisms That …
O   Address security and policy concerns of resource
    owners and users
O   Are flexible enough to deal with many resource
    types and sharing modalities
O   Scale to
     large number of resources,
     many participant/users
     many program components/process
     On different nodes and configurations
O   Operate efficiently when dealing with large
    amounts of data & computation

                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   47
Aspects of the Systems Problem
1) interoperability when different groups want to share
    resources
     Diverse components, policies, mechanisms
     E.g., standard notions of identity, means of
      communication, resource descriptions
2) shared infrastructure services to avoid repeated
    development, installation
     E.g., one port/service/protocol for remote access to
      computing, not one per tool/application
     E.g., Certificate Authorities: expensive to run
O   A common need for protocols & services

                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   48
Programming & Systems Problems
O   The programming problem
      Facilitate development of sophisticated applications
      Facilitate code sharing among nodes
      Requires programming environments
        APIs, SDKs, tools, distributed debug
O   The systems problem
      Facilitate coordinated use of diverse resources
        Smart allocation, profiling, capabilities
      Facilitate infrastructure sharing
        e.g., certificate authorities, information services
      Requires systems
        protocols, services

                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   49
Problemi dei GRID
O   condivisione delle risorse flessibile e sicura su scala
    geografica
O   L’ottimizzazione dello sfruttamento delle risorse, il cui
    stato non è direttamente sotto controllo e le
    informazioni relative sottostanno ad un certo grado di
    incertezza
O   Formazione dinamica di organizzazioni virtuali, VO
O   Negoziazione online per l’accesso ai servizi: chi, cosa,
    perché, quando, come, QOS
     sistemi in grado di fornire diversi livelli di “Quality of Service”
O   Gestione automatica della infrastruttura
O   Problemi a licello di risorse e connettivita’ che sono il
    collo di bottiglia di molte applicazioni GRID

                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   50
Layered Grid Architecture
       (By Analogy to Internet Architecture)
                                                         Application




                                                                                                         Internet Protocol Architecture
“Coordinating multiple resources”:
ubiquitous infrastructure services,                                  Collective
app-specific distributed services                                                         Application

“Sharing single resources”:
negotiating access, controlling use                              Resource

“Talking to things”: communication
(Internet protocols) & security                        Connectivity                       Transport
                                                                                           Internet
“Controlling things locally”: Access
to, & control of, resources                               Fabric, OS                         Link




                               Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012             51
Layers del GRID
O   1) Livello applicativo: e’ l'interfaccia con la quale l'utente
    può interagire con il sistema e contiene le applicazioni
    rivolte all'utente ed il meccanismo della gestione delle
    organizzazioni virtuali.
O   2) Livello servizi collettivi: contiene i servizi API utilizzati
    per la gestione e la condivisione delle risorse che rendono
    nota all'utente l'allocazione delle risorse di cui ha bisogno.
O   3) Livello protocolli (resource and connectivity):
O   4) Livello fabric: e composto dalle risorse distribuite
    tramite la rete, che possono essere entità logiche o siche.




                           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   52
2) Livello servizi collettivi:
Definisce protocolli, SDK ed API per l’interazione con le risorse.
Fornisce ai membri di una VO meccanismi per:
O   Directory services: scoprire l’esistenza di risorse.
O   Co-allocation, scheduling, brokering services:allocare una o più
    risorse e schedulare task
O   Monitoring services: scoprire e gestire failure, intrusioni,
    overload…
O   Data Replication services: scoprire la copia dei dati che permette
    di massimizzare le performance, in termini di tempi di accesso,
    reliability, costo…
O   Software Discovery services: scoprire la miglior piattaforma di
    esecuzione (anche per il SW) in base ai parametri del problema
    (NetSolve)


                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   53
3) Resource and Connectivity
O Resource:

    Definisce, sulla base dei protocolli sottostanti, protocolli, SDK ed
    API per l’inizializzazione, il monitoraggio ed il controllo di operazioni
    su di una risorsa.
       Information Protocol: informazioni sullo stato della struttura
        (configurazione, carico…)
       Management Protocol: negoziazione per l’accesso alla risorsa,
        tramite la specifica di requirement e operazioni da effettuare
O   Connectivity:
     Definisce i protocolli base per la comunicazione e l’autenticazione.
     I protocolli di Comunicazione permettono lo scambio di dati tra le
      risorse del livello inferiore.
     I protocolli di Autenticazione forniscono meccanismi sicuri
      (crittografia) per verificare l’identità di utenti e risorse.



                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   54
GRID Standards
O   Non esiste uno standard per GRID completo



O   Vi sono degli standard per le comunicazioni, per la
    negoziazione dei servizi, e altre cose di questo genere.



O   GLOBUS puo’ essere considerato una sorta di standard




                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   55
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   56
GRID projects
O   LEGION
     Middleware per la connessione di reti
     Distribuzione di processi ed allocation
     Trasparente per l’utente che chiede il servizio
O   UNICORE-UNiform Interface to COmputing REsources
     Ministero tedesco
     Combina le risorse di centri di computer e le rende
      disponibili in modo sicuro e senza cuciture attraverso
      intranet o internet.
     Peer certificati per garantire l’uso e la sicurezza dei dati
O   GLOBUS
     Open source (era)
     Ora sta diventando commerciale



                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   57
Some GRID Solutions !!
O   Condor
      Unix and windows
      Small scale GRID, non parallelism
O   Globus
      Parallel
      Unix like
      C and java
O   Legion
      Parallel, C++
      Unix like
      Too much space needed, 300Mbyte
O   Unicore
      Java
      Unix like
      Open source
O   AXMEDIS, AXCP
      C++ and JavaScript
      Windows
      Accessible Code, Free Software


                               Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   58
GLOBUS and its toolkit
O   Open Source, Middleware
O   http://www-unix.globus.org/toolkit/license.html
O   Library for:
     monitoraggio, scoperta e gestione delle risorse e delle
      informazioni
     sicurezza dei nodi (certificati, autenticazione)
     sicurezza delle comunicazioni
     tolleranza dei guasti
     portabilità
O   Globus Toolkit è cresciuto attraverso una strategia open-
    source simile a quella di Linux: questo ha incoraggiato una
    vasta comunità di programmatori e sviluppatori a introdurre
    continue migliorie al prodotto


                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   59
Open Grid Services Architecture
O   Al Global Grid Forum (GGF4),
     Globus Project e IBM hanno definito le linee dell’Open Grid
      Services Architecture (OGSA),
     matrimonio e l’evoluzione di due tecnologie: Grid Computing e
      Web Services.


O   OGSA introduce il concetto fondamentale di Grid Service,
    ovvero un GRID che dispone di interfacce che lo rendono
    manipolabile per mezzo di protocolli web service.


O   Open Grid Services Infrastructure (OGSI) definisce
    le interfacce di base/standard e i comportamenti per servizi
    gestibili dal sistema.


                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   60
Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   61
Globus GRID Tool Kit
O   Sicurezza (GSI)
O   Gestione delle risorse (GRAM,
    Access and Management)
O   Gestione dei dati (GASS,
    GridFTP, GRM)
O   Servizi di informazione (GIS,
    security)
O   Comunicazione (I/O, Nexus,
    MPICH)
O   Supervisione dei processi e
    gestione guasti (MDS, HBM)


                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   62
Componenti di GLOBUS toolkit 1/2
O   Grid Security Infrastructure, GSI
     meccanismo di autenticazione che si occupa della sicurezza
      nell'ambiente Grid, garantendo l'accesso solamente agli utenti
      autorizzati. Si basa sullo standard di certificati
     GSI delega, ossia effettua una creazione remota di un proxy delle
      credenziali e permette a un processo remoto di autenticarsi per
      conto dell'utente.
O   Globus Resource Allocation Manager, GRAM
     abilitare un accesso sicuro e controllato alle risorse computazionali
      gestendo l'esecuzione remota di operazioni sulle risorse stesse.
     Il gatekeeper e un processo del GRAM che gestisce la richiesta di
      un nodo cliente inviandola al job manager, il quale dopo aver creato
      un processo per la richiesta ne controlla l'esecuzione
      comunicandone lo stato all'utente remoto.


                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   63
Componenti di GLOBUS toolkit 2/2
O   Data Management
     GRIDFTP e’ un protocollo utilizzato per realizzare lo scambio di
      file tra le varie risorse all'interno della griglia. Estende il
      protocollo FTP, aumentando la capacita e la sicurezza del
      trasferimento dati


O   GRID Information Services, GIS
     raggruppa le informazioni di stato delle varie risorse e viene
      suddiviso in tre principali servizi:
        MDS, Monitoring and Discovering Service.
        GIIS, Grid Index Information Service, organizzato in processi
         in relazione gerarchica, la root e’ TOP MDS
        GRIS, Grid Resource Information Service, che colleziona
         info e le invia al GIIS. Il GRIS e’ installato su ogni risorsa.


                             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   64
Resource Management Services
Tre componenti principali
 1. RSL (Resource Specification Language) per
    comunicare i requisiti delle risorse
 2. Resource Broker: gestisce il mapping tra le
    richieste ad alto livello delle applicazioni e le
    risorse disponibili.
 3. GRAM (Grid Resource Allocation Management) è
    responsabile di un set di risorse ed agisce da
    interfaccia verso vari Resource Management Tools
    (Condor,LSF,PBS, NQE, EASY-LL ma anche,
    semplicemente, un demone per la fork)
                                                                                  Q 65
                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012          65
Resource Management
                Architecture
                                                       planner
      negotiation
                                            Broker
Resource Specification Language                                               Queries
                                                                               & Info
                       Monitor and discover                                             Information
   Application
                                                                                          Service


                                       Co-allocator



Local           GRAM                         GRAM                                            GRAM
resource
managers         LSF                        Condor                                           PBS

  Q Load   Sharing Facility                                                  Q Portable       Batch System”


                                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                66
How to deploy a
Grid, hierarchy of
  components

http://www.dartmo
uth.edu/~rc/classes/i
ntro_grid/Grid_Sof
tware_View.html#t
        op



                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   67
Combinazione Globus e Condor
Q
Q   Globus
     Q Protocolli per comunicazioni sicure tra domini
     Q Accesso standard a sistemi batch remoti
Q   Condor
     Q Job submission e allocation
     Q Error recovery
     Q Creazione di un ambiente di esecuzione




                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   68
Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   69
CONDOR

O   Nasce nel 1988, University of Madison
O   Creazione di cluster di workstation PC

O   Sfruttamento di momenti di scarsa attivita’ della CPU;
     Condor lascia la CPU se l’utente lavora sul PC
     Salva il punto e poi riparte
     Sposta/migra se necessario l’esecuzione del processo
      su un’altra CPU


O   Il codice non viene cambiato ma viene semplicemente
    linkato con lib speciali



                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   70
Salvataggio del contesto




O   Per poter migrare il processo devo salvare il contesto.
O   Il contesto lo salvo ad intervali regolari, per esempio ogni
    decimo del tempo di esecuzione.
O   in questo caso ho uno spreco massimo di 1/10 del tempo di
    esecuzione, che deve essere vantaggioso rispetto al costo di
    spostamento del processo sull’altro nodo

                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   71
CONDOR
O   A basso livello si basa su procolli di comunicazione
    diversi per gestire i processi (interoperabilita’):
     Vanilla: permette di eseguire tutti i programmi che non
      possono essere re-linkati ed è utilizzato per shell scripts.
      Non sono implementate migrazione e chiamate di sistema.
     PVM: per far girare sopra Condor programmi scritti per
      l’interfaccia PVM (Parallel Virtual Machine).
     MPI: Questo ambiente risulta utile per eseguire i programmi
      scritti secondo il paradigma di Message Passing Interface
      (MPICH).
     Globus Permette di eseguire i processi scritti …..
     Java: Permette di eseguire i processi scritti per la Java
      Virtual Machine
     ….


                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   72
Sicurezza in CONDOR


O   L’autenticazione di una comunicazione sotto Condor è
    realizzata grazie all’implementazione di alcuni protocolli:
    tra questi citiamo
     GSI (basato su certificati X.509),
     Kerberos,
     e un meccanismo basato su file-system (Windows prevede
      un meccanismo di autenticazione proprietario).




                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   73
CONDOR architecture
                                             Central Manager

                                         Condor_Collector

                                         Condor_Negotiator




                                                                          Execution Machine
                     Submit Machine
                                                                                          Controlling Daemons
                 Controlling Daemons
                                                                          Control via Unix signals to alert job when
                                                                          to checkpoint
               Condor_Shadow Process
                                                                                                  User’s job


                                                                                                  User’s code

                         All System Calls
                         Performed As Remote                                             Condor_Syscall_Library
                         Procedure Calls back to
Checkpoint File is       the Submit Machine
Saved to Disk




                                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                        74
CONDOR ruoli e servizi
O   Central Manager, solo un Central Manager.
     Raccoglie tutte le informazioni e negoziare tra le richieste e le
      offerte di risorse.
     Affidabile e potente
O   Submit
     Altre macchine del pool (incluso il Central Manager) possono
      invece essere configurate per sottomettere jobs a Condor.
     queste macchine necessitano di molto spazio libero su disco
      per salvare tutti i punti di checkpoint dei vari job sottomessi.
O   Execute (i nodi del GRID)
     Alcune macchine nel pool (incluso il Central Manager)
      possono essere configurate per eseguire processi Condor.
     Essere una macchina di esecuzione non implica la richiesta di
      molte risorse.



                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   75
CONDOR: Pregi e difetti
O   Pregi:
     non necessita di modificare i vostri programmi
        Differentemente da seti@home
     set-up semplice
     facilità di gestione della coda dei job
     breve tempo necessario ad implementare una “griglia” funzionante.
     estrema versatilità nel gestire svariati tipi di applicazioni (.exe).
     trasparenza agli occhi degli utenti durante l’esecuzione.
O   Difetti:
     I meccanismi di sicurezza implementati non garantiscono ancora il
      medesimo livello di protezione offerto da una vera soluzione middleware.
     Limitato controllo sull’intera grid.
     Bassa “tolleranza” ai guasti: se nessuna macchina del pool soddisfa i
      requisiti di un job, questo rimane in attesa senza andar mai in esecuzione
      e l’utente è costretto a rimuoverlo manualmente.


                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   76
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   77
AXMEDIS Content Processing GRID

O   accesso dai dati
O   trasformazione contenuti
     produzione di contenuti on deman
     Adattamento in tempo reale, riduzione costi, etc
O   manipolazione di license in tempo reale
O   protezione dei cotenuti digitali
O   Comunicazione con altri processi
O   Monitoraggio
O   Controllo reti P2P




                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   78
AXMEDIS Content Processing, GRID
        AXMEDIS Factory                           AXMEDIS Workflow
                                                  Management tools
                                                                                         AXEPTool Area
  AXMEDIS Editors
                                                                                              AXEPTools


                         AXMEDIS Content
                      Processing Engines and                                 AXEPTools
                         Scheduler GRIDs




                     AXMEDIS        AXMEDIS
                                    databases
          Crawlers   database
                     Area

CMSs
                                        Programme and
                                          Publication




                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                      79
AXMEDIS Content Processing GRID
                                            Workflow                                AXCP
 Front end
  Front end                                 manager                                 Visual Designer
 servers,
  servers,
 VOD, prod
  VOD, prod
 on demand
  on demand                                          AXMEDIS
                                                                                     Visual Elements
                                                     Rule Editor
                                                                                     and Rules
                       AXCP
  Quick                Scheduler
  Starter
                                                                                                 AXCP GRID
                                                                                                 Rules
                                      AXCP nodes

                                                                                             Plug-in for content
                                                                                             processing




WS, FTP,                                           DistributionC
                        Q AXMEDIS                  hannels and
etc.          Your CMSs Database                   servers



                         Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                             80
AXMEDIS Content Processing Area
O   GRID infrastructure for

     automatic production and processing content on the basis of rules
     AXCP Rules which are
        written as scripts by the AXCP Rule Editor
        executed in parallel and rationally using the computational
          resources accessible in the content factory
        AXCP Rule Engine.


O   AXCP area receives commands coming from the Workflow of the
    factory.




                              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   81
Factory and integration
AXCP Quick Start,                                        Monitoring &
Your tools commands,                                      Reporting                        AXMEDIS
Workflow systems,…
                                                                                             DRM

  DB
CMS
                         AXMEDIS                                                 WEB Server
                                                                                                        Internet, WEB,
                                                                                                        VOD, POD..
                         Automated
                         and Manual                                            Playout Server
                        Factory Tools
                                                                            Web+Strm Server
                                                                                                        Broadcast, IPTV,
                                                                                                        i-TV, VOD, POD,…
                                                                       P2P distrib & monitor
                                       AXMEDIS
                                        Automated
                                        and Manual                            Social Networks           Mobiles, PDA, etc.
                                       Factory Tools



                       AXMEDIS
                        Automated
   AXMEDIS              and Manual
    Automated          Factory Tools
    and Manual
   Factory Tools


                                             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                 82
AXMEDIS Content Processing GRID
O   GRID per il Content Processing
     Discovery di risorse, nodi
       Valutazione dello stato e delle pontenzialita dei nodi
     Creazione di regole, processi
       Un solo processo per nodo
     Esecuzione di regole/processi, attivano anche processi locali
      scritti non in forma di regole
       On demand, periodiche, collegate, asincrone
     Allocazione ed ottimizzazione dei processi
     Comunicazione con il gestore ma anche fra nodi
       N to N
       N to S, per monitor e/o invocazione di regole/processi
     Tracciamento e controllo dei processi
     Workflow, gestione di alto livello, integratione macchina Users

                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   83
Snapshots of the GRID at work




         Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   84
AXCP processing capabilities
O   Automating access to databases and comm. channels
O   Automating Content Profiling:
     device and user profile processing
O   Automating Content Protection:
     MPEG-21 IPMP, OMA, etc.
O   Automating Content license production and processing:
     MPEG-21 REL, OMA ODRL, etc.
O   Automating Content Production/Processing
     Metadata, integration and extraction
     Content Processing: adaptation, transcoding, filtering, analysis,
      recognition, etc..
     Content Composition and Formatting (SMIL, XSLT)
     Packaging: MPEG-21, OMA, ZIP, MXF
     Using protected content and DRM support, content processing is
      performed in secure manner even on the GRID nodes according
      to the DRM rules/licenses
                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   85
AXCP processing capabilities
O   Processing functionalities:
        Gathering content
        Production of new objects: composition, etc.
        Formatting: SMIL, XSLT, etc.
        Synchronization of media, etc.
        Content adaptation, transcoding, …..….
        Reasoning on device capabilities and user preferences, (user, device, network, context)
        Production of licenses, MPEG-21 REL, OMA
        Verification of Licenses against them and PAR
        Metadata and metadata mapping: Dublin Core, XML
        Extraction of descriptors and fingerprints …MPEG-7
        Protocols: IMAP, POP, Z39.50, WebDav, HTTP, FTP, WS, etc.
        Controlling P2P networks
        ....


O   Any type of resource in any format
        Multimedia: MPEG21, IMS, SCORM, etc.
        DB: ODBC, JDBC, DB2, Oracle, MS-SQL, MySQL, XML databases, etc.
        Licensing systems: MPEG-21, OMA
        File Formats: any video, audio, image, xml, smil, html, ccs, xslt, etc.

                                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012    86
AXMEDIS Content Processing GRID

              AXMEDIS
             Rule Editor




            AXMEDIS
            Scheduler
Workflow
manager




                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   87
AXMEDIS Content Processing Area:
            AXCP Rule Editor
O   It is an IDE tool for:
O   Creating and editing AXCP Rules
O   Defining parameters and required
    AXMEDIS Plugins
O   Editing, checking and debugging
    JS code
O   Activating AXCP Rules into the
    AXCP Rule Engine




                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   88
Rule Editor




              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   89
Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   90
Rule Editor
O   The Rule Editor allows
     Writing AXCP Scripts in Java Script with the above
      capabilities
       Calling libraries in javascripts
       Calling plug in functions in C++, and other languages
     Defining AXCP scripts metadata:
       Manifesto components
       Scheduling details
       Capabilites
       Information, etc.
     Debug scripts:
       defining break points,
       run/stop/execute step by step,
       Monitoring variables, etc.
     Putting in execution java scripts

                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   91
AXMEDIS Content Processing Area: AXCP Rule
O   AXCP Rules include metadata for heading information (Header)
    and firing (Schedule)
O   AXCP Rules contain algorithms for composition, formatting,
    adaptation, transcoding, extraction of fingerprint and descriptors,
    protection, license manipulation, potential available rights
    manipulation, resource manipulation, load and save from
    databases and file system, content migration etc. (Definition)




O   Algorithms are written by using JavaScript programming
    language
O   JS was extended
     with data types derived from AXMEDIS Framework, MPEG21, and general
      resource definition such as: images, documents, video, licenses, etc.
     to use different functionalities for content processing by means the
      AXMEDIS Plugin technology (adaptation, fingerprint, etc…)
                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   92
Regole AXCP, formalizzazione XML




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   93
AXCP visual designer
O   Fast and simple Visual
    Programming of AXCP
    GRID processes



O   Composing Blocks as JS
    modules to create AXCP
    rules
O   Composing AXCP Rules
    to create sequences of
    actions to be scheduled
    according to their
    dependencies


                         Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   94
Visual Designer
O   Visual language for GRID
    programming
     RuleBlock::= {JSBlock} |
           <defined in JS as JS rule>
     JSBlock::=
           <defined in JS as JSBlock>
O   ManRuleBlock as specific
    manager for its child processing
    rules.




                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   95
Rule Scheduler




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   96
Rule Scheduler
O   AXCP Rule Scheduler performs:
     executors discovering, monitoring (rule analysis)
     Rules transfering and installation, allocation of Scripts on
      Nodes on the basis of capabilties and rule needs
     Recover from the nodes the node information about their
      capabilities:
       CPU clock, cpu exploitation profile
       Space on the disk
       Communication throughput with databases
       Libraries accessible with their version
     Monitoring GRID nodes, via messages of errors
     Controlling (stop, pause, kill, etc.) GRID nodes
     Logs generation and collecting data



                             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   97
GRID Node
 Profile




       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   98
Log Properties




   Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   99
Esempio di esecuzione
                                        var sb = new AXSearchbox();
                                        sb.Host = "liuto.dsi.unifi.it";
                                        sb.Port = "2200";
                                        sb.Username = "admin";
                                        sb.Password = "password";
                                        var qs = new QuerySpec();
                                        var a = new Array(1);
                                        a[0] = 1;
                                        qs.Archives = a;
                                        qs.Parser = QueryParser.ALGPARSER;
                                        qs.Info = QueryInfo.INFO_CONTEXT;
                                        qs.View = QueryView.VIEW_PUBLISHED;
                                        qs.Sort = QuerySort.SORT_STANDARD;
                                        qs.QueryString = key;
                                        qs.FirstDoc = 0;
                                        qs.LastDoc = 10;
                                        var qr = new Array();
                                        var maxres = sb.Query(qs, qr);
                                        var i, j;
                                        for(i = 0; i < qr.length; ++i)
                                        {
                                                  var doc = sb.GetDocument(qr[i].ID);
                                                  var meta = sb.GetDocumentMetadata(qr[i].ID);

                                  print("-> "+doc.MimeType+" ["+doc.Size+"]"+"n")
                                               for(j = 0; j < meta.length; ++j)
                                               {
                                                             var m = meta[j];
                                 print("--> "+meta[j].Key+
                                 "["+meta[j].Slice+"]="+meta[j].Value+"n");
                                               }
                                        }




      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                                   100
AXMEDIS CP GRID, technical view
                                                                      WS for
                                                                      Control and
                                                                      Reporting
                                                                      (Workflow)




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012            101
Realizzazione: Rule Engine
• Eng. Cmd & Rep.: interfaccia remota
verso il workflow manager
• Scheduler Cmd Manager: interfaccia
dello scheduler
• Internal Scheduler: schedulazione dei




                                                                                                 Scheduler
job, supervisione del dispatcher
• Dispatcher: gestore delle risorse
remote, della comunicazione e
dell’associazione job-esecutore

• Grid Peer Interface: modulo per
la gestione della comunicazione




                                                                                                               Esecutore remoto
remota

• Rule Executor: modulo per
l’esecuzione dello script


                                      Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012               102
Internal Scheduler
O   permette la scelta dei job da mandare in esecuzione e
    l’aggiornamento della periodicità, il controllo sulla
    scadenza, il controllo e l’aggiornamento delle liste dei
    job e degli esecutori




                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   103
Dispatcher
•riunisce le funzionalità di associazione, lancio
e controllo:
      Resource Controller: controllo dello stato degli
     esecutori e la richiesta del loro profilo
      Optimizer: associazione degli esecutori con i job
     da mandare in esecuzione in funzione del profilo e
     politica FCFS
      Rule Launcher: invio di comandi e del file del
     job agli esecutori remoti
      Rule Monitor: controllo sulle notifiche inviate
     dagli esecutori e dai job in esecuzione


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   104
Evolution of Rule’s State
                                      FAILUR                                                                       SUSPE
                                                                                  If deadline OR time
                                         E                                                                         NDED
   Rule                                                                           Scheduler::Failure
                                                              If error
   Editor::Disable
                                                              Scheduler::Failure
   AXWF::Disable          Rule Editor::Enable                                                      Scheduler::Resume
                          AXWF:: Enable                                                                                   Scheduler::Suspend
                                                                  If executor!=NULL
                Rule Editor::Enable                               Scheduler::Failure
                AXWF:: Enable
                                                Scheduler::Launch                          Scheduler::Run
  INACT                            ACTI                               LAUNC                                   RUNNI
   IVE                             VE                                  HING                                    NG
                 Rule Editor::Disable
                 AXWF::Disable                                                                                           Scheduler::Resume
                                                If executor!=’Available’
                                                Scheduler::Delay
                                                                                        If executor==’Available’
                                                                   DELAY                Scheduler::Run                 Scheduler::Pause
                                                                    ED
                                        If Periodic
If Not Periodic
                                        Scheduler::Refresh
Scheduler:: Disable                                                                                                          PAUSE
                      COMPLE
                        TE                                                                 Scheduler::End

                                                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                                105
Scheduler GUI




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   106
Scheduler




            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   107
Ottimizzazione della Pianificazione
Allocazione dei processi sui nodi
O   Valutazione del profilo dei Nodi
     Capabilities dei nodi
     Potenza computazionale
     Network Capabilities
O   Valutazione delle necessità delle regole/processi
     Componenti necessari, funzioni necessarie
     Scadenza temporale, deadline
     Architettura per la sua esecuzione se multi nodo

O   Scelta della soluzione ottima:
     Bilanciamento del carico
     Soddisfazione dei vincoli
O   Algoritmi di allocazione
     Deadline monotonic
     Taboo Search
     Genetic Algorithms


                                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   108
Pianificazione dei processi




        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   109
Gantt Diagrams (OPTAMS, TS)




     Schedule cumulative for phase before the optimization




    Schedule cumulative for phase after the optimization
                     Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   110
Condor
                                                           JobMonitor
                                                           Screenshot




Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                111
Esempio di
                                       ottimizzazione

                                       125 task, 2CAD, 2CAM,
                                        4ADP, 6MM, 2MEMA




                                 Ottimizzazione: 24.6%


5/18/2012   (C) Paolo Nesi-1995-2000                           112
Sfruttamento della CPU nei nodi




Q In   Nero la % di CPU sfruttata da processi utente
Q In   Rosso la % di CPU sfruttata dal processo del GRID
Q Politiche

       Q Stare   strettamente sotto/allo X%
       Q Accettare   che si possa andare sotto, ma stare all’X% come valore
       medio
       Q Sfruttare   al massimo la CPU quando l’utente non e’ presente

                                Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   113
Planning and Exploiting Node capabilities
                        CPU exploitation controll with an adaptive threshold

    120

    100

     80

     60

     40

     20

      0
          1   12   23    34   45   56   67    78     89 100 111 122 133 144 155 166 177 188 199 210
                    Average on 10 values of CPU workload                  Threshold
                    Global CPU Workload                                   GRID node CPU usage




O    GRID node has a profile describing its capabilities: time
     profile, memory, HD, communication, tools and plug ins, etc.


                                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012      114
AXMEDIS CP GRID, technical view
                                                                      WS for
                                                                      Control and
                                                                      Reporting
                                                                      (Workflow)




           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012            115
Realizzazione: Grid Peer Interface e Grid Peer

O   La Grid Peer Interface rende il sistema indipendente
    dal tipo di strato di comunicazione utilizzato
O   Permette l’invio e la ricezione di messaggi di testo
O   Permette l’invio e la ricezione di file
O   Permette la scoperta degli esecutori e connessione
O   E’ configurabile            file         configurazione


          Messaggi
          di testo




                                                                           scoperta

                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012      116
GRID Interface




Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   117
AXCP GRID NODE

EXECUTOR MANAGER                                   GRID PEER INTERFACE
                                                              GRID PEER

               LAUNCHER



  SCRIPT MANAGER
                                                                                           SCRIPT EXECUTOR


                            JS ENGINE (API Functions)

JS_AXOM   JS_ Funtions     JS_          JS_       JS_                                 JS_        JS_ JS_ PAR
          from AXOM      Selection   Protection Functions                 …         Resource    DRM
            Content                                                                  Types
           Processing
             AXOM
 AXOM        Content     Selection Protection Functions                   …         Resource    DRM    PAR
           Processing
                                                                                     Types

                         AXMEDIS Rule Executor


                                Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                       118
Scheduler Command Manager
                  e Graphic User Interface
O   Lo Scheduler Command
    Manager è un’interfaccia                        User                               Workflow
                                                                                       Manager
    che rende indipendente lo
    scheduler dal tipo di
    interfaccia utente (grafica o                                                    Engine Commands
                                                  Scheduler GUI
    di comunicazione remota)                                                          and Reporting

    usata
O   L’interfaccia grafica
                                                            Scheduler Command Manager
    permette un accesso rapido
    alle funzionalità
    dell’applicazione
                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012               119
Gestione Gerarchica di microGRID
O   Ogni Scheduler identifica un microGRID
O   Da ogni nodo del GRID e’ possibile inviare richieste ad
    altri Scheduler e pertanto ad altri microGRID
      Le richieste vengono inviate tramite chiamate a Web
       Services
O   Si viene a greare una gerarchia di grid e di nodi in tali
    grid
O   I singoli MicroGRID possono essere distirbuiti anche
    geograficamente, si veine a creare un vero e proprio
    GRID geografico
O   I nodi foglia possono inviare richieste allo scheduler
    radice, etc.



                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   120
GRID Gerarchico




Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   121
Dipendenze



      Q Punti     di sync ?
               Q Per la comunicazione ?
               Q Consumo di risultati ?
               Q Attese ?




 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   122
Pianificazione e Ripianificazione
Nell’ottica del controllo della QoS
O Sul microGRID come sul GRID viene effettuata una
  pianificazione dei processi allocandoli sulle risorse (CPU)
  (righe blu nella prossima slide)
     Nella pianificazione si devono tenere conto di vari vincoli
      come: deadline, dipendenze, requisiti computaizone, requisiti
      in termini di librerie e programmi, memoria, CPU, etc.
O   Questa allocazione non e’detto che si verifichi
     Alcuni processi possono essere eseguiti piu’ velocemente, altri
      piu’ lentamente, riespetto ai tempi previsti, etc. (processi rossi
      nella prossima slide)
O   Ogni tanto e’necessario fare una ripianificazione e
    correzione della situazione (processi verdi nella prossima
    slide).


                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   123
Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   124
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   125
Aspetti e caratteristiche di alto livello
O   Portabilita’:
      Su diversi OS e piattaforme
      Come java script
O   modularita’:
      Si possono aggiungere facilmente nuove funzionalita’
O   Riusabilita’:
      Si possono aggiungere facilmente nuove funzionalita’
      Gli script sono parametrizzati
O   Expandibilita’:
      Si possono aggiungere facilmente nuove funzionalita’
O   Flessibilita’:
      Si possono aggiungere facilmente nuove funzionalita’



                        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   126
GRID comparison 1
                    axmedis           Condor                      Globus                Legion                     Unicore

Description         Content           Network batch and           Bag of Grid           MetaSystem object          Vertical Grid
                    processing        resource manager            Technologie           based                      system
                    GRID for media                                s
Category            Small Scale       Small Scale Grid            MiddleWare            MiddleWare                 MiddleWare

Resource Manager    Central machine   Central machine             GRAM                  Collector, Scheduler,      Incarnation
                    Manager           Manager                                           Enactor                    DataBase on Vsite
Resouce Discovery   manifesto         ClassAds                    MDS (handles          limited                    Target System
                                                                  resource                                         Interface (TSI)
                                                                  informations)

Communication       WS                Remote System Call          Nexus, Globus         Asynchronous message-      Asynchronous
                                                                  I/O                   passing system, LOIDs      Transaction

Fault Tolerance     none              Checkpoint &                Heart Beat            Checkpoint via libraries   Failure Flag
                                      Migration                   Monitor (HBM)

Security            DRM               GSI (X.509)                 GSI (X.509)           Public-key cryptography    SSL
                                      Kerberos                    SSL (Secure           based on RSAREF 2.0        X.509
                                      (User/Ip based)             Sockets               Three message-layer
                                      UIDs                        Layer)                security modes
                                                                                        MayI (classes security)

Architecture        hierarchical      Universes structured        “Hourglass”           Everything is an object…   “Three-tier
                                                                  architecture                                     model”


                                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                              127
GRID comparison 2
                AXMEDIS             Condor                       Globus               Legion                       Unicore

OGSA            NO                  No                           yes                  no                           yes
Compliant
Parallelism     Yes, not internal   No                           yes                  yes                          -

Parameters      Yes                 No                           yes                  yes                          -
Studies
Necessary       No, + Extended JS   Re-link with Condor          Re-link with         Directive embedded in        -
changes to                          libraries                    Globus               Fortran Code; use of
                                                                 libraries,           MPL to parallelize C++
user’s source
                                                                 changes to           application; interface for
code                                                             support              PVM and MPI application
                                                                 parallelism


Platform        Windows XP, and     MacOS                        Server:              Solaris 5.x                  Server:
                server              Linux RedHat 7.x, 8.0,       Linux                IRIX 5.x, 6.5                Unix
                                    9                            Client:              Linux RedHat 5.x             Linux
                                    Solaris 2.6, 2.7, 8, 9       Linux                AIX 4.2.1, 4.3               Client:
                                    IRIX 6.5                     Any platform         Hp-Unix 11.x                 Any platform that
                                    Hp-Unix.                     that supports        Cray Unicos (as a virtual    support Java
                                    Windows NT4, 2000,           JDK                  host only)                   (J2RE) 1.4 o
                                    Xp                                                                             superiori
                                    (con funzionalità
                                    ridotte)


                                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                              128
GRID comparison 3
          AXMEDIS                      Condor                          Globus           Legion                           Unicore

Languag   Any language is viable, JS   Application:                    Application      Application:                     Application:
          is the glue to put in        C                               :                C++                              Java
es        execution                    C++                             C                MPL (an extension of C++)        Middleware:
                                       Java                            Java             Fortran                          Java 2.0



Require   Windows                      On Windows:                     -                250-300 MB of free disk space    -
                                       at least 50 MBytes of                            at least 256 MB virtual memory
ments                                  free disk space                                  /bin/ksh installed
                                       NTFS or FAT




Licence   Source code available        Source code available on        (Open            Binaries packages only           Open source
                                       mail request                    source)


Links     www.axmedis.org              www.cs.wisc.edu/condor          www.globu        www.legion.virginia.edu          www.unicorepro.
                                       (necessary state name,          s.org            (Legion RSA libraries are        com
                                       e-mail and organization)                         available separately; from
                                                                                        1/1/03 contact Avaki.com for
                                                                                        all inquiries about Legion)




                                                  Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                              129
Micro GRID for scalable media comput.




              Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   130
Multimedia GRIDs for the future applications
            Comparison (IEEE Multimedia March 2009)
                 Content      Content             Media                       Interactive     Parallel
                 management   analysis            streaming                   controls        processing
Access Grid          Y              Y                        Y

GridCast             Y                                       Y                            Y

mmGrid                              Y                        Y                            Y

gMOD                 Y                                       Y                            Y

MediaGrid            Y                                       Y                            Y        Y

AE@SG                Y

Parallel-Horus       Y              Y                                                              Y

Context Aware        Y              Y                        Y                                     Y
MM Middleware
AXMEDIS              Y              Y                        Y                            Y        Y




                               Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                    131
Comparison: Micro GRID for media
            IEEE Multimedia 2012




                                                                                                                    MediaGrid.or
                                                                                             MediaGrid




                                                                                                                                   MediaGrid
                                                                   AXMEDIS


                                                                                MMGRID




                                                                                                                                   Omneon
                                                                                                         GridCast


                                                                                                                    g
Content Management: storage, UGC, ..                                X                       (x)          (x)           X              X
Content computing/processing: adaptation,                           X                       (x)          (x)          (x)             X
processing conversion, cross media content 
packaging,   ..
Content Delivery Network Management                                 X            X            X           X             X
Metadata enrichment and reasoning                                   X
Content Protection Management (CAS/DRM)                             X
Content Indexing and Querying, knowledge base                       X                                     X                           X
Semantic Computing Reasoning on user profiling,                     X
content descriptors, recommendations
User Interaction Support, rendering, collaboration                 X             X                                      X
Client player as grid nodes for intelligent content                X
Global and/or Local grid                                         L/(G)           G           G           G           G/L              L

                                       Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                                           132
Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   133
Grid Project References
O   Open Science Grid                            O      AXMEDIS
                                                           www.axmedis.org
      www.opensciencegrid.org
                                                 O      CHEPREO
O   Grid3                                                  www.chepreo.org
      www.ivdgl.org/grid3                       O      UltraLight
O   Virtual Data Toolkit                                   www.ultralight.org
      www.griphyn.org/vdt                       O      Globus
                                                           www.globus.org
O   GriPhyN
                                                 O      Condor
      www.griphyn.org                                     www.cs.wisc.edu/condor
O   iVDGL                                        O      WLCG
      www.ivdgl.org                                       www.cern.ch/lcg
                                                 O      EGEE
O   PPDG                                                   www.eu-egee.org
      www.ppdg.net

     Q From  AXMEDIS you can download the installable tool
     to set up your GRID

                           Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   134
sommario
O   Contesto tecnologico
O   Architetture Parallele
O   The GRID, definizione e motivazioni
O   Concetti estesi dei GRID, microgrid
O   Applicazioni e problemi dei GRID
O   Soluzioni GRID...Globus, Condor
O   Soluzioni MicroGRID: AXCP grid
O   Confronto fra GRID
O   Applicazioni per microGRID


                    Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   135
Key Issue: dynamic and real time
O   Devices and content formats are not static
      Emerging devices and formats
      Dynamic market in terms of possibilities and content types and
       formats
      Players with support for numerous content types and formats
      Players accessible on different devices..
         Interoperability

O   Back office computing for
      Content Management Systems, Media Management Systems and Social
       Networks, Content Delivering Network, etc...
      reccomendations, suggestion, indexing, etc.
      Similarity distance, ....
      Crawling di dati e contenuti
      Content processing
         Content composition and formatting



                             Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   136
Applicazioni AXMEDIS GRID, AXCP
O   On-demand distribution:
      Production on the basis of requests and profiling (user device,
       network, etc.), etc.
      Request depending adaptation and processing

O   Multi-channel distribution
      Differing receiving devices, Differing distribution modalities
      Multiple interoperable DRMs, license chain processing

O   Profile management and processing
      user profile, network capabilites, device capability
      deciding about content production and adapation
      activites have to be done in real time for VOD,
      production on demand, etc.




                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   137
Applicazioni AXCP GRID come piattaforma
O   Monitoring:
        Broadcast channels and networks,
        Peer-To-Peer networks, Websites, etc.
        streams of audio and/or video signals
        Real time estimation of Fingerprint/watermark
           Canali internet gateway, P2P, Broadcast


O   query and indexing on distributed databases
      decomposizione dello spazio di ricerca


O   Definition of fault tolerant architectures for data and/or
    processing GRID
      Distributed computing and database



                            Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   138
Distribution
                Production &                                             Front end
                Distribution
                 back-office                                            AXMEDIS
                                                                                       P
                                                                         License
                                                                         Server
   Mobile        AX_RuleG(..)                                                          L
                   Dir=ProfileProcessing(UID,DP,NP)                     AX Dist.
distribution,      A=GetContent(db);
                   B.MP21_Package(A);
                                                                        Service                       Content
                   Pinfo=MP21_RandDefinePinfo();                                                     Acquisition
 OMA and           B.MP21_Protection(Pinfo);
                   C.ObjPublishing(Portal1);
                                                                                                      & usage
                                                                          OMA
 MPEG-21           B.Adaptation(A, Dir);
                   OPinfo=OMA_RandDefinePinfo();
                                                                        Content
                   E.OMA_DRMPackager(B, OPinfo);
                                                                         Issuer
                   E.OMA_ObjPublishing(Portal2);                       Rights server
                                                                                           L
                                                                                               P




                AXCP GRID
                Scheduler                                              Promotion           Content
                                                                         Portal            Selection

                                    AX_RuleL(..)
                                                                    [UID,OID,
                 D=ProfileProcessing(UID,DP)                       DID, Const]
                 L.LicenseSet(UID,OID, DID, Const);
                 L.RelProduction();
                 L.RelPosting(ls1);
                                                                        Selling
                                                                        Portal
                 M.Rel_to_OMAdrmConversion(L, D);
                 M.ODRLPosting(ls2);                                    Regist.                       Rights
                                                                        Portal                     acquisition x
                                                                                                   exploitation


                        Collection of Actions Logs Records
                          Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012                           139
Controlled P2P Network

                     AXMEDIS Content
                  Processing Engines and
                     Scheduler GRIDs




        Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012   140
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures
big data processing, semantic grid, axcp computing, grid computing, parallel architectures

Weitere ähnliche Inhalte

Andere mochten auch

Prezentace projektu Masarykův onkologický ústav
Prezentace projektu Masarykův onkologický ústavPrezentace projektu Masarykův onkologický ústav
Prezentace projektu Masarykův onkologický ústavKISK FF MU
 
One piece volume 06(045-053)
One piece volume 06(045-053)One piece volume 06(045-053)
One piece volume 06(045-053)Marcos Donato
 
20100314 virtualization igotti_lecture07
20100314 virtualization igotti_lecture0720100314 virtualization igotti_lecture07
20100314 virtualization igotti_lecture07Computer Science Club
 
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...Marcos Donato
 
La bella molinera
La bella molineraLa bella molinera
La bella molineraemmsantboi
 
Co je příčinou propadu kvality školství v České republice?
Co je příčinou propadu kvality školství v České republice?Co je příčinou propadu kvality školství v České republice?
Co je příčinou propadu kvality školství v České republice?KISK FF MU
 
[아이데이션]아이폰 쇼핑
[아이데이션]아이폰 쇼핑[아이데이션]아이폰 쇼핑
[아이데이션]아이폰 쇼핑Seungyul Kim
 
Mobiilineuvojan työ ja roolit
Mobiilineuvojan työ ja roolitMobiilineuvojan työ ja roolit
Mobiilineuvojan työ ja roolitPauliina Venho
 
20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06Computer Science Club
 
Los medios de transporte
Los medios de transporteLos medios de transporte
Los medios de transporteJMAV3SALINAS
 
One piece volume 38(358-367)
One piece volume 38(358-367)One piece volume 38(358-367)
One piece volume 38(358-367)Marcos Donato
 
Matchmaking multiplace, piattaforma di APREToscana
Matchmaking multiplace, piattaforma di APREToscanaMatchmaking multiplace, piattaforma di APREToscana
Matchmaking multiplace, piattaforma di APREToscanaPaolo Nesi
 
Mobiilioppiminen on kokemuksellista
Mobiilioppiminen on kokemuksellistaMobiilioppiminen on kokemuksellista
Mobiilioppiminen on kokemuksellistaPauliina Venho
 
Autobiografía lineal
Autobiografía linealAutobiografía lineal
Autobiografía linealMAFE_CA
 
XM603 Group4 - 16012010 Q2
XM603 Group4 - 16012010 Q2XM603 Group4 - 16012010 Q2
XM603 Group4 - 16012010 Q2Dinsor Rimnatee
 

Andere mochten auch (18)

Prezentace projektu Masarykův onkologický ústav
Prezentace projektu Masarykův onkologický ústavPrezentace projektu Masarykův onkologický ústav
Prezentace projektu Masarykův onkologický ústav
 
One piece volume 06(045-053)
One piece volume 06(045-053)One piece volume 06(045-053)
One piece volume 06(045-053)
 
20100314 virtualization igotti_lecture07
20100314 virtualization igotti_lecture0720100314 virtualization igotti_lecture07
20100314 virtualization igotti_lecture07
 
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...
048.guerra.civil. .o.espetacular.homem.-.aranha.535.hq.br.28 jun07.os.impossi...
 
La bella molinera
La bella molineraLa bella molinera
La bella molinera
 
Co je příčinou propadu kvality školství v České republice?
Co je příčinou propadu kvality školství v České republice?Co je příčinou propadu kvality školství v České republice?
Co je příčinou propadu kvality školství v České republice?
 
Pre
PrePre
Pre
 
[아이데이션]아이폰 쇼핑
[아이데이션]아이폰 쇼핑[아이데이션]아이폰 쇼핑
[아이데이션]아이폰 쇼핑
 
Doc2josh
Doc2joshDoc2josh
Doc2josh
 
Mobiilineuvojan työ ja roolit
Mobiilineuvojan työ ja roolitMobiilineuvojan työ ja roolit
Mobiilineuvojan työ ja roolit
 
20120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture0620120415 videorecognition konushin_lecture06
20120415 videorecognition konushin_lecture06
 
Los medios de transporte
Los medios de transporteLos medios de transporte
Los medios de transporte
 
One piece volume 38(358-367)
One piece volume 38(358-367)One piece volume 38(358-367)
One piece volume 38(358-367)
 
Matchmaking multiplace, piattaforma di APREToscana
Matchmaking multiplace, piattaforma di APREToscanaMatchmaking multiplace, piattaforma di APREToscana
Matchmaking multiplace, piattaforma di APREToscana
 
Mobiilioppiminen on kokemuksellista
Mobiilioppiminen on kokemuksellistaMobiilioppiminen on kokemuksellista
Mobiilioppiminen on kokemuksellista
 
Autobiografía lineal
Autobiografía linealAutobiografía lineal
Autobiografía lineal
 
XM603 Group4 - 16012010 Q2
XM603 Group4 - 16012010 Q2XM603 Group4 - 16012010 Q2
XM603 Group4 - 16012010 Q2
 
Papai noel2
Papai noel2Papai noel2
Papai noel2
 

Ähnlich wie big data processing, semantic grid, axcp computing, grid computing, parallel architectures

From parallel architecture to mapreduce hadoop passing on grid, UNIFI course
From parallel architecture to mapreduce hadoop passing on grid, UNIFI courseFrom parallel architecture to mapreduce hadoop passing on grid, UNIFI course
From parallel architecture to mapreduce hadoop passing on grid, UNIFI coursePaolo Nesi
 
Java Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningJava Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningAndrea Ciccotta
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopPaolo Nesi
 
I dati geografici liberi della Regione Emilia-Romagna
I dati geografici liberi della Regione Emilia-RomagnaI dati geografici liberi della Regione Emilia-Romagna
I dati geografici liberi della Regione Emilia-RomagnaPlanetek Italia Srl
 
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...OpenGeoDataItalia
 

Ähnlich wie big data processing, semantic grid, axcp computing, grid computing, parallel architectures (6)

From parallel architecture to mapreduce hadoop passing on grid, UNIFI course
From parallel architecture to mapreduce hadoop passing on grid, UNIFI courseFrom parallel architecture to mapreduce hadoop passing on grid, UNIFI course
From parallel architecture to mapreduce hadoop passing on grid, UNIFI course
 
Java Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine LeariningJava Symbolic Regression - Machine Learining
Java Symbolic Regression - Machine Learining
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
 
I dati geografici liberi della Regione Emilia-Romagna
I dati geografici liberi della Regione Emilia-RomagnaI dati geografici liberi della Regione Emilia-Romagna
I dati geografici liberi della Regione Emilia-Romagna
 
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...
I dati geografici liberi della Regione Emilia-Romagna: un patrimonio da scopr...
 
Hog processing
Hog processingHog processing
Hog processing
 

big data processing, semantic grid, axcp computing, grid computing, parallel architectures

  • 1. Sistemi Distribuiti Corso di Laurea in Ingegneria Prof. Paolo Nesi Parte 5: Architetture Parallele, Sistemi GRID x Big Data Department of Systems and Informatics University of Florence Via S. Marta 3, 50139, Firenze, Italy tel: +39-055-4796523, fax: +39-055-4796363 Lab: DISIT, Sistemi Distribuiti e Tecnologie Internet nesi@dsi.unifi.it, paolo.nesi@unifi.it http://www.disit.dsi.unifi.it Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 1
  • 2. Il Contesto Tecnologico Crescita delle risorse O Il numero di transistor raddoppia ogni 18 mesi (Legge di Moore) O La velocità dei computer raddoppia ogni 18 mesi O La densità di memoria raddoppia ogni 12 mesi O La velocità della rete raddoppia ogni 9 mesi Differenza = un ordine di grandezza ogni 5 anni Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 2
  • 3. Beyond Moore’s Law Estimated CPU Capacity at CERN Intel CPU (2 GHz) = 0.1K SI95 6,000 CPU 5,000 Requirements 4,000 Moore’s Law K SI95 3,000 (2000) 2,000 1,000 0 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 3
  • 4. Network Exponentials O Network vs. computer performance  Computer speed doubles every 18 months  Network speed doubles every 9 months  Difference = one order of magnitude every 5 years O 1986 to 2000  Computers: x 500  Networks: x 340,000 O 2001 to 2010  Computers: x 60  Networks: x 4000 Q Moore’s Law vs. storage improvements vs. optical improvements. Graph from Scientific American (Jan-2001) by Cleo Vilett, source Vined Khoslan, Kleiner, Caufield and Perkins. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 4
  • 5. Frieda’s Application … Simulate the behavior of F(x,y,z) for 20 values of x, 10 values of y and 3 values of z (20*10*3 = 600 combinations) F takes on the average 6 hours to compute on a “typical” workstation (total = 3600 hours) F requires a “moderate” (128MB) amount of memory F performs “moderate” I/O - (x,y,z) is 5 MB and F(x,y,z) is 50 MB Non posso aspettare 3600 ore Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 5
  • 6. Grid vs Distributed and Parallel Parallel Distributed Computing Computing GRID Computing Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 6
  • 7. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 7
  • 8. Architetture Parallele O La definizione di un’architettura ottima in termini di processi paralleli per il calcolo scientifico dipende dal problema O Vi sono problemi  intrinsecamente sequenziali  Lineari vettoriali  Multidimensionali vettoriali  Paralleli nei dati di ingresso  Paralleli nei dai di uscita  Paralleli nei servizi  Paralleli nella procedura  Etc.. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 8
  • 9. Esempio di caso Lineare O VettC = VettA + VettB O In modo sequenziale il Costo e’ o(N), in parallelo il costo e’ 1 O Soluzione parallela:  N nodi  Un concentratore per raccolta dati  Comunicazione fra nodi: assente  Comunicazione con il nodo concentratore 1. Passa A e B 1 2. Passa Ai, Bi 5 6 3. Calcola Ai+Bi 4. Passa Ci 2 4 4 4 2 4 5. Metti insieme C 2 2 ……………. 6. Passa C 3 3 3 3 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 9
  • 10. Esempio di caso 2D, (..nD) O MatC = MatA + MatB O In modo sequenziale il Costo e’ o(NM), in parallelo il costo e’ 1 O Soluzione parallela:  N*M nodi  Un concentratore per raccolta dati  Comunicazione fra nodi: assente  Comunicazione con il nodo concentratore 1. Passa A e B 1 2. Passa Aij, Bij 5 6 3. Calcola Aij+Bij 4. Passa Cij 2 4 4 4 2 4 5. Metti insieme C 2 2 ……………. 6. Passa C 3 3 3 3 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 10
  • 11. Comunicazione fra processi O In alcuni casi vi e’ la necessita’ di effettuare connessioni/comunicazioni dirette fra modi dell’architettura parallela O Se queste comunicazioni sono in parallelo si risparmia tempo rispetto a farle convergere e gestire tutte da un nodo centrale come in molti GRID O In un GRID  Il GRID deve permettere di mappare in modo logico una architettura qualsiasi sul’architettura fisica del GRID  I nodi devono comunicare chiamandosi in modo logico e non fisico  Identificazione dei nodi. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 11
  • 12. Soluzioni parallele diverse Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 12
  • 13. Soluzioni parallele diverse Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 13
  • 14. Piramide detta anche grid Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 14
  • 15. 3 P in forma ciclica o consecutiva Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 15
  • 16. 8 P in forma ciclica o consecutiva Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 16
  • 17. Comunicazioni fra processi O Comunicazione fra processi per congiungere dati parziali  Spesso necessarie per processi iterativi  Soluzioni di equazioni alle derivate parziali  Soluzioni agli elementi finiti  Inversioni di matrici a blocchi O Condizioni al contorno  Soluzioni di equazioni alle derivate parziali  Soluzioni agli elementi finiti O Integrazione del calcolo  Equazioni differenziali alle derivate parziali  Calcolo di Flussi  Calcolo per antenne Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 17
  • 18. Speed Up Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 18
  • 19. Speed Up Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 19
  • 20. An example quicksort merge quicksort merge quicksort merge quicksort File merge ordinato quicksort merge quicksort merge quicksort merge quicksort Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 20
  • 21. Un Esperimento CONDOR at DISIT Risultati finali 2680 2800 Tempo esecuzione (secondi) 2400 1800 2000 1600 1200 Esecuzione Locale Condor 667 800 535 400 140 15 0 4000 32000 64000 N° stringhe input file Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 21
  • 22. Scelte che hanno condizionato il risultato O Non si e’ utilizzato un merge sort dall’inizio perche’ non e’ efficiente visto che inviare due valori ad un nodo per sapere quale dei due e’ maggiore costa di piu’ che farlo in locale  Andamento del costo locale e distribuito del merge, per decidere O Si poteva utilizzare:  Algoritmi di ordinamento diversi  Una partizione diversa dei dati, non 8 processi ma per esempio 4, con due livelli e non 3  Questo poteva permettere di avere maggiori vantaggi in certe condizioni Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 22
  • 23. Allocazione dei processi O Caso 1:  Ho 8+4+2+1 processori e un processo per processore.  Ogni processo sa da dove prendere I dati e dove mandare I risultati O Caso 2:  Ho 8 processore, questi computano la prima fase, poi quelli pari comunicano il risultato ai dispari, che  divengono pertanto I 4 processore fase 2  Quelli che hanno id divisibile per 4 passano I risultati a quelli modulo 4 + 1, questi divengono quelli della fase 3  Etc. etc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 23
  • 24. Problemi O Parallelizzazione degli algoritmi  Progettazione parallela  Non tutti gli algoritmi si possono parallelizzare in modo facile e poco costoso..  Bilanciamento fra vantaggi e costi di comunicazione  Massimizzazione dello Speed Up: Efficienza della soluzione parallela O Allocazione ottima dei processi sui peer:  Capacità dei peer, che cambiano nel tempo  Costi di comunicazione che cambiano nel tempo  Problema di allocazione: Genetic Algorithms, Taboo Search, etc. O Tolleranza ai fallimenti  Ridondanza dei processi  Migrazione dei processi, salvataggio del contesto O Limitato controllo delle capacità dei peer O Limitato controllo delle prestazioni rete… QoS…. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 24
  • 25. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 25
  • 26. The GRID O “the Grid” term coined in the mid 1990s to denote a distributed computing infrastructure for advanced science and engineering O “Resource sharing & coordinated problem solving in dynamic, multi- institutional virtual organizations” (Ian Foster, Karl Kesselman) O Un insieme di risorse computazionali, di dati e reti appartenenti a diversi domini amministrativi O Fornisce informazioni circa lo stato delle sue componenti tramite Information Services attivi e distribuiti. O Permette agli utenti certificati di accedere alle risorse tramite un’unica procedura di autenticazione O Gestisce gli accessi concorrenti alle risorse (compresi i fault)  No single point of failure Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 26
  • 27. Per essere un GRID • coordina risorse e fornisce meccanismi di sicurezza, policy, membership… • Usa protocolli ed interfacce standard, open e general- purpose. • permette l’utilizzo delle sue risorse con diversi livelli di Qualities of Service ( tempo di risposta, throughput, availability, sicurezza…). • L’utilità del sistema (middle tier) e molto maggiore a quella della somma delle sue parti nel supporto alle necessità dell’utente. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 27
  • 28. Scienze Data Intensive O Fisica nucleare e delle alte energie  Nuovi esperimenti del CERN O Ricerca onde gravitazionali  LIGO, GEO, VIRGO O Analisi di serie temporali di dati 3D (simulazione, osservazione)  Earth Observation, Studio del clima  Geofisica, Previsione dei terremoti  Fluido, Aerodinamica  Diffusione inquinanti O Astronomia: Digital sky surveys Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 28
  • 29. BigData Science O How to: compute, process, simulate, extract meaning, of vaste/huge amount of data to create knowledge O Exploit efficiently the hugh amount of data/knowledge O Issues:  Data representation: indexing, search, execute, etc..  Data computing: sparse, uncertain, fast, etc.  Data understanding: mining, analize, etc.  Data view: fast, navigate, O Applications:  Recommendations, suggestions, semantic computing  Business intelligence: health, trends, genomic, HBP,  Distributed database  Social networking  Event detection, Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 29
  • 30. Supercomputer-Enhanced Instrumentation Source: Globus 2002 Tutorial Virtual Reality Cave Advanced Photon Source Avatar Scientis t Supercomput er Electronic Computing Library Portal Clients and Databases Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 30
  • 31. Distribution of Servers in Enterprise Computing Source: IBM, Global Grid Forum 4, 2002 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 31
  • 32. Home Computers Evaluate AIDS Drugs O Community =  1000s of home computer users  Philanthropic computing vendor (Entropia)  Research group (Scripps) O Common goal= advance AIDS research Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 32
  • 33. Mathematicians Solve NUG30 O Looking for the solution to the NUG30 quadratic assignment problem O An informal collaboration of mathematicians and computer scientists O Condor-G delivered 3.46E8 CPU seconds in 7 days (peak 1009 processors) in U.S. and Italy (8 sites) Q 14,5,28,24,1,3,16,15, Q 10,9,21,2,4,29,25,22, Q MetaNEOS: Argonne, Iowa, Q 13,26,17,30,6,20,19, Northwestern, Wisconsin Q 8,18,7,27,12,11,23 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 33
  • 34. Earth Observation ESA missions: • about 100 Gbytes of data per day (ERS 1/2) • 500 Gbytes, for the next ENVISAT mission (2002). DataGrid contribute to EO: • enhance the ability to access high level products • allow reprocessing of large historical archives • improve Earth science complex applications (data fusion, data mining, modelling …) Source: L. Fusco, June 2001 Federico.Carminati , EU review presentation, 1 March 2002 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 34
  • 35. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 35
  • 36. Concetti Estesi del GRID O Virtual Organization (VO) è costituita da:  un insieme di individui o istituzioni  un insieme di risorse da condividere  un insieme di regole per la condivisione O VO: utenti che condividono necessità e requisiti simili per l’accesso a risorse di calcolo e a dati distribuiti e perseguono obiettivi comuni. O abilità di negoziare le modalità di condivisione delle risorse tra i componenti una VO (providers and consumers) ed il successivo utilizzo per i propri scopi. [I.Foster] Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 36
  • 37. iVDGL: International Virtual Data Grid Laboratory Tier0/1 facility Tier2 facility Tier3 facility 10 Gbps link 2.5 Gbps link 622 Mbps link U.S. PIs: Avery, Foster, Gardner, Newman, Szalay Other link www.ivdgl.org Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 37
  • 38. To Russia/Japan To USA Cern Milano Padova/LNL Torino Bologna Pisa Cagliari Catania Prototipo di interconnessione tra INFN DataGrid, l’EDG e progetti in US ed ASIA Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 38
  • 39. Coordinamento Programma Nazionale FIRB TORINO MILANO CNR e Università PADOVA PAVIA HPC, Programmazione parallela, Grid computing, BOLOGNA Librerie scientifiche, Data base e knowledge discovery, GENOVA Osservazione della terra, Chimica computazionale, Elaborazione di immagini, … PISA INFN e Università PERUGIA Grid (INFN-Grid, DataGrid, DataTag) , Applicazioni di e-science: Astrofisica, ROMA Biomedicina, Geofisica, … BARI NAPOLI MATERA ASI LECCE Applicazioni di CAGLIARI osservazione della Terra COSENZA CNIT PALERMO Tecnologie e infrastrutture hardware-software di comunicazione ad alte prestazioni, Tecnologia ottica, … Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 39
  • 40. Grid of Cluster computing O GRID  collezione di risorse distribuite, possibilmente eterogenee, ed una infrastruttura hardware e software per calcolo distribuito su scala geografica.  mette assieme un insieme distribuito ed eterogeneo di risorse da utilizzare come piattaforma per High Performance Computing. O Cluster, a micro-grid  Usualmente utilizza piattaforme composte da nodi omogenei sotto uno stesso dominio amministrativo  spesso utilizzano interconnessioni veloci (Gigabit, Myrinet).  Le componenti possono essere condivise o dedicate. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 40
  • 41. Applicazioni dei GRID O Calcolo parallelo: sfruttamento di risorse distribuite a basso costo al posto di supercalcolatori O Applicazioni di calcolo massivo:  Medicali E.g.: From TAC to 3D real models  Profiling and personalization  Visione artificiale E.g.: Composition/mosaicing of GIS images  Risoluzione delle license per DRM  Adattamento di risorse digitali, coversione di formato  Stima di fingerprint di risorse digitali  Generazione di descrittori di risorse digitali  Simulazione strutturali, fluidodinamica, deformazioni, finanziarie, servizi, etc.  Predizioni del tempo  Predizioni finaziarie Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 41
  • 42. Alcuni dettagli  Profiling and personalization Profilo del cellulare, capabilities, preferenze utenti Richiesta di contenuti, formati, img, doc, etc. Milioni di utenti al secondo  Visione artificiale E.g.: Composition/mosaicing of GIS images  Risoluzione delle license per DRM Richieste di risoluzione delle license  Adattamento di risorse digitali, coversione di formato  Stima di fingerprint di risorse digitali Riconoscimento delle tracce audio  Generazione di descrittori di risorse digitali Produzione di descrittori per inserirle in metadata, quando viene riprodotto un catalogo Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 42
  • 43. Types of Grid Computing Compute share access to computing Utility grids grids resources share share access to access application software Data to and services grids databases and files systems Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 43
  • 44. Types of Grid Computing O GRID Compute  Per esempio ricerca dello spazio delle soluzioni Predizione finanziaria, del tempo Problema del Commesso viaggiatore Analisi del genoma Produzione delle possibili tracce, evoluzioni dello stato in una macchina a stati Model checking, history checking O GRID Data  Database frazionato: da1M record in 10 da 100000 che in parallelo danno un risposta alla query  Query replicate Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 44
  • 45. Types of Grid Computing O GRID Service  Database replicato per dare un servizio a molte persone, il parallelismo e’ sulle persone, sugli accessi al servizio. Query diverse sullo stesso database O I probemi reali in effetti integrano I vari aspetti producendo la necessita’ di gestire GRID che hanno vari aspetti Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 45
  • 46. One View of Requirements O Identity & authentication O Security: intrusion detection O Authorization & policy O Accounting: Grid cost O Resource discovery O Fault management O Resource characterization O Fault tolerance O Resource allocation, management O (Co-)reservation, workflow O Recovery from failure O Distributed algorithms O Grid System evolution O Remote data access O Etc. O High-speed data transfer O … O Performance guarantees O Monitoring, se non misuri non controlli Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 46
  • 47. The Systems Problem: Resource Sharing Mechanisms That … O Address security and policy concerns of resource owners and users O Are flexible enough to deal with many resource types and sharing modalities O Scale to  large number of resources,  many participant/users  many program components/process  On different nodes and configurations O Operate efficiently when dealing with large amounts of data & computation Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 47
  • 48. Aspects of the Systems Problem 1) interoperability when different groups want to share resources  Diverse components, policies, mechanisms  E.g., standard notions of identity, means of communication, resource descriptions 2) shared infrastructure services to avoid repeated development, installation  E.g., one port/service/protocol for remote access to computing, not one per tool/application  E.g., Certificate Authorities: expensive to run O A common need for protocols & services Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 48
  • 49. Programming & Systems Problems O The programming problem  Facilitate development of sophisticated applications  Facilitate code sharing among nodes  Requires programming environments APIs, SDKs, tools, distributed debug O The systems problem  Facilitate coordinated use of diverse resources Smart allocation, profiling, capabilities  Facilitate infrastructure sharing e.g., certificate authorities, information services  Requires systems protocols, services Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 49
  • 50. Problemi dei GRID O condivisione delle risorse flessibile e sicura su scala geografica O L’ottimizzazione dello sfruttamento delle risorse, il cui stato non è direttamente sotto controllo e le informazioni relative sottostanno ad un certo grado di incertezza O Formazione dinamica di organizzazioni virtuali, VO O Negoziazione online per l’accesso ai servizi: chi, cosa, perché, quando, come, QOS  sistemi in grado di fornire diversi livelli di “Quality of Service” O Gestione automatica della infrastruttura O Problemi a licello di risorse e connettivita’ che sono il collo di bottiglia di molte applicazioni GRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 50
  • 51. Layered Grid Architecture (By Analogy to Internet Architecture) Application Internet Protocol Architecture “Coordinating multiple resources”: ubiquitous infrastructure services, Collective app-specific distributed services Application “Sharing single resources”: negotiating access, controlling use Resource “Talking to things”: communication (Internet protocols) & security Connectivity Transport Internet “Controlling things locally”: Access to, & control of, resources Fabric, OS Link Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 51
  • 52. Layers del GRID O 1) Livello applicativo: e’ l'interfaccia con la quale l'utente può interagire con il sistema e contiene le applicazioni rivolte all'utente ed il meccanismo della gestione delle organizzazioni virtuali. O 2) Livello servizi collettivi: contiene i servizi API utilizzati per la gestione e la condivisione delle risorse che rendono nota all'utente l'allocazione delle risorse di cui ha bisogno. O 3) Livello protocolli (resource and connectivity): O 4) Livello fabric: e composto dalle risorse distribuite tramite la rete, che possono essere entità logiche o siche. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 52
  • 53. 2) Livello servizi collettivi: Definisce protocolli, SDK ed API per l’interazione con le risorse. Fornisce ai membri di una VO meccanismi per: O Directory services: scoprire l’esistenza di risorse. O Co-allocation, scheduling, brokering services:allocare una o più risorse e schedulare task O Monitoring services: scoprire e gestire failure, intrusioni, overload… O Data Replication services: scoprire la copia dei dati che permette di massimizzare le performance, in termini di tempi di accesso, reliability, costo… O Software Discovery services: scoprire la miglior piattaforma di esecuzione (anche per il SW) in base ai parametri del problema (NetSolve) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 53
  • 54. 3) Resource and Connectivity O Resource: Definisce, sulla base dei protocolli sottostanti, protocolli, SDK ed API per l’inizializzazione, il monitoraggio ed il controllo di operazioni su di una risorsa.  Information Protocol: informazioni sullo stato della struttura (configurazione, carico…)  Management Protocol: negoziazione per l’accesso alla risorsa, tramite la specifica di requirement e operazioni da effettuare O Connectivity:  Definisce i protocolli base per la comunicazione e l’autenticazione.  I protocolli di Comunicazione permettono lo scambio di dati tra le risorse del livello inferiore.  I protocolli di Autenticazione forniscono meccanismi sicuri (crittografia) per verificare l’identità di utenti e risorse. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 54
  • 55. GRID Standards O Non esiste uno standard per GRID completo O Vi sono degli standard per le comunicazioni, per la negoziazione dei servizi, e altre cose di questo genere. O GLOBUS puo’ essere considerato una sorta di standard Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 55
  • 56. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 56
  • 57. GRID projects O LEGION  Middleware per la connessione di reti  Distribuzione di processi ed allocation  Trasparente per l’utente che chiede il servizio O UNICORE-UNiform Interface to COmputing REsources  Ministero tedesco  Combina le risorse di centri di computer e le rende disponibili in modo sicuro e senza cuciture attraverso intranet o internet.  Peer certificati per garantire l’uso e la sicurezza dei dati O GLOBUS  Open source (era)  Ora sta diventando commerciale Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 57
  • 58. Some GRID Solutions !! O Condor  Unix and windows  Small scale GRID, non parallelism O Globus  Parallel  Unix like  C and java O Legion  Parallel, C++  Unix like  Too much space needed, 300Mbyte O Unicore  Java  Unix like  Open source O AXMEDIS, AXCP  C++ and JavaScript  Windows  Accessible Code, Free Software Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 58
  • 59. GLOBUS and its toolkit O Open Source, Middleware O http://www-unix.globus.org/toolkit/license.html O Library for:  monitoraggio, scoperta e gestione delle risorse e delle informazioni  sicurezza dei nodi (certificati, autenticazione)  sicurezza delle comunicazioni  tolleranza dei guasti  portabilità O Globus Toolkit è cresciuto attraverso una strategia open- source simile a quella di Linux: questo ha incoraggiato una vasta comunità di programmatori e sviluppatori a introdurre continue migliorie al prodotto Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 59
  • 60. Open Grid Services Architecture O Al Global Grid Forum (GGF4),  Globus Project e IBM hanno definito le linee dell’Open Grid Services Architecture (OGSA),  matrimonio e l’evoluzione di due tecnologie: Grid Computing e Web Services. O OGSA introduce il concetto fondamentale di Grid Service, ovvero un GRID che dispone di interfacce che lo rendono manipolabile per mezzo di protocolli web service. O Open Grid Services Infrastructure (OGSI) definisce le interfacce di base/standard e i comportamenti per servizi gestibili dal sistema. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 60
  • 61. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 61
  • 62. Globus GRID Tool Kit O Sicurezza (GSI) O Gestione delle risorse (GRAM, Access and Management) O Gestione dei dati (GASS, GridFTP, GRM) O Servizi di informazione (GIS, security) O Comunicazione (I/O, Nexus, MPICH) O Supervisione dei processi e gestione guasti (MDS, HBM) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 62
  • 63. Componenti di GLOBUS toolkit 1/2 O Grid Security Infrastructure, GSI  meccanismo di autenticazione che si occupa della sicurezza nell'ambiente Grid, garantendo l'accesso solamente agli utenti autorizzati. Si basa sullo standard di certificati  GSI delega, ossia effettua una creazione remota di un proxy delle credenziali e permette a un processo remoto di autenticarsi per conto dell'utente. O Globus Resource Allocation Manager, GRAM  abilitare un accesso sicuro e controllato alle risorse computazionali gestendo l'esecuzione remota di operazioni sulle risorse stesse.  Il gatekeeper e un processo del GRAM che gestisce la richiesta di un nodo cliente inviandola al job manager, il quale dopo aver creato un processo per la richiesta ne controlla l'esecuzione comunicandone lo stato all'utente remoto. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 63
  • 64. Componenti di GLOBUS toolkit 2/2 O Data Management  GRIDFTP e’ un protocollo utilizzato per realizzare lo scambio di file tra le varie risorse all'interno della griglia. Estende il protocollo FTP, aumentando la capacita e la sicurezza del trasferimento dati O GRID Information Services, GIS  raggruppa le informazioni di stato delle varie risorse e viene suddiviso in tre principali servizi: MDS, Monitoring and Discovering Service. GIIS, Grid Index Information Service, organizzato in processi in relazione gerarchica, la root e’ TOP MDS GRIS, Grid Resource Information Service, che colleziona info e le invia al GIIS. Il GRIS e’ installato su ogni risorsa. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 64
  • 65. Resource Management Services Tre componenti principali 1. RSL (Resource Specification Language) per comunicare i requisiti delle risorse 2. Resource Broker: gestisce il mapping tra le richieste ad alto livello delle applicazioni e le risorse disponibili. 3. GRAM (Grid Resource Allocation Management) è responsabile di un set di risorse ed agisce da interfaccia verso vari Resource Management Tools (Condor,LSF,PBS, NQE, EASY-LL ma anche, semplicemente, un demone per la fork) Q 65 Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 65
  • 66. Resource Management Architecture planner negotiation Broker Resource Specification Language Queries & Info Monitor and discover Information Application Service Co-allocator Local GRAM GRAM GRAM resource managers LSF Condor PBS Q Load Sharing Facility Q Portable Batch System” Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 66
  • 67. How to deploy a Grid, hierarchy of components http://www.dartmo uth.edu/~rc/classes/i ntro_grid/Grid_Sof tware_View.html#t op Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 67
  • 68. Combinazione Globus e Condor Q Q Globus Q Protocolli per comunicazioni sicure tra domini Q Accesso standard a sistemi batch remoti Q Condor Q Job submission e allocation Q Error recovery Q Creazione di un ambiente di esecuzione Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 68
  • 69. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 69
  • 70. CONDOR O Nasce nel 1988, University of Madison O Creazione di cluster di workstation PC O Sfruttamento di momenti di scarsa attivita’ della CPU;  Condor lascia la CPU se l’utente lavora sul PC  Salva il punto e poi riparte  Sposta/migra se necessario l’esecuzione del processo su un’altra CPU O Il codice non viene cambiato ma viene semplicemente linkato con lib speciali Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 70
  • 71. Salvataggio del contesto O Per poter migrare il processo devo salvare il contesto. O Il contesto lo salvo ad intervali regolari, per esempio ogni decimo del tempo di esecuzione. O in questo caso ho uno spreco massimo di 1/10 del tempo di esecuzione, che deve essere vantaggioso rispetto al costo di spostamento del processo sull’altro nodo Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 71
  • 72. CONDOR O A basso livello si basa su procolli di comunicazione diversi per gestire i processi (interoperabilita’):  Vanilla: permette di eseguire tutti i programmi che non possono essere re-linkati ed è utilizzato per shell scripts. Non sono implementate migrazione e chiamate di sistema.  PVM: per far girare sopra Condor programmi scritti per l’interfaccia PVM (Parallel Virtual Machine).  MPI: Questo ambiente risulta utile per eseguire i programmi scritti secondo il paradigma di Message Passing Interface (MPICH).  Globus Permette di eseguire i processi scritti …..  Java: Permette di eseguire i processi scritti per la Java Virtual Machine  …. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 72
  • 73. Sicurezza in CONDOR O L’autenticazione di una comunicazione sotto Condor è realizzata grazie all’implementazione di alcuni protocolli: tra questi citiamo  GSI (basato su certificati X.509),  Kerberos,  e un meccanismo basato su file-system (Windows prevede un meccanismo di autenticazione proprietario). Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 73
  • 74. CONDOR architecture Central Manager Condor_Collector Condor_Negotiator Execution Machine Submit Machine Controlling Daemons Controlling Daemons Control via Unix signals to alert job when to checkpoint Condor_Shadow Process User’s job User’s code All System Calls Performed As Remote Condor_Syscall_Library Procedure Calls back to Checkpoint File is the Submit Machine Saved to Disk Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 74
  • 75. CONDOR ruoli e servizi O Central Manager, solo un Central Manager.  Raccoglie tutte le informazioni e negoziare tra le richieste e le offerte di risorse.  Affidabile e potente O Submit  Altre macchine del pool (incluso il Central Manager) possono invece essere configurate per sottomettere jobs a Condor.  queste macchine necessitano di molto spazio libero su disco per salvare tutti i punti di checkpoint dei vari job sottomessi. O Execute (i nodi del GRID)  Alcune macchine nel pool (incluso il Central Manager) possono essere configurate per eseguire processi Condor.  Essere una macchina di esecuzione non implica la richiesta di molte risorse. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 75
  • 76. CONDOR: Pregi e difetti O Pregi:  non necessita di modificare i vostri programmi Differentemente da seti@home  set-up semplice  facilità di gestione della coda dei job  breve tempo necessario ad implementare una “griglia” funzionante.  estrema versatilità nel gestire svariati tipi di applicazioni (.exe).  trasparenza agli occhi degli utenti durante l’esecuzione. O Difetti:  I meccanismi di sicurezza implementati non garantiscono ancora il medesimo livello di protezione offerto da una vera soluzione middleware.  Limitato controllo sull’intera grid.  Bassa “tolleranza” ai guasti: se nessuna macchina del pool soddisfa i requisiti di un job, questo rimane in attesa senza andar mai in esecuzione e l’utente è costretto a rimuoverlo manualmente. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 76
  • 77. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 77
  • 78. AXMEDIS Content Processing GRID O accesso dai dati O trasformazione contenuti  produzione di contenuti on deman  Adattamento in tempo reale, riduzione costi, etc O manipolazione di license in tempo reale O protezione dei cotenuti digitali O Comunicazione con altri processi O Monitoraggio O Controllo reti P2P Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 78
  • 79. AXMEDIS Content Processing, GRID AXMEDIS Factory AXMEDIS Workflow Management tools AXEPTool Area AXMEDIS Editors AXEPTools AXMEDIS Content Processing Engines and AXEPTools Scheduler GRIDs AXMEDIS AXMEDIS databases Crawlers database Area CMSs Programme and Publication Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 79
  • 80. AXMEDIS Content Processing GRID Workflow AXCP Front end Front end manager Visual Designer servers, servers, VOD, prod VOD, prod on demand on demand AXMEDIS Visual Elements Rule Editor and Rules AXCP Quick Scheduler Starter AXCP GRID Rules AXCP nodes Plug-in for content processing WS, FTP, DistributionC Q AXMEDIS hannels and etc. Your CMSs Database servers Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 80
  • 81. AXMEDIS Content Processing Area O GRID infrastructure for  automatic production and processing content on the basis of rules  AXCP Rules which are  written as scripts by the AXCP Rule Editor  executed in parallel and rationally using the computational resources accessible in the content factory  AXCP Rule Engine. O AXCP area receives commands coming from the Workflow of the factory. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 81
  • 82. Factory and integration AXCP Quick Start, Monitoring & Your tools commands, Reporting AXMEDIS Workflow systems,… DRM DB CMS AXMEDIS WEB Server Internet, WEB, VOD, POD.. Automated and Manual Playout Server Factory Tools Web+Strm Server Broadcast, IPTV, i-TV, VOD, POD,… P2P distrib & monitor AXMEDIS Automated and Manual Social Networks Mobiles, PDA, etc. Factory Tools AXMEDIS Automated AXMEDIS and Manual Automated Factory Tools and Manual Factory Tools Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 82
  • 83. AXMEDIS Content Processing GRID O GRID per il Content Processing  Discovery di risorse, nodi Valutazione dello stato e delle pontenzialita dei nodi  Creazione di regole, processi Un solo processo per nodo  Esecuzione di regole/processi, attivano anche processi locali scritti non in forma di regole On demand, periodiche, collegate, asincrone  Allocazione ed ottimizzazione dei processi  Comunicazione con il gestore ma anche fra nodi N to N N to S, per monitor e/o invocazione di regole/processi  Tracciamento e controllo dei processi  Workflow, gestione di alto livello, integratione macchina Users Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 83
  • 84. Snapshots of the GRID at work Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 84
  • 85. AXCP processing capabilities O Automating access to databases and comm. channels O Automating Content Profiling:  device and user profile processing O Automating Content Protection:  MPEG-21 IPMP, OMA, etc. O Automating Content license production and processing:  MPEG-21 REL, OMA ODRL, etc. O Automating Content Production/Processing  Metadata, integration and extraction  Content Processing: adaptation, transcoding, filtering, analysis, recognition, etc..  Content Composition and Formatting (SMIL, XSLT)  Packaging: MPEG-21, OMA, ZIP, MXF  Using protected content and DRM support, content processing is performed in secure manner even on the GRID nodes according to the DRM rules/licenses Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 85
  • 86. AXCP processing capabilities O Processing functionalities:  Gathering content  Production of new objects: composition, etc.  Formatting: SMIL, XSLT, etc.  Synchronization of media, etc.  Content adaptation, transcoding, …..….  Reasoning on device capabilities and user preferences, (user, device, network, context)  Production of licenses, MPEG-21 REL, OMA  Verification of Licenses against them and PAR  Metadata and metadata mapping: Dublin Core, XML  Extraction of descriptors and fingerprints …MPEG-7  Protocols: IMAP, POP, Z39.50, WebDav, HTTP, FTP, WS, etc.  Controlling P2P networks  .... O Any type of resource in any format  Multimedia: MPEG21, IMS, SCORM, etc.  DB: ODBC, JDBC, DB2, Oracle, MS-SQL, MySQL, XML databases, etc.  Licensing systems: MPEG-21, OMA  File Formats: any video, audio, image, xml, smil, html, ccs, xslt, etc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 86
  • 87. AXMEDIS Content Processing GRID AXMEDIS Rule Editor AXMEDIS Scheduler Workflow manager Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 87
  • 88. AXMEDIS Content Processing Area: AXCP Rule Editor O It is an IDE tool for: O Creating and editing AXCP Rules O Defining parameters and required AXMEDIS Plugins O Editing, checking and debugging JS code O Activating AXCP Rules into the AXCP Rule Engine Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 88
  • 89. Rule Editor Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 89
  • 90. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 90
  • 91. Rule Editor O The Rule Editor allows  Writing AXCP Scripts in Java Script with the above capabilities Calling libraries in javascripts Calling plug in functions in C++, and other languages  Defining AXCP scripts metadata: Manifesto components Scheduling details Capabilites Information, etc.  Debug scripts: defining break points, run/stop/execute step by step, Monitoring variables, etc.  Putting in execution java scripts Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 91
  • 92. AXMEDIS Content Processing Area: AXCP Rule O AXCP Rules include metadata for heading information (Header) and firing (Schedule) O AXCP Rules contain algorithms for composition, formatting, adaptation, transcoding, extraction of fingerprint and descriptors, protection, license manipulation, potential available rights manipulation, resource manipulation, load and save from databases and file system, content migration etc. (Definition) O Algorithms are written by using JavaScript programming language O JS was extended  with data types derived from AXMEDIS Framework, MPEG21, and general resource definition such as: images, documents, video, licenses, etc.  to use different functionalities for content processing by means the AXMEDIS Plugin technology (adaptation, fingerprint, etc…) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 92
  • 93. Regole AXCP, formalizzazione XML Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 93
  • 94. AXCP visual designer O Fast and simple Visual Programming of AXCP GRID processes O Composing Blocks as JS modules to create AXCP rules O Composing AXCP Rules to create sequences of actions to be scheduled according to their dependencies Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 94
  • 95. Visual Designer O Visual language for GRID programming  RuleBlock::= {JSBlock} | <defined in JS as JS rule>  JSBlock::= <defined in JS as JSBlock> O ManRuleBlock as specific manager for its child processing rules. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 95
  • 96. Rule Scheduler Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 96
  • 97. Rule Scheduler O AXCP Rule Scheduler performs:  executors discovering, monitoring (rule analysis)  Rules transfering and installation, allocation of Scripts on Nodes on the basis of capabilties and rule needs  Recover from the nodes the node information about their capabilities: CPU clock, cpu exploitation profile Space on the disk Communication throughput with databases Libraries accessible with their version  Monitoring GRID nodes, via messages of errors  Controlling (stop, pause, kill, etc.) GRID nodes  Logs generation and collecting data Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 97
  • 98. GRID Node Profile Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 98
  • 99. Log Properties Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 99
  • 100. Esempio di esecuzione var sb = new AXSearchbox(); sb.Host = "liuto.dsi.unifi.it"; sb.Port = "2200"; sb.Username = "admin"; sb.Password = "password"; var qs = new QuerySpec(); var a = new Array(1); a[0] = 1; qs.Archives = a; qs.Parser = QueryParser.ALGPARSER; qs.Info = QueryInfo.INFO_CONTEXT; qs.View = QueryView.VIEW_PUBLISHED; qs.Sort = QuerySort.SORT_STANDARD; qs.QueryString = key; qs.FirstDoc = 0; qs.LastDoc = 10; var qr = new Array(); var maxres = sb.Query(qs, qr); var i, j; for(i = 0; i < qr.length; ++i) { var doc = sb.GetDocument(qr[i].ID); var meta = sb.GetDocumentMetadata(qr[i].ID); print("-> "+doc.MimeType+" ["+doc.Size+"]"+"n") for(j = 0; j < meta.length; ++j) { var m = meta[j]; print("--> "+meta[j].Key+ "["+meta[j].Slice+"]="+meta[j].Value+"n"); } } Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 100
  • 101. AXMEDIS CP GRID, technical view WS for Control and Reporting (Workflow) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 101
  • 102. Realizzazione: Rule Engine • Eng. Cmd & Rep.: interfaccia remota verso il workflow manager • Scheduler Cmd Manager: interfaccia dello scheduler • Internal Scheduler: schedulazione dei Scheduler job, supervisione del dispatcher • Dispatcher: gestore delle risorse remote, della comunicazione e dell’associazione job-esecutore • Grid Peer Interface: modulo per la gestione della comunicazione Esecutore remoto remota • Rule Executor: modulo per l’esecuzione dello script Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 102
  • 103. Internal Scheduler O permette la scelta dei job da mandare in esecuzione e l’aggiornamento della periodicità, il controllo sulla scadenza, il controllo e l’aggiornamento delle liste dei job e degli esecutori Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 103
  • 104. Dispatcher •riunisce le funzionalità di associazione, lancio e controllo:  Resource Controller: controllo dello stato degli esecutori e la richiesta del loro profilo  Optimizer: associazione degli esecutori con i job da mandare in esecuzione in funzione del profilo e politica FCFS  Rule Launcher: invio di comandi e del file del job agli esecutori remoti  Rule Monitor: controllo sulle notifiche inviate dagli esecutori e dai job in esecuzione Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 104
  • 105. Evolution of Rule’s State FAILUR SUSPE If deadline OR time E NDED Rule Scheduler::Failure If error Editor::Disable Scheduler::Failure AXWF::Disable Rule Editor::Enable Scheduler::Resume AXWF:: Enable Scheduler::Suspend If executor!=NULL Rule Editor::Enable Scheduler::Failure AXWF:: Enable Scheduler::Launch Scheduler::Run INACT ACTI LAUNC RUNNI IVE VE HING NG Rule Editor::Disable AXWF::Disable Scheduler::Resume If executor!=’Available’ Scheduler::Delay If executor==’Available’ DELAY Scheduler::Run Scheduler::Pause ED If Periodic If Not Periodic Scheduler::Refresh Scheduler:: Disable PAUSE COMPLE TE Scheduler::End Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 105
  • 106. Scheduler GUI Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 106
  • 107. Scheduler Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 107
  • 108. Ottimizzazione della Pianificazione Allocazione dei processi sui nodi O Valutazione del profilo dei Nodi  Capabilities dei nodi  Potenza computazionale  Network Capabilities O Valutazione delle necessità delle regole/processi  Componenti necessari, funzioni necessarie  Scadenza temporale, deadline  Architettura per la sua esecuzione se multi nodo O Scelta della soluzione ottima:  Bilanciamento del carico  Soddisfazione dei vincoli O Algoritmi di allocazione  Deadline monotonic  Taboo Search  Genetic Algorithms Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 108
  • 109. Pianificazione dei processi Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 109
  • 110. Gantt Diagrams (OPTAMS, TS) Schedule cumulative for phase before the optimization Schedule cumulative for phase after the optimization Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 110
  • 111. Condor JobMonitor Screenshot Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 111
  • 112. Esempio di ottimizzazione 125 task, 2CAD, 2CAM, 4ADP, 6MM, 2MEMA Ottimizzazione: 24.6% 5/18/2012 (C) Paolo Nesi-1995-2000 112
  • 113. Sfruttamento della CPU nei nodi Q In Nero la % di CPU sfruttata da processi utente Q In Rosso la % di CPU sfruttata dal processo del GRID Q Politiche Q Stare strettamente sotto/allo X% Q Accettare che si possa andare sotto, ma stare all’X% come valore medio Q Sfruttare al massimo la CPU quando l’utente non e’ presente Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 113
  • 114. Planning and Exploiting Node capabilities CPU exploitation controll with an adaptive threshold 120 100 80 60 40 20 0 1 12 23 34 45 56 67 78 89 100 111 122 133 144 155 166 177 188 199 210 Average on 10 values of CPU workload Threshold Global CPU Workload GRID node CPU usage O GRID node has a profile describing its capabilities: time profile, memory, HD, communication, tools and plug ins, etc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 114
  • 115. AXMEDIS CP GRID, technical view WS for Control and Reporting (Workflow) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 115
  • 116. Realizzazione: Grid Peer Interface e Grid Peer O La Grid Peer Interface rende il sistema indipendente dal tipo di strato di comunicazione utilizzato O Permette l’invio e la ricezione di messaggi di testo O Permette l’invio e la ricezione di file O Permette la scoperta degli esecutori e connessione O E’ configurabile file configurazione Messaggi di testo scoperta Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 116
  • 117. GRID Interface Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 117
  • 118. AXCP GRID NODE EXECUTOR MANAGER GRID PEER INTERFACE GRID PEER LAUNCHER SCRIPT MANAGER SCRIPT EXECUTOR JS ENGINE (API Functions) JS_AXOM JS_ Funtions JS_ JS_ JS_ JS_ JS_ JS_ PAR from AXOM Selection Protection Functions … Resource DRM Content Types Processing AXOM AXOM Content Selection Protection Functions … Resource DRM PAR Processing Types AXMEDIS Rule Executor Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 118
  • 119. Scheduler Command Manager e Graphic User Interface O Lo Scheduler Command Manager è un’interfaccia User Workflow Manager che rende indipendente lo scheduler dal tipo di interfaccia utente (grafica o Engine Commands Scheduler GUI di comunicazione remota) and Reporting usata O L’interfaccia grafica Scheduler Command Manager permette un accesso rapido alle funzionalità dell’applicazione Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 119
  • 120. Gestione Gerarchica di microGRID O Ogni Scheduler identifica un microGRID O Da ogni nodo del GRID e’ possibile inviare richieste ad altri Scheduler e pertanto ad altri microGRID  Le richieste vengono inviate tramite chiamate a Web Services O Si viene a greare una gerarchia di grid e di nodi in tali grid O I singoli MicroGRID possono essere distirbuiti anche geograficamente, si veine a creare un vero e proprio GRID geografico O I nodi foglia possono inviare richieste allo scheduler radice, etc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 120
  • 121. GRID Gerarchico Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 121
  • 122. Dipendenze Q Punti di sync ? Q Per la comunicazione ? Q Consumo di risultati ? Q Attese ? Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 122
  • 123. Pianificazione e Ripianificazione Nell’ottica del controllo della QoS O Sul microGRID come sul GRID viene effettuata una pianificazione dei processi allocandoli sulle risorse (CPU) (righe blu nella prossima slide)  Nella pianificazione si devono tenere conto di vari vincoli come: deadline, dipendenze, requisiti computaizone, requisiti in termini di librerie e programmi, memoria, CPU, etc. O Questa allocazione non e’detto che si verifichi  Alcuni processi possono essere eseguiti piu’ velocemente, altri piu’ lentamente, riespetto ai tempi previsti, etc. (processi rossi nella prossima slide) O Ogni tanto e’necessario fare una ripianificazione e correzione della situazione (processi verdi nella prossima slide). Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 123
  • 124. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 124
  • 125. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 125
  • 126. Aspetti e caratteristiche di alto livello O Portabilita’:  Su diversi OS e piattaforme  Come java script O modularita’:  Si possono aggiungere facilmente nuove funzionalita’ O Riusabilita’:  Si possono aggiungere facilmente nuove funzionalita’  Gli script sono parametrizzati O Expandibilita’:  Si possono aggiungere facilmente nuove funzionalita’ O Flessibilita’:  Si possono aggiungere facilmente nuove funzionalita’ Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 126
  • 127. GRID comparison 1 axmedis Condor Globus Legion Unicore Description Content Network batch and Bag of Grid MetaSystem object Vertical Grid processing resource manager Technologie based system GRID for media s Category Small Scale Small Scale Grid MiddleWare MiddleWare MiddleWare Resource Manager Central machine Central machine GRAM Collector, Scheduler, Incarnation Manager Manager Enactor DataBase on Vsite Resouce Discovery manifesto ClassAds MDS (handles limited Target System resource Interface (TSI) informations) Communication WS Remote System Call Nexus, Globus Asynchronous message- Asynchronous I/O passing system, LOIDs Transaction Fault Tolerance none Checkpoint & Heart Beat Checkpoint via libraries Failure Flag Migration Monitor (HBM) Security DRM GSI (X.509) GSI (X.509) Public-key cryptography SSL Kerberos SSL (Secure based on RSAREF 2.0 X.509 (User/Ip based) Sockets Three message-layer UIDs Layer) security modes MayI (classes security) Architecture hierarchical Universes structured “Hourglass” Everything is an object… “Three-tier architecture model” Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 127
  • 128. GRID comparison 2 AXMEDIS Condor Globus Legion Unicore OGSA NO No yes no yes Compliant Parallelism Yes, not internal No yes yes - Parameters Yes No yes yes - Studies Necessary No, + Extended JS Re-link with Condor Re-link with Directive embedded in - changes to libraries Globus Fortran Code; use of libraries, MPL to parallelize C++ user’s source changes to application; interface for code support PVM and MPI application parallelism Platform Windows XP, and MacOS Server: Solaris 5.x Server: server Linux RedHat 7.x, 8.0, Linux IRIX 5.x, 6.5 Unix 9 Client: Linux RedHat 5.x Linux Solaris 2.6, 2.7, 8, 9 Linux AIX 4.2.1, 4.3 Client: IRIX 6.5 Any platform Hp-Unix 11.x Any platform that Hp-Unix. that supports Cray Unicos (as a virtual support Java Windows NT4, 2000, JDK host only) (J2RE) 1.4 o Xp superiori (con funzionalità ridotte) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 128
  • 129. GRID comparison 3 AXMEDIS Condor Globus Legion Unicore Languag Any language is viable, JS Application: Application Application: Application: is the glue to put in C : C++ Java es execution C++ C MPL (an extension of C++) Middleware: Java Java Fortran Java 2.0 Require Windows On Windows: - 250-300 MB of free disk space - at least 50 MBytes of at least 256 MB virtual memory ments free disk space /bin/ksh installed NTFS or FAT Licence Source code available Source code available on (Open Binaries packages only Open source mail request source) Links www.axmedis.org www.cs.wisc.edu/condor www.globu www.legion.virginia.edu www.unicorepro. (necessary state name, s.org (Legion RSA libraries are com e-mail and organization) available separately; from 1/1/03 contact Avaki.com for all inquiries about Legion) Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 129
  • 130. Micro GRID for scalable media comput. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 130
  • 131. Multimedia GRIDs for the future applications Comparison (IEEE Multimedia March 2009) Content Content Media Interactive Parallel management analysis streaming controls processing Access Grid Y Y Y GridCast Y Y Y mmGrid Y Y Y gMOD Y Y Y MediaGrid Y Y Y Y AE@SG Y Parallel-Horus Y Y Y Context Aware Y Y Y Y MM Middleware AXMEDIS Y Y Y Y Y Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 131
  • 132. Comparison: Micro GRID for media IEEE Multimedia 2012 MediaGrid.or MediaGrid MediaGrid AXMEDIS MMGRID Omneon GridCast g Content Management: storage, UGC, .. X (x) (x) X X Content computing/processing: adaptation,  X (x) (x) (x) X processing conversion, cross media content  packaging,   .. Content Delivery Network Management X X X X X Metadata enrichment and reasoning X Content Protection Management (CAS/DRM) X Content Indexing and Querying, knowledge base X X X Semantic Computing Reasoning on user profiling,  X content descriptors, recommendations User Interaction Support, rendering, collaboration X X X Client player as grid nodes for intelligent content X Global and/or Local grid L/(G) G G G G/L L Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 132
  • 133. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 133
  • 134. Grid Project References O Open Science Grid O AXMEDIS  www.axmedis.org  www.opensciencegrid.org O CHEPREO O Grid3  www.chepreo.org  www.ivdgl.org/grid3 O UltraLight O Virtual Data Toolkit  www.ultralight.org  www.griphyn.org/vdt O Globus  www.globus.org O GriPhyN O Condor  www.griphyn.org  www.cs.wisc.edu/condor O iVDGL O WLCG  www.ivdgl.org  www.cern.ch/lcg O EGEE O PPDG  www.eu-egee.org  www.ppdg.net Q From AXMEDIS you can download the installable tool to set up your GRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 134
  • 135. sommario O Contesto tecnologico O Architetture Parallele O The GRID, definizione e motivazioni O Concetti estesi dei GRID, microgrid O Applicazioni e problemi dei GRID O Soluzioni GRID...Globus, Condor O Soluzioni MicroGRID: AXCP grid O Confronto fra GRID O Applicazioni per microGRID Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 135
  • 136. Key Issue: dynamic and real time O Devices and content formats are not static  Emerging devices and formats  Dynamic market in terms of possibilities and content types and formats  Players with support for numerous content types and formats  Players accessible on different devices.. Interoperability O Back office computing for  Content Management Systems, Media Management Systems and Social Networks, Content Delivering Network, etc...  reccomendations, suggestion, indexing, etc.  Similarity distance, ....  Crawling di dati e contenuti  Content processing Content composition and formatting Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 136
  • 137. Applicazioni AXMEDIS GRID, AXCP O On-demand distribution:  Production on the basis of requests and profiling (user device, network, etc.), etc.  Request depending adaptation and processing O Multi-channel distribution  Differing receiving devices, Differing distribution modalities  Multiple interoperable DRMs, license chain processing O Profile management and processing  user profile, network capabilites, device capability  deciding about content production and adapation  activites have to be done in real time for VOD,  production on demand, etc. Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 137
  • 138. Applicazioni AXCP GRID come piattaforma O Monitoring:  Broadcast channels and networks,  Peer-To-Peer networks, Websites, etc.  streams of audio and/or video signals  Real time estimation of Fingerprint/watermark Canali internet gateway, P2P, Broadcast O query and indexing on distributed databases  decomposizione dello spazio di ricerca O Definition of fault tolerant architectures for data and/or processing GRID  Distributed computing and database Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 138
  • 139. Distribution Production & Front end Distribution back-office AXMEDIS P License Server Mobile AX_RuleG(..) L Dir=ProfileProcessing(UID,DP,NP) AX Dist. distribution, A=GetContent(db); B.MP21_Package(A); Service Content Pinfo=MP21_RandDefinePinfo(); Acquisition OMA and B.MP21_Protection(Pinfo); C.ObjPublishing(Portal1); & usage OMA MPEG-21 B.Adaptation(A, Dir); OPinfo=OMA_RandDefinePinfo(); Content E.OMA_DRMPackager(B, OPinfo); Issuer E.OMA_ObjPublishing(Portal2); Rights server L P AXCP GRID Scheduler Promotion Content Portal Selection AX_RuleL(..) [UID,OID, D=ProfileProcessing(UID,DP) DID, Const] L.LicenseSet(UID,OID, DID, Const); L.RelProduction(); L.RelPosting(ls1); Selling Portal M.Rel_to_OMAdrmConversion(L, D); M.ODRLPosting(ls2); Regist. Rights Portal acquisition x exploitation Collection of Actions Logs Records Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 139
  • 140. Controlled P2P Network AXMEDIS Content Processing Engines and Scheduler GRIDs Sistemi Distribuiti, Univ. Firenze, Paolo Nesi 2011-2012 140