lunedì 2 settembre 2013

Posta Elettronica, Quote e de-duplica degli allegati

#### UPDATE 09-09-2013 ####
I primi risultati di un progetto di abilitazione del DAOS in ambito Enterprise qui
####

Per chi gestisce i sistemi di posta elettronica, l'applicazione delle quote alle caselle di posta è da sempre un motivo di scontro.
Se da un lato il sistemista la eleva ad unica possibilità di evitare catastrofi inenarrabili sui sistemi di posta, enumerando tutti i vantaggi che una soluzione del genere comporta, dall'altro chi usufruisce del servizio trova troppo comodo ed insostituibile ( e direi innegabilmente - nda)  usare la casella di posta come unico immenso archivio, documentale e non.
Chi ha ragione?
La risposta più ovvia (e più odiosa) è "dipende".... In particolare dipende infatti da 2 fattori, indipendenti tra di loro :

  1. il livello del servizio che si sta offrendo
  2. la "cultura informatica" degli utilizzatori

Se si sta offrendo un servizio premium, viene da se che è impossibile pensare di dare una "quota". Alcuni anni fa, cercando alternative al servizio GMail offerto da Google, mi sono reso conto di quanto BigG ci abbia abituato "male", di fatto eliminando il concetto della quota.
Ma come è possibile proporre ai propri utenti - e non solo a quelli "top" - questi livelli di servizio senza dover disporre di  PetaByte di archivi?

La gestione degli allegati
Tipicamente il problema dello storage è legato allo spazio occupato dall'intera casella, tralasciando il peso di ogni singolo messaggio.
Tipicamente la posta elettronica vede 1 messaggio inviato ad N destinatari, con successivi passaggi di risposte ed inoltri.


Questo flusso può essere ottimizzato se analizziamo la composizione del messaggio:

Ogni utente tipicamente inoltra gli allegati e risponde con una parte degli allegati originali. Sostituendo gli allegati con dei link otteniamo:

L'ottimizzazione è evidente, sia in termini di spazio occupato che di numero di file gestiti.

L'utilizzo delle funzioni di deduplica in un mailserver hanno un vantaggio rispetto ad applicare questa tecnologia per lo storage classico: gli allegati dei messaggi di posta sono in sola lettura, e pertanto non ci si dovrà preoccupare di delta, di confronto di blocchi o altro. Calcolato l'hash dell'allegato occorre solo verificare o meno la presenza del file.
La complessità inserita è quella di registrare correttamente i collegamenti tra file fisici (che possono poi essere ulteriormente compressi dal sistema di storage) e messaggi di posta.