Hadoop Ecosystem. Richiamo concetti precedenti

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Hadoop Ecosystem. Richiamo concetti precedenti"

Transcript

1 Hadoop Ecosystem

2 Hadoop Ecosystem Richiamo concetti precedenti

3 Hadoop Ecosystem The Four V

4 Hadoop Ecosystem HDFS: a distributed filesystem

5 Hadoop Ecosystem MapReduce: a dataflow programming framework

6 Hadoop Ecosystem MapReduce: a simplified data processing language

7 Hadoop Ecosystem Hadoop Scripting Pig

8 Hadoop Ecosystem NoSQL

9 Hadoop Ecosystem Dunque... sappiamo cosa si intende per BigData; sappiamo dove memorizzare questi dati; sappiamo come elaborarli in modalità batch con MapReduce; possiamo usare linguaggi di scripting come Pig e Hive, che ci tengono al riparo dalla complessità del MapReduce; sappiamo anche come memorizzare i risultati di queste elaborazioni su sistemi NoSQL che ci garantiscono una elevata scalabilità orizzontale nell'accesso ai dati; Ma... come raccogliamo i dati? come li trasferiamo su HDFS? come creiamo un dataflow?

10 Hadoop Ecosystem Data Acquisition

11 Data Acquisition Sorgenti distribuite ed eterogenee external data services LAN WAN BigData System

12 Data Acquisition Producer-Consumer Pattern Le sorgenti di dati di BigData System sono variegate, distribuite e tipicamente non sono sotto il controllo degli sviluppatori. Tuttavia, essendo l'approvvigionamento dei dati un problema comune, è naturale che nell'ecosistema Hadoop si siano sviluppate delle tecnologie che facilitano l'acquisizione e l'accentramento di dati provenienti da sorgenti esterne. E poiché la maggior parte di esse si basa sul modello produttore-consumatore è utile introdurre il modello generale in modo da poterci poi concentrare solo sugli aspetti particolari che caratterizzano ciascuna tecnologia.

13 Data Acquisition Producer-Consumer Pattern Il modello produttore-consumatore è nato per risolvere un problema di sincronizzazione tra processi : un processo che produce dei dati un processo che elabora quei dati producer Channel consumer Tipicamente questi processi sono implementati come dei loop e, altrettanto tipicamente, la velocità con cui i dati sono prodotti è diversa da quella con cui vengono elaborati. Questo impone un qualche meccanismo di sincronizzazione.

14 Data Acquisition Producer-Consumer Pattern La strategia generale è quella di implementare il Channel come una coda in cui i dati prodotti dal Produttore possono essere accumulati in attesa che il Consumatore li elabori. La coda ha, per definizione, una capacità limitata per cui : se il problema che si sta trattando consente di interrompere la generazione dei dati, quando la coda è piena il produttore può fermarsi ed attendere che il consumatore svuoti la coda; se questo non è possibile (ad esempio perché produttore e consumatore sono due applicazioni indipendenti che nulla sanno l'uno dell'altro) allora in caso di coda piena i nuovi dati verranno scartati fino a che non si libererà dello spazio nella coda.

15 Data Acquisition Producer-Consumer Pattern Effettuare un opportuno dimensionamento della coda diventa un passo fondamentale per ridurre al minimo la probabilità che parte dei dati vada perduta. Una generalizzazione del modello prevede la presenza di più produttori che immettono dati su una coda e di più consumatori che elaborano i dati presenti nella coda. Si possono avere così casi in cui ogni messaggio viene elaborato da un solo consumatore, e dunque più consumatori collaborano per evitare che la coda saturi ogni messaggio viene elaborato da tutti i consumatori, creando in tal modo una biforcazione nella pipeline (o nel dataflow)

16 Data Acquisition Producer-Consumer Pattern Questo secondo caso pone però nuovi problemi, ad esempio come garantisco che il messaggio venga rimosso dalla coda solo dopo esser stato correttamente elaborato da tutti i consumatori? I vari tool che vedremo implementano strategie diverse per cercare di rispondere in maniera efficace a queste ed altre problematiche.

17 Data Acqusition Flume

18 Data Acquisition Data are business L'idea alla base del mondo BigData è che i dati sono una ricchezza tutti i dati sono una ricchezza dunque essere in grado di raccogliere, collezionare ed elaborare dati dei tipi più svariati e in qualunque quantità significa avere la possibilità di creare molti nuovi business.

19 Data Acquisition Gestione Manuale Dovendo gestire manualmente l'acquisizione e l'accentramento dei dati, si dovrebbero realizzare degli script o dei servizi dedicati da installare nelle diverse macchine da monitorare. Questo approccio presenta diversi problemi: manutenzione onerosa, in quanto gli script o i servizi andrebbero scritti e modificati di volta in volta ed adattati continuamente ad ogni modifica sulla macchina; difficoltà nella gestione monitoraggio dell'esecuzione compressione dei dati uniformità nel formato dei dati prodotti probabilità di avere delay elevati onere e complessità della scalabilità completamente a nostro carico Flume nasce per risolvere questi problemi.

20 Flume Architettura L'architettura di Flume si basa sul concetto di Agent che, come si può vedere dall'illustrazione, è un'implementazione del modello produttore consumatore. WEB Client Riceve EVENTI FLUME AGENT SOURCE SINK Inoltra EVENTI CHANNEL Nelle prossime slide illustreremo i concetti fondamentali dell'architettura. Destinazione, es HDFS

21 Flume Eventi In Flume Event un evento è un dato prodotto da una sorgente esterna ed inoltrato alla destinazione finale WEB Client materialmente è un bytearray composto da un header e un payload Riceve EVENTI FLUME AGENT SOURCE SINK Inoltra EVENTI CHANNEL Destinazione, es HDFS Il dato esterno viene inserito nel payload e rimane opaco per Flume. Tutte le informazioni necessaria alla gestione ed elaborazione degli eventi vengono accumulate nell'header sotto forma di coppie chiave-valore. EVENT HEADER PAYLOAD Map< String, String> byte[]

22 Flume Client Client Un Client è FLUME AGENT Riceve EVENTI un'entità che raccoglie i dati, li incapsula in eventi SOURCE SINK Inoltra EVENTI CHANNEL e li invia ad uno o più Agenti Destinazione, es HDFS Può essere un processo indipendente che colleziona dati prodotti da applicazioni esterne secondo formati standard (es. Apache, Log4j,...) oppure, qualora non sia possibile usare uno dei client disponibili, può essere sviluppato ad hoc o integrato in una propria applicazione. Flume espone un interfaccia RPC basata su Apache Thrift per cui il client può esser scritto nella maggior parte dei linguaggi di programmazione.

23 Flume Agent L'Agent è il cuore di Flume, e si occupa di WEB Client ricevere gli eventi generati da un client esterno, Riceve EVENTI FLUME AGENT SOURCE SINK Inoltra EVENTI CHANNEL accumularli in una coda interna, e inviarli ad una o più destinazioni finali Destinazione, es HDFS I componenti fondamentali di un Agent sono tre il source (produttore) il channel (coda) il sink (consumatore) Tuttavia il concetto di Agent è un modello teorico, per cui un singolo processo che opera come Agent può gestire più source, più channel e più sink contemporaneamente.

24 Flume Agent Poll Riceve eventi Source Push Channel Sink Inoltra eventi Read Agent Per ragioni di ottimizzazione il Source ha una coda interna in cui raccoglie gli eventi prima di inviarli al canale in gruppi di dimensioni prefissate (configurabili). Il Canale è un componente passivo che si limita a conservare quanto ricevuto dal Source inviare quanto richiesto dal Sink Il Sink invia delle richieste periodiche al Channel e quando ci sono sufficienti dati disponibili richiede un blocco di eventi di dimensioni prefissate (configurabili) che poi inoltra ad una destinazione remota.

25 Flume Agent : Source Il Source è il componente interno all'agent che si occupa di ricevere gli eventi esterni Poll Riceve eventi Source Push Channel e memorizzarli in uno o più canali. Sink Inoltra eventi Read Agent Un Source deve essere collegato ad almeno un canale. Esistono tre tipologie principali di Source standard : ricevono gli eventi dall'esterno via HTTP o RPC (Avro, Thrift) exec: eseguono un comando via shell che genera i dati sullo STDOUT monitor: monitora una cartella locale e ogni qual volta viene aggiunto un file genera un evento che contiene il file stesso

26 Flume Agent : Source - Internals All'interno di un Source troviamo tre componenti: Poll Riceve eventi Source Push Channel Sink Inoltra eventi Read Agent un Channel Processor che coordina tutte le attività interne di elaborazione degli SOURCE Channel Processor Interceptor 1 eventi; un insieme di Interceptor che operano come dei filtri ed aggiungono dei tag Interceptor 3 Interceptor 2 Interceptor N Channel Selector all'header dell'evento per caratterizzane il contenuto; esistono degli interceptor predefiniti (che aggiungono ad esempio un timestamp, l'hostname, e simili) ma è anche possibile di definirne dei propri che aggiungono tag in base al contenuto del payload

27 Flume Agent : Source - Internals un Channel Selector che in base ai dati contenuti nell'header identifica i canali su Poll Riceve eventi Source Push Channel Sink Read cui andrà inoltrato l'evento. Agent SOURCE Channel Processor Interceptor 1 Interceptor 3 Interceptor 2 Interceptor N Channel Selector Inoltra eventi

28 Flume Agent : Source Event Lifecycle

29 Flume Agent : Channel Il Channel è un componente passivo che opera come buffer tra il Source e il Sink. Poll Riceve eventi Source Push Channel Sink Inoltra eventi Read Agent un Channel può ricevere dati da più Source e può fornire dati a più Sink esistono tre principali tipologie di Channel che si differenziano per il modello di persistenza: MemoryChannel (volatile): conserva i dati in RAM col rischio che vadano perduti in cado di riavvio del processo; FileChannel (durable): conserva i dati su file JDBCChannel (durable): conserva i dati su una tabella di un DB I Channel sono transazionali ovvero garantiscono che tutto ciò che viene scritto dal Source venga poi letto dal Sink

30 Flume Agent : Channel - Transactions Il Channel non è fully transactional, ma solo le operazioni di scrittura e lettura (singolarmente) Poll Riceve eventi Source Push Channel sono racchiuse in una transazione. Sink Inoltra eventi Read Agent A: garanzia di scrittura dei dati del Source una singola transazione può scrivere più di un evento se la transazione fallisce tutti gli eventi della transazione vengono riscritti sul channel La ripetizione della transazione può portare alla creazione di duplicati sul canale. Flume non gestisce la rimozione di eventi duplicati, sarà dunque cura dell'utilizzatore finale rimuoverli. E' quindi prassi comune inserire nell'header, attraverso un custom interceptor, un ID che identifichi univocamente ogni evento.

31 Flume Agent : Channel - Transactions Il Channel non è fully transactional, ma solo le operazioni di scrittura e lettura (singolarmente) Poll Riceve eventi Source Push Channel sono racchiuse in una transazione. Sink Inoltra eventi Read Agent B: garanzia di lettura dei dati da parte del Sink la transazione garantisce che ogni evento venga letto dal Sink e scritto sulla destinazione esterna La transazione si considera completata con successo solo dopo aver ricevuto la conferma che la scrittura sulla destinazione esterna sia avvenuta con successo. In questo modo si ha la garanzia che nessun dato venga perso nella pipeline gestita da Flume stesso.

32 Flume Agent : Sink Il Sink recupera gli eventi conservati sul Channel e li inoltra verso una destinazione esterna Poll Riceve eventi Source Push Channel Sink Inoltra eventi Read Agent esistono Sink predefiniti per una gran varietà di destinazioni differenti HDFS, Hbase, Solr, ElasticSearch File, Logger Flume Agent (Avro, Thrift) è possibile creare dei Sink Personalizzati implementando l'interfaccia CustomSink Il SinkProcessor decide, in base al contenuto dell'header, se un particolare evento debba esser inoltrato o meno su una certa destinazione esterna.

33 Flume Agent Pipelines E' possibile costruire delle pipelines di Agent facendo si che un Sink invii gli eventi ad un altro Agent SOURCE SOURCE SINK SINK Channel Channel Qualora si debbano trasferire grandi quantità di eventi attraverso network differenti (ad esempio attraverso una WAN con banda limitata e latenza elevata) è possibile creare delle pipeline per avere diversi livelli di aggregazione ed avere maggiore flessibilità nella configurazione del sistema.

34 Flume Agent Pipelines E' importante dimensionare correttamente la capacità del Channel SOURCE SOURCE SINK SINK Channel Channel Un eccessivo ritardo nella scrittura sulla destinazione finale porterebbe alla saturazione del canale più a valle nella Pipeline. A cascata questo si ripercuoterebbe nel tier precedente della pipeline ma consentirebbe di ridurre il rischio di perdita di dati. Non appena la scrittura sulla destinazione finale riprende entrambe le code iniziano nuovamente a svuotarsi.

35 Flume Complex Flows

36 Flume Complex Flows

37 Flume Complex Flows

38 Flume Complex Flows Realizzare un flusso di dati convergente verso la destinazione. Tier-1 Tier-2 Tier-3 Il traffico dei dati viene aggregato da Tier-2 e Tier-3 prima di inserirlo nella detinazione; Più un Tier è vicino alla destinazione e maggiore è la dimensione dei dati in ogni operazione batch.

39 Messaging System Kafka

40 Kafka A high throughput distributed messaging system Kafka, come Flume, si basa sul modello produttore-consumatore e per tale ragione ha un'architettura generale simile. Tuttavia il suo posizionamento in un BigData System è leggermente diverso ed infatti gli stessi sviluppatori non lo definiscono come un sistema per l'acquisizione dei dati ma un sistema distribuito per la gestione dei messaggi ad altissime prestazioni. Infatti l'obiettivo principale di Flume è quello di raccogliere dati da macchine remote, aggregarli e memorizzarli in maniera persistente (e indipendente..quasi batch) sul cluster per future elaborazioni. Kafka si propone invece come sistema per lo scambio in real-time di messaggi (e dati sotto forma di messaggi) tra applicazioni distribuite sul cluster.

41 Kafka Requirements L'obiettivo degli sviluppatori di Kafka era quello di costruire una piattaforma unificata per la gestione di tutti i flussi di dati e di messaggi di una grande azienda. Questo richiedeva il soddisfacimento di alcuni requisiti fondamentali: avere la capacità di gestire velocemente ed in maniera affidabile un elevatissimo numero di eventi organizzati in stream differenti; avere la capacità di gestire archivi di grandi dimensioni in modo da poter consentire anche l'import periodico di grandi archivi provenienti da sistemi offline o batch; garantire la possibilità di elaborazione in real-time degli eventi e la produzione di nuovi stream di eventi; avere un'intrinseco supporto alla fault-tolerance in modo da garantire il funzionamento anche in caso di guasto su qualunque macchina del cluster

42 Kafka Architettura Come risultato di quei requisiti un cluster Kafka è un sistema distribuito per la gestione ottimizzata di un elevato numero di catene produttore consumatore: ogni catena rappresenta uno stream di messaggi e viene detto Topic (o feed); ogni Topic è gestito da un certo numero di macchine del cluster (broker) e può avere associati un numero arbitrario di Producer e Consumer.

43 Kafka Topic L'elemento fondamentale in Kafka è il Topic e rappresenta un flusso (stream) di messaggi; può anche esser visto come un argomento che caratterizza un insieme di messaggi. Tutti i messaggi pubblicati su un Topic sono salvati su un file detto log-file. Per aumentare le performance del sistema ogni Topic può essere suddiviso in diverse partizioni ed ogni partizione costituisce una sequenza ordinata ed immutabile di messaggi. Un messaggio può essere inserito in una sola partizione e riceve un ID numerico (offset) che lo identifica univocamente nella partizione.

44 Kafka Topic Le partizioni sono il meccanismo con cui Kafka costruisce la scalabilità: ad ogni partizione viene associato un file tutti i messaggi di una partizione devono essere contenuti su una singola macchina dati di partizioni diverse possono stare su macchine diverse In questo modo un singolo log-file può essere suddiviso in più file fisici e distribuito nel cluster e, teoricamente, può raggiungere dimensioni arbitrarie. Inoltre ad ogni Topic è associato un replication-factor, che impone che i dati di una partizione siano replicati su più macchine distinte in modo da garantire che il sistema continui a funzionare anche in caso di guasto su una macchina

45 Kafka Topic Ad ogni partizione è associato un nodo, detto leader, che si occupa di gestire tutte le interazioni (letture e scritture) con la partizione stessa. In caso di replica-factor>1 alla partizione sono associati anche N-1 nodi follower che si occupano di replicare sugli altri nodi quanto avviene sul nodo leader. I nodi follower si comportano come qualunque altro consumer associato alla partizione e hanno il compito di mantenere una replica aggiornata del log della partizione in modo da poter sostituire il leader in caso di guasto. Tuttavia non è possibile interagire direttamente con essi. Ogni leader conserva un elenco aggiornato dei follower che sono in sync, ovvero che sono attivi e riescono a restare al passo con quanto accade sul nodo leader. Solo un follower che sia in sync può prendere il posto del leader.

46 Kafka Topic e performance In Kafka ogni messaggio viene scritto su file non appena ricevuto. Questa scelta sorprendente è in realtà la chiave delle prestazioni di Kafka. Infatti non avendo una cache in RAM dei messaggi si occupa meno RAM, lasciandone di più a disposizione degli altri processi e del Sistema Operativo; si riduce il peso della Java Virtual Machine e del Garbage Collector; si delega al file system del Sistema Operativo sottostante l'onere di gestire il caching verso il disco, che essendo ottimizzato per questo scopo riesce a farlo con tempi prossimi a quelli di un accesso sequenziale e quindi molto elevati.

47 Kafka Produttore Un produttore è un qualunque processo che pubblica dei messaggi. E' compito del produttore indicare il Topic su cui pubblicare il messaggio; effettuare un Load Balancing per distribuire i messaggi in maniera uniforme sulle varie partizioni; il load balancing può esser fatto in maniera casuale o attraverso un hash su un campo chiave per ottenere una sorta di partizionamento semantico I messaggi vengono inviati in maniera asincrona.

48 Kafka Performance Nello sviluppo di Kafka è stata posta grande cura nell'ottimizzazione del trasferimento dei messaggi dal produttore al Topic e dal Topic al consumatore. Gli aspetti che si è cercato di gestire con maggior cura sono un accesso efficiente al disco (risolto con le scelte di persistenza legate al Topic) evitare un numero eccessivo di piccole operazioni di I/O evitare un numero eccessivo di operazioni di byte-copying

49 Kafka Small I/O minimization In un sistema di messaging è probabile che nelle operazioni tra client e server e in quelle di persistenza del server stesso si generi un elevato numero di messaggi di piccole dimensioni (scambio di messaggi ). Il rischio è quello di saturare la rete e limitare le performance generali del sistema. Per evitare questo è stato sviluppato un protocollo di comunicazione interna basato sui concetti di Invio Asincrono e Message Set. In questo modo chiunque debba inviare dei messaggi tende ad accumulare dei dati in memoria per poter inviare più messaggi con una sola richiesta (batch send).

50 Kafka Small I/O minimization Questo processo è configurabile ponendo un limite massimo alla quantità di dati da accumulare (es. 64k) ponendo un limite massimo di tempo di attesa (es. 10ms) ponendoli entrambe (in tal caso la richiesta verrà inviata al raggiungimento del primo limite) In questo modo è possibile trovare il miglior compromesso tra un po di latenza addizionale e un miglior througput.

51 Kafka Byte-Copying reduction Un altro problema tipico dei Message System è l'eccessivo numero di copie effettuate su ciascun messaggio nel passaggio da un componente all'altro del sistema. Cosa che ha un impatto ancor più rilevante su sistemi scritti in Java per via del Garbage Collector. Per ridurre questo problema in Kafka è stato definito un formato binario standard, condiviso da tutti i componenti, che ad un messaggio di attraversare l'intero sistema passando da un componente all'altro senza subire copie. La stessa cura si è posta nel trasferimento del pacchetto verso la rete, in cui è stata utilizzata una tecnica, denominata zero-copy, che garantisce che l'unica copia del pacchetto sia quella dalla RAM verso il buffer fisico della scheda di rete prima dell'invio fisico del segnale sulla rete stessa. Questo ha consentito un incremento delle performance di oltre il 60%.

52 Kafka Consumers Un consumatore che vuole leggere dei messaggi da un Topic invia un messaggio di fetch al leader di una partizione specificando la posizione di lettura (offset). In risposta riceve un gruppo ordinato di messaggi a partire da quello in posizione offset. Dunque una strategia di tipo pull. Vediamo di capire perché si è scelta questa strategia.

53 Kafka Consumers Le possibili strategie per un sistema di messaging sono due pull : i consumer richiedono i dati al broker quando è in grado di elaborarli push : il broker invia i messaggi ai consumer non appena questi sono disponibili Entrambe hanno vantaggi e svantaggi, legati principalmente alla diversa velocità con cui produttore e consumatore sono in grado di produrre/elaborare dati: pull : se la velocità di elaborazione è molto maggiore di quella di produzione si rischia di avere tanti consumer che sommergono il broker di richieste di nuovi messaggi, col rischio di saturare il broker; push: si ha il problema contrario, in caso di picchi di produzione il broker può sommergere il consumer di nuovi messaggi, saturando le sue capacità e generando una specie di Denial of Service;

54 Kafka Consumers Entrambe le strategie richiedono dunque accorgimenti particolari per poter essere implementate efficacemente. In Kafka si è optato per la strategia pull perché: consente di gestire internamente ed in maniera ottimizzata (a livello di broker) il caching e la persistenza dei messaggi, liberando il consumer da quest'onere; consente di avere un utilizzo ottimizzato della banda ed un throughput ottimale; Infatti gli accorgimenti sul protocollo per il contenimento del numero di richieste, ovvero l'uso di micro-batch le cui occorrenze sono determinate dal raggiungimento di una certa soglia di dati o dal passaggio di un certo intervallo di tempo, consentono di evitare che dei client, eventualmente scarichi, inondino i broker di messaggi di fetch.

55 Kafka Consumers - Performance Sorprendentemente uno dei fattori fondamentali per le performance di un messaging system è il modo con cui si tiene traccia della posizione di lettura di un consumatore. Tipicamente viene utilizzato un sistema di metadati che viene aggiornato ad ogni lettura in risposta ad un ACK fornito dal consumatore. Questo funziona bene con sistemi di piccole dimensioni, ma su un sistema distribuito di grosse dimensioni rischia di diventare un collo di bottiglia che limita le performance del sistema nel suo complesso. Cosa succede infatti se un ACK viene perso?

56 Kafka Consumers - Performance Il fallimento nella ricezione di un ACK comporta il rischio di elaborare più volte lo stesso messaggio: se fosse un messaggio in cui si comunica di ridurre l'importo disponibile su un conto bancario, cosa accadrebbe elaborandolo due o più volte? Per evitare situazioni simili diventerebbe necessario associare uno stato ad ogni messaggio per sapere da quali consumer è stato realmente elaborato e da quali no; generare un elevato numero di messaggi di sincronizzazione tra broker e consumer per accertarsi della posizione di lettura...con buona pace delle performance...

57 Kafka Consumers - Performance In Kafka si è quindi adottata cercato di rendere l'operazione di lettura da parte dei consumer la più leggera possibile. Come abbiamo visto un Topic è suddiviso in partizioni, ognuna delle quali contiene un insieme ordinato di messaggi. Il segreto è nell'imporre che ogni consumer possa leggere da una sola partizione. In questo modo l'unico stato necessario è la posizione di lettura di ciascun consumer, che si riduce ad un intero (l'offset) che, come abbiamo visto, deve essere gestito dal consumer stesso. Un vantaggio collaterale di questo approccio è che il consumer può decidere di tornare indietro e rielaborare un set di messaggi che ha già elaborato.

58 Kafka Semantica di Invio dei Messaggi Idealmente si vorrebbe che un messaging system garantisse che ogni messaggio sia consegnato una ed una sola volta a ciascun consumer. In un sistema distribuito questa è difficile garantire questo risultato in qualunque condizione operativa perché dipende strettamente dalle scelte fatte in termini di durabilità e modalità di consumo dei messaggi. In pratica le possibili modalità sono tre Exactly once: ogni messaggio viene consegnato una ed una sola volta At most once: si garantisce di non consegnare due volte lo stesso messaggio, anche a rischio di perderne qualcuno At least once: si garantisce di non perdere messaggi, anche a costo di consegnare due volte lo stesso messaggio

59 Kafka Semantica lato Producer La semantica di base è piuttosto semplice: un messaggio pubblicato da un producer si considera committed (salvato sul log) solo quando tutti i follower in sync lo hanno salvato un messaggio pubblicato non viene perso fintanto che almeno una replica della partizione è attiva Tuttavia non esiste un ACK per il producer, quindi in caso di network-error il producer non ha modo di sapere se il messaggio sia stato realmente pubblicato o meno. Per tale ragione è buona prassi rendere l'operazione di pubblicazione idempotente, ad esempio associando una ID univoca ad ogni messaggio in modo che una ripubblicazione si traduca in una sovrascrittura.

60 Kafka Semantica lato Producer Poiché non tutti gli use-cases hanno le stesse necessità è in fase di sviluppo un sistema che consenta al producer di specificare il livello di durabilità desiderato: attendere che il messaggio sia effettivamente committed (tutti i follower hanno completato la scrittura) attendere solo che il leader abbia completato la scrittura inviare il messaggio in maniera completamente asincrona senza preoccuparsi di quanto accade lato server.

61 Kafka Semantica lato Consumer Abbiamo visto che tutte le repliche hanno lo stesso log con gli stessi offset, e che ogni Consumer ha il controllo sulla propria posizione di lettura. In una condizione ideale, un Consumer si avvia ed inizia a leggere dal primo messaggio aggiorna l'offset procede nella lettura dei messaggi successivi Cosa succede in caso di crash del Consumer? Idealmente vorremmo che venisse automaticamente instanziato un nuovo processo e che questo riprendesse esattamente da dove l'altro si era interrotto. Come si può garantire che questo avvenga?

62 Kafka Semantica lato Consumer Sostanzialmente ci sono due strategie applicabili lato Consumer leggo un messaggio, salvo la posizione, lo elaboro in caso di crash potrei perdere dei messaggi (at most once) leggo un messaggio, lo elaboro, salvo la posizione in caso di crash potrei elaborare due volte un messaggio (at least once) Per ottenere la strategia ideale exactly once si può rendere l'elaborazione idempotente (per cui rielaborando il messaggio sostanzialmente riscrivo il risultato) oppure realizzare un sistema analogo al two-phase commit per cui segnalo di aver letto un messaggio ma non aver ancora completato la sua elaborazione.

63 Kafka Producer Performance Comparison

64 Kafka Consumer Performance Comparison

65 Hadoop Ecosystem Panoramica Tecnologie

66 Hadoop Ecosystem Ecosystem?

67 Hadoop Ecosystem Principali Categorie Cluster Management Data Collector Data Serialization KV Graph Document ColumnStore Distributed FS Frameworks Libraries Query engines

68 Hadoop Ecosystem Ecosistema o giungla Per quelle categorie di problemi in cui le tecnologie hanno raggiunto una certa maturità e stabilità si può parlare di ecosistema perché: - le tecnologie sono poche - ognuna ha una chiara funzionalità - esiste un equilibrio abbastanza stabile tra le varie tecnologie In altre categorie di problemi invece - la soluzione non è chiara - ci sono diverse tecnologie che cercano di risolvere il problema con approcci spesso molto diversi - le funzionalità ed i comportamenti sono soggetti a repentini mutamenti - molte soluzioni sono incomplete e coprono solo una porzione degli use-cases

69 Hadoop Ecosystem Come orientarsi I problemi BigData sono tipicamente di tipo Data Driven, perciò le tecnologie vengono scelte in base alle tipologie di dati da trattare ed i problemi da risolvere. Tuttavia aver selezionato le tecnologie è solo una parte della soluzione. Come organizzo le tecnologie pere farle interagire efficacemente ed avere un sistema efficiente? Per provare a rispondere a questa domanda recentemente è stato proposto un modello architetturale, denominato l-architecture, che può essere usato come modello per costruire la propria soluzione.

70 Hadoop Ecosystem Architettura di riferimento

71 Hadoop Ecosystem l Architecture E' stata proposta da Nathan Marz ( Twitter ) verso la fine del 2013, come modello standard per la creazione di sistemi per la gestione di BigData. Per capire il modello architetturale proposto nella Lambda Architecture è importante delineare quali sono le caratteristiche che vorremmo trovare in un BigData System. Ma prima ancora..cosa è un Data System e quindi un BigData System? Un Data System è un sistema che è in grado di memorizzare dei dati, combinarli assieme in svariati modi e fornire delle risposte alle nostre domande.

72 Hadoop Ecosystem l Architecture In prima approssimazione possiamo suddividere i dati in due tipi dati grezzi (raw data): che sono quelli che noi riceviamo dai sistemi esterni lista transazioni bancarie, elenco amici dati derivati : che sono ottenuti attraverso elaborazioni sui raw-data saldo disponibile sul conto, numero di amici Per moderare le ambiguità può esser utile far riferimento ai primi con il termine dati ed ai secondi con il termine informazioni. Possiamo quindi definire un Data System come un sistema in grado di memorizzare dati storici, analizzarli e fornire risposte basate su di essi, ovvero Data System: query = function ( All Data)

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Introduzione alle pipeline e all'architettura RISC

Introduzione alle pipeline e all'architettura RISC Introduzione alle pipeline e all'architettura RISC Introduzione Pipeline Processori RISC Salti Appendice A: Storia Bibliografia Versione con i frame Versione in pdf Architettura del processore Una possibile

Dettagli

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese Inter Process Communication Laboratorio Software 2008-2009 C. Brandolese Introduzione Più processi o thread Concorrono alla relaizzazione di una funzione applicativa Devono poter realizzare Sincronizzazione

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Architettura dei Calcolatori

Architettura dei Calcolatori Architettura dei Calcolatori Sistema di memoria parte prima Ing. dell Automazione A.A. 2011/12 Gabriele Cecchetti Sistema di memoria parte prima Sommario: Banco di registri Generalità sulla memoria Tecnologie

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

Progetto VirtualCED Clustered

Progetto VirtualCED Clustered Progetto VirtualCED Clustered Un passo indietro Il progetto VirtualCED, descritto in un precedente articolo 1, è ormai stato implementato con successo. Riassumendo brevemente, si tratta di un progetto

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

Intrusion Detection System

Intrusion Detection System Capitolo 12 Intrusion Detection System I meccanismi per la gestione degli attacchi si dividono fra: meccanismi di prevenzione; meccanismi di rilevazione; meccanismi di tolleranza (recovery). In questo

Dettagli

B.P.S. Business Process Server ALLEGATO C10

B.P.S. Business Process Server ALLEGATO C10 B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Dettagli

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis 2 Intervento immediato con Bosch Intelligent Video Analysis Indipendentemente da quante telecamere il sistema utilizza, la sorveglianza

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

Dettagli

Business Process Modeling and Notation e WebML

Business Process Modeling and Notation e WebML Business Process Modeling and Notation e WebML 24 Introduzione I Web Service e BPMN sono standard de facto per l interoperabilità in rete a servizio delle imprese moderne I Web Service sono utilizzati

Dettagli

DataFix. La soluzione innovativa per l'help Desk aziendale

DataFix. La soluzione innovativa per l'help Desk aziendale DataFix D A T A N O S T O P La soluzione innovativa per l'help Desk aziendale La soluzione innovativa per l'help Desk aziendale L a necessità di fornire un adeguato supporto agli utenti di sistemi informatici

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Sizing di un infrastruttura server con VMware

Sizing di un infrastruttura server con VMware Sizing di un infrastruttura server con VMware v1.1 Matteo Cappelli Vediamo una serie di best practices per progettare e dimensionare un infrastruttura di server virtuali con VMware vsphere 5.0. Innanzitutto

Dettagli

Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001

Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001 Energy Data Management System (EDMS): la soluzione software per una gestione efficiente dell energia secondo lo standard ISO 50001 Oggi più che mai, le aziende italiane sentono la necessità di raccogliere,

Dettagli

CA Process Automation

CA Process Automation CA Process Automation Glossario Release 04.2.00 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente (d'ora in avanti indicata come

Dettagli

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Riusabilità del software - Catalogo delle applicazioni: Applicativo verticale Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

Dettagli

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti

Middleware Laboratory. Dai sistemi concorrenti ai sistemi distribuiti Dai sistemi concorrenti ai sistemi distribuiti Problemi nei sistemi concorrenti e distribuiti I sistemi concorrenti e distribuiti hanno in comune l ovvio problema di coordinare le varie attività dei differenti

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE

Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE Programma Enti Locali Innovazione di Sistema Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE 1 Premessa Il presente documento ha lo scopo di facilitare la disseminazione e il riuso

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

La piattaforma IBM Cognos

La piattaforma IBM Cognos La piattaforma IBM Cognos Fornire informazioni complete, coerenti e puntuali a tutti gli utenti, con una soluzione economicamente scalabile Caratteristiche principali Accedere a tutte le informazioni in

Dettagli

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi:

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Routing (instradamento) in Internet Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Stub AS: istituzione piccola Multihomed AS: grande istituzione (nessun ( transito Transit AS: provider

Dettagli

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:!

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:! Scrum descrizione I Principi di Scrum I Valori dal Manifesto Agile Scrum è il framework Agile più noto. E la sorgente di molte delle idee che si trovano oggi nei Principi e nei Valori del Manifesto Agile,

Dettagli

Architettura di un sistema informatico 1 CONCETTI GENERALI

Architettura di un sistema informatico 1 CONCETTI GENERALI Architettura di un sistema informatico Realizzata dal Dott. Dino Feragalli 1 CONCETTI GENERALI 1.1 Obiettivi Il seguente progetto vuole descrivere l amministrazione dell ITC (Information Tecnology end

Dettagli

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito:

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito: Autore : Giulio Martino IT Security, Network and Voice Manager Technical Writer e Supporter di ISAServer.it www.isaserver.it www.ocsserver.it www.voipexperts.it - blogs.dotnethell.it/isacab giulio.martino@isaserver.it

Dettagli

più del mercato applicazioni dei processi modificato. Reply www.reply.eu

più del mercato applicazioni dei processi modificato. Reply www.reply.eu SOA IN AMBITO TELCO Al fine di ottimizzare i costi e di migliorare la gestione dell'it, le aziende guardano, sempre più con maggiore interesse, alle problematiche di gestionee ed ottimizzazione dei processi

Dettagli

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Rappresentazione concreta di insiemi e Hash table Universita' di Ferrara Dipartimento di Matematica e Informatica Algoritmi e Strutture Dati Rappresentazione concreta di insiemi e Hash table Copyright 2006-2015 by Claudio Salati. Lez. 9a 1 Rappresentazione

Dettagli

Web Conferencing and Collaboration tool

Web Conferencing and Collaboration tool Web Conferencing and Collaboration tool La piattaforma Meetecho Piattaforma di Web Conferencing e Collaborazione on line in tempo reale Caratteristiche generali Soluzione client-server progettata per essere

Dettagli

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012

Marco Giorgi. Palazzo di Giustizia di Torino 30 marzo 2012 Marco Giorgi Palazzo di Giustizia di Torino 30 marzo 2012 Post mortem (Dopo lo spegnimento del sistema) Si smonta il dispositivo e lo si collega ad un PC dedicato all'acquisizione Live forensics (Direttamente

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi

corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi Prof. S.Pizzutilo Elementi

Dettagli

Introduzione. E un sistema EAI molto flessibile, semplice ed efficace:

Introduzione. E un sistema EAI molto flessibile, semplice ed efficace: Overview tecnica Introduzione E un sistema EAI molto flessibile, semplice ed efficace: Introduce un architettura ESB nella realtà del cliente Si basa su standard aperti Utilizza un qualsiasi Application

Dettagli

Il ciclo di vita del software

Il ciclo di vita del software Il ciclo di vita del software Il ciclo di vita del software Definisce un modello per il software, dalla sua concezione iniziale fino al suo sviluppo completo, al suo rilascio, alla sua successiva evoluzione,

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Energy Studio Manager Manuale Utente USO DEL SOFTWARE

Energy Studio Manager Manuale Utente USO DEL SOFTWARE Energy Studio Manager Manuale Utente USO DEL SOFTWARE 1 ANALYSIS.EXE IL PROGRAMMA: Una volta aperto il programma e visualizzato uno strumento il programma apparirà come nell esempio seguente: Il programma

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Architetture CISC e RISC

Architetture CISC e RISC FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.

Dettagli

Milano, Settembre 2009 BIOSS Consulting

Milano, Settembre 2009 BIOSS Consulting Milano, Settembre 2009 BIOSS Consulting Presentazione della società Agenda Chi siamo 3 Cosa facciamo 4-13 San Donato Milanese, 26 maggio 2008 Come lo facciamo 14-20 Case Studies 21-28 Prodotti utilizzati

Dettagli

Dalla Mappatura dei Processi al Business Process Management

Dalla Mappatura dei Processi al Business Process Management Dalla Mappatura dei Processi al Business Process Management Romano Stasi Responsabile Segreteria Tecnica ABI Lab Roma, 4 dicembre 2007 Agenda Il percorso metodologico Analizzare per conoscere: la mappatura

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+... Setup delle ConnessioniTCP Una connessione TCP viene instaurata con le seguenti fasi, che formano il Three-Way Handshake (perchè formato da almeno 3 pacchetti trasmessi): 1) il server si predispone ad

Dettagli

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Procedure per la scansione di sicurezza Versione 1.1 Release: settembre 2006 Indice generale Finalità... 1 Introduzione... 1 Ambito di applicazione dei

Dettagli

Active Solution & Systems illustra La virtualizzazione dei Server secondo il produttore di Storage Qsan

Active Solution & Systems illustra La virtualizzazione dei Server secondo il produttore di Storage Qsan Active Solution & Systems illustra La virtualizzazione dei secondo il produttore di Storage Qsan Milano, 9 Febbraio 2012 -Active Solution & Systems, società attiva sul mercato dal 1993, e da sempre alla

Dettagli

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

Dettagli

IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget

IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget Data Sheet IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget Panoramica Le medie aziende devono migliorare nettamente le loro capacità

Dettagli

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE In un mercato delle Telecomunicazioni sempre più orientato alla riduzione delle tariffe e dei costi di

Dettagli

FORM Il sistema informativo di gestione della modulistica elettronica.

FORM Il sistema informativo di gestione della modulistica elettronica. Studio FORM FORM Il sistema informativo di gestione della modulistica elettronica. We believe in what we create This is FORM power La soluzione FORM permette di realizzare qualsiasi documento in formato

Dettagli

Ottimizzazione della gestione del data center con Microsoft System Center

Ottimizzazione della gestione del data center con Microsoft System Center Ottimizzazione della gestione del data center con Microsoft System Center Declinazione di responsabilità e informazioni sul copyright Le informazioni contenute nel presente documento rappresentano le conoscenze

Dettagli

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Tobia Castaldi Alessandro Amirante Lorenzo Miniero Simon Pietro Romano Giorgio Ventre 02/10/2009 GARR 2009 "Network

Dettagli

Il Business Process Management: nuova via verso la competitività aziendale

Il Business Process Management: nuova via verso la competitività aziendale Il Business Process Management: nuova via verso la competitività Renata Bortolin Che cosa significa Business Process Management? In che cosa si distingue dal Business Process Reingeneering? Cosa ha a che

Dettagli

PLM Software. Answers for industry. Siemens PLM Software

PLM Software. Answers for industry. Siemens PLM Software Siemens PLM Software Monitoraggio e reporting delle prestazioni di prodotti e programmi Sfruttare le funzionalità di reporting e analisi delle soluzioni PLM per gestire in modo più efficace i complessi

Dettagli

Guida Dell di base all'acquisto dei server

Guida Dell di base all'acquisto dei server Guida Dell di base all'acquisto dei server Per le piccole aziende che dispongono di più computer è opportuno investire in un server che aiuti a garantire la sicurezza e l'organizzazione dei dati, consentendo

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

Corso di Amministrazione di Sistema Parte I ITIL 3

Corso di Amministrazione di Sistema Parte I ITIL 3 Corso di Amministrazione di Sistema Parte I ITIL 3 Francesco Clabot Responsabile erogazione servizi tecnici 1 francesco.clabot@netcom-srl.it Fondamenti di ITIL per la Gestione dei Servizi Informatici Il

Dettagli

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A.

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A. Mobile Messaging SMS Copyright 2015 VOLA S.p.A. INDICE Mobile Messaging SMS. 2 SMS e sistemi aziendali.. 2 Creare campagne di mobile marketing con i servizi Vola SMS.. 3 VOLASMS per inviare SMS da web..

Dettagli

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL?

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? archiviazione ottica, conservazione e il protocollo dei SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? Il software Facile! BUSINESS Organizza l informazione

Dettagli

Realizzare un architettura integrata di Business Intelligence

Realizzare un architettura integrata di Business Intelligence Realizzare un architettura integrata di Business Intelligence Un sistema integrato di Business Intelligence consente all azienda customer oriented una gestione efficace ed efficiente della conoscenza del

Dettagli

Appunti di Sistemi Operativi. Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo

Appunti di Sistemi Operativi. Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo Appunti di Sistemi Operativi Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo Indice 1 Cenni su alcuni algoritmi del Kernel di Unix 1 1.1 Elementi di Unix Internals.................................

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Piattaforma Applicativa Gestionale. Import dati. Release 7.0

Piattaforma Applicativa Gestionale. Import dati. Release 7.0 Piattaforma Applicativa Gestionale Import dati Release 7.0 COPYRIGHT 2000-2012 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati. Questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL)

Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL) Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL) Corso di Sistemi Distribuiti Stefano

Dettagli

COME FRODE. la possibilità propri dati. brevissimo. Reply www.reply.eu

COME FRODE. la possibilità propri dati. brevissimo. Reply www.reply.eu FRAUD MANAGEMENT. COME IDENTIFICARE E COMB BATTERE FRODI PRIMA CHE ACCADANO LE Con una visione sia sui processi di business, sia sui sistemi, Reply è pronta ad offrire soluzioni innovative di Fraud Management,

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

DNS (Domain Name System) Gruppo Linux

DNS (Domain Name System) Gruppo Linux DNS (Domain Name System) Gruppo Linux Luca Sozio Matteo Giordano Vincenzo Sgaramella Enrico Palmerini DNS (Domain Name System) Ci sono due modi per identificare un host nella rete: - Attraverso un hostname

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Import Dati Release 4.0

Import Dati Release 4.0 Piattaforma Applicativa Gestionale Import Dati Release 4.0 COPYRIGHT 2000-2005 by ZUCCHETTI S.p.A. Tutti i diritti sono riservati.questa pubblicazione contiene informazioni protette da copyright. Nessuna

Dettagli

Cinque best practice per amministratori VMware: Microsoft Exchange su VMware

Cinque best practice per amministratori VMware: Microsoft Exchange su VMware Cinque best practice per amministratori VMware: Microsoft Exchange su VMware Scott Lowe Founder and Managing Consultant del 1610 Group Modern Data Protection Built for Virtualization Introduzione C è stato

Dettagli

REALIZZARE UN MODELLO DI IMPRESA

REALIZZARE UN MODELLO DI IMPRESA REALIZZARE UN MODELLO DI IMPRESA - organizzare e gestire l insieme delle attività, utilizzando una piattaforma per la gestione aziendale: integrata, completa, flessibile, coerente e con un grado di complessità

Dettagli

I veri benefici dell Open Source nell ambito del monitoraggio IT. Georg Kostner, Department Manager Würth Phoenix

I veri benefici dell Open Source nell ambito del monitoraggio IT. Georg Kostner, Department Manager Würth Phoenix I veri benefici dell Open Source nell ambito del monitoraggio IT Georg Kostner, Department Manager Würth Phoenix IT Service secondo ITIL Il valore aggiunto dell Open Source Servizi IT Hanno lo scopo di

Dettagli

Modulo 11. Il livello trasporto ed il protocollo TCP Indice

Modulo 11. Il livello trasporto ed il protocollo TCP Indice Pagina 1 di 14 Il livello trasporto ed il protocollo TCP Indice servizi del livello trasporto multiplexing/demultiplexing trasporto senza connesione: UDP principi del trasferimento dati affidabile trasporto

Dettagli

Energy risk management

Energy risk management Il sistema di supporto alle tue decisioni Energy risk management Un approccio orientato agli attori M.B.I. Srl, Via Francesco Squartini 7-56121 Pisa, Italia - tel. 050 3870888 - fax. 050 3870808 www.powerschedo.it

Dettagli

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp.

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. Symbolic Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. La nostra mission è di rendere disponibili soluzioni avanzate per la sicurezza

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

CORPORATE OVERVIEW. www.akhela.com

CORPORATE OVERVIEW. www.akhela.com CORPORATE OVERVIEW www.akhela.com BRIDGE THE GAP CORPORATE OVERVIEW Bridge the gap Akhela è un azienda IT innovativa che offre al mercato servizi e soluzioni Cloud Based che aiutano le aziende a colmare

Dettagli

REGIONE BASILICATA (ART. 125 DEL D.LGS. N. 163/06) ALLEGATO N. 1 CARATTERISTICHE TECNICHE DEL SERVIZIO

REGIONE BASILICATA (ART. 125 DEL D.LGS. N. 163/06) ALLEGATO N. 1 CARATTERISTICHE TECNICHE DEL SERVIZIO REGIONE BASILICATA PROCEDURA NEGOZIATA PER L AFFIDAMENTO DEL SERVIZIO DI PROGETTAZIONE, REALIZZAZIONE E GESTIONE DEL SISTEMA INTEGRATO SERB ECM DELLA REGIONE BASILICATA (ART. 125 DEL D.LGS. N. 163/06)

Dettagli

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali DynDevice ECM La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali Presentazione DynDevice ECM Cos è DynDevice ICMS Le soluzioni di DynDevice

Dettagli

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Il software descritto nel presente

Dettagli

Lezione 15 File System

Lezione 15 File System Lezione 15 File System Sistemi Operativi (9 CFU), CdL Informatica, A. A. 2014/2015 Dipartimento di Scienze Fisiche, Informatiche e Matematiche Università di Modena e Reggio Emilia http://weblab.ing.unimo.it/people/andreolini/didattica/sistemi-operativi

Dettagli

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence?

www.bistrategy.it In un momento di crisi perché scegliere di investire sulla Business Intelligence? In un momento di crisi perché scegliere di investire sulla Business Intelligence? Cos è? Per definizione, la Business Intelligence è: la trasformazione dei dati in INFORMAZIONI messe a supporto delle decisioni

Dettagli

Indicizzazione terza parte e modello booleano

Indicizzazione terza parte e modello booleano Reperimento dell informazione (IR) - aa 2014-2015 Indicizzazione terza parte e modello booleano Gruppo di ricerca su Sistemi di Gestione delle Informazioni (IMS) Dipartimento di Ingegneria dell Informazione

Dettagli

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

Virtualizzazione e installazione Linux

Virtualizzazione e installazione Linux Virtualizzazione e installazione Linux Federico De Meo, Davide Quaglia, Simone Bronuzzi Lo scopo di questa esercitazione è quello di introdurre il concetto di virtualizzazione, di creare un ambiente virtuale

Dettagli

Utilizzato con successo nei più svariati settori aziendali, Passepartout Mexal BP è disponibile in diverse versioni e configurazioni:

Utilizzato con successo nei più svariati settori aziendali, Passepartout Mexal BP è disponibile in diverse versioni e configurazioni: Passepartout Mexal BP è una soluzione gestionale potente e completa per le imprese che necessitano di un prodotto estremamente flessibile, sia dal punto di vista tecnologico sia funzionale. Con più di

Dettagli