La cache coi fronzoli

La cache coi fronzoli

Come da articolo precedente, a valle di una ricerca a tappeto per scovare un servizio di Online Storage (per dare finalmente pace alla paranoia relativa al rischio di perdita dei dati), sono approdato su un lido chiamato Livedrive.

Un servizio che, su carta (anzi, su schermo), prometteva di garantirmi il soddisfacimento di tutte (o quasi) le mie necessità per quanto concerne la disponibilità e il salvataggio dei miei dati su un server remoto.

Prima di tutto credo sia importante definire cosa mi aspetto da un servizio di Online Storage:

– Spazio illimitato

– Disponibilità dei dati tramite protocolli FTP, WebDAV, CIFS/SMB.

– Servizio di backup/sincronizzazione

In pratica, le mie richieste sono abbastanza semplici, senza troppi “fronzoli”: mi serve uno spazio senza limiti, che sia accessibile in svariati modi. Voglio poter copiare un file su questo storage, accederlo tramite un altro computer fuori dalla mia casa, usando un drive virtuale mappato su windows, oppure utilizzando l’accesso FTP. Vorrei, inoltre, poter aprire un documento memorizzato su questo storage remoto tramite iPad, o iPhone… in tal caso, avere l’accessibilità tramite WebDAV è quasi un MUST. Senza, la manipolazione dei dati diventa macchinosa e scomoda.

Vorrei, inoltre, poter scegliere di fare un backup sistematico, automatizzato ed efficiente, di alcune cartelle, indipendentemente dal computer su cui esse sono memorizzate.

In pratica, supponendo di avere sul PC di casa la cartella Documenti, piena di tutti i miei dati preziosi, vorrei poter decidere di fare un backup sul mio storage online. Modificando qualsiasi cosa in questa cartella, vorrei che tale cambiamento fosse propagato anche alla corrispondente copia di backup (possibilmente con copia incrementale e non sovrascrivendo ogni volta l’intero file modificato).

Se, per mia necessità, dovessi decidere di portare con me alcuni dati da questa cartella Documenti, o prelevarli direttamente dallo spazio remoto, vorrei che ogni modifica ad essi apportata fosse replicata sulla copia di backup online.

Bene. Esposte le mie necessità, veniamo a come Livedrive ha realizzato il suo servizio di Online Storage.

Premetto che dissezionerò attentamente l’offerta, evidenziandone soprattutto le mancanze e limitazioni. Non è cattiveria, ma la pubblicità la fa già il sito (da me linkato adeguatamente), e la mia presenza come cliente, che tale rimarrà, garantisce circa la mia sostanziale soddisfazione.

Livedrive ha un’ottimo livello di affidabilità sul servizio che offre, dà supporto in maniera effettiva, e, last but not least, offre spazio illimitato con un prezzo che si attesta sui 10 euro circa al mese. Non male davvero. Ma vediamo dove, secondo me, i ragazzi di livedrive hanno giocato male alcune delle carte che, invece, avrebbero pouto farne il top service assoluto (almeno per le mie esigenze).

Limitazioni note: lo spazio remoto NON è esposto tramite protocollo WebDAV e nemmeno tramite CIFS/SMB. E’ possibile mappare un’unità virtuale, corrispondente allo spazio remoto, solo tramite FTP (cosa non proprio efficiente).

Chiaramente, un’offerta commerciale di tal genere non sarebbe appetibile, quindi gli sviluppatori di Livedrive hanno costruito un modulo proprietario che “simula”, in maniera non proprio ottimale e solamente come risultato visivo, quello che si avrebbe tramite l’uso del protocollo CIFS/SMB. In pratica si può avere qualcosa di simile ad un drive mappato sul PC. Il drive avrà una lettera a scelta (di default L:). Tale unità, però, NON mappa lo storage remoto, ma è una sorta di “cache”. In pratica, dentro tale unità si troveranno sì tutti i files e le cartelle memorizzate online, ma esse saranno un mero link a files contenuti in locale oppure memorizzati online.

Il funzionamento base del servizio offerto da Livedrive (da loro venduto con il nome di Briefcase) è il seguente: si sceglie un’unità locale (C:, D:, oppure una qualsiasi partizione di unn hard disk USB), che costituirà quella che viene chiamata Cache. E’ possibile selezionare una sola partizione che funga da cache.

Tutto ciò che è salvato su spazio remoto verrà replicato in una directory nascosta sulla partizione cache. E’ possibile scegliere per ogni file o cartella copiato online se farne una copia effettiva in cache, o se memorizzarne solo il nome.

Nel primo caso, una copia del file sarà scaricata sul nostro hard disk (C: nell’esempio sopra), mentre scegliendo la seconda opzione, appunto, verrà salvato in cache solo il nome del file (che costituirà una sorta di link al file stesso, presente soltanto sullo storage online).

La directory cache (quella nascosta, e quindi non direttamente accessibile dall’utente) sarà poi mappata come drive virtuale (L:, per l’appunto), che troveremo a fianco degli altri drive fisici.

Accedendo L:, quindi, vedremo, in effetti, l’intero contenuto del nostro storage online, ma saremo in grado di utilizzare direttamente solo i contenuti che avremo deciso di scaricare in cache. Per gli altri, occorrerà un’operazione di download in locale prima dell’uso.

Il tutto sembrerebbe molto efficiente, ma presenta dei limiti notevoli.

Primo su tutti, il limite fisico derivante dall’utilizzo dello spazio fisico del nostro hard disk.

Mentre l’accesso diretto ad un’unità online permette la visualizzazione dei contenuti così come essi sono stati copiati sullo storage remoto, l’uso di una “copia cache” presuppone che non si possa lavorare su un file se non lo si scarica prima. Occorre, quindi, prestare particolare attenzione alla gestione dello spazio fisico a disposizione sul proprio hard disk (si rischia facilmente di intasare il nostro hard disk, tenendo in locale più contennutti del necessario).

Tutto quanto descritto non pregiudica la bontà del servizio offerto, ma solo la sua flessibilità. Di fatto, il solo modo per accedere direttamente ad un file memorizzato sullo storage online è tramite l’uso del protocollo FTP.

Progettato nella maniera sopra mostrata, tale servizio ha di sicuro, dalla sua, un vantaggio che un semplice servizio di storage online non avrebbe: quello di permettere la sincronizzazione di un dato su più dispositivi. In pratica, scegliendo di tenere in locale sul PC casalingo un determinato file (che quindi vedremo tramite unità L: ma che sarà, di fatto, memorizzato sul nostro hard disk fisico, nella partizione scelta come cache (C: ad esempio), e facendo lo stesso sul nostro portatile (sul quale, magari, avremo mappato l’hard disk di cache su un disco USB, per evitare di saturare l’esiguo spazio tipico di computer portatili, speesso adibiti a scopo lavorativo), otterremo il piacevole effetto di sincronizzare tale file in maniera teoricamente quasi immediata tra i vari computer. Aprendo, infatti, il file sul nostro drive (virtuale) L: del pc portatile, e modificandolo, otterremo che tale file modificato sarà aggiornato anche sullo storage online e, di conseguenza, quando saremo a casa, troveremo l’aggiornamento anche sul drive (virtualee) L: del pc casalingo. Un servizio molto simile a quanto offerto da Dropbox, anche se un pochino meno efficiente di quest’ultimo.

Dico ciò perché l’intera gestione di quanto scritto finora (e, quindi, delle logiche di copia, cache, sincronizzazione di files sui vari dischi virtuali) è demandata ad un client da installare sui pc. Tale software non si contraddistingue per la sua efficienza, in quanto non permette nessuna interazione se non quella di fermare e far ripartire le operazioni in corso.

La sua logica è abbastanza complessa, in quanto deve tener conto delle impostazioni scelte dall’utente, e quindi deve essere in grado, per ogni contenuto che abbiamo messo online, di capire se occorra scaricarlo in locale oppure no, se debba essere sincronizzato o meno, e se magari vada cancellato, in quanto l’utente ha scelto, tramite unità virtuale L:, di rimuoverlo.

Malgrado tutte queste operazioni siano magistralmente eseguite dal tool in autonomia, in modo apparentemente trasparente all’utente, il fatto di non voler dare possibilità di intervento genera anche un side effect spiacevole: supponendo di aver modificato durante la settimana un file sul pc portatile, e di volerlo modificare, nel weekend, da casa. Acceso il nostro computer casalingo, occorrerà attendere, prima di poter esser certi di avere il file aggiornato e scaricato sul nostro drive virtuale L:, che il software di livedrive analizzi tutte le operazioni da fare, ed inizi ad eseguirle in sequenza. L’aggiornamento di tale file potrebbe occupare una qualsiasi delle posizioni in coda di lavorazione. Supponendo di avere in coda dei caricamenti pesanti (files di centinaia di MB o GB), potremmo dover aspettare ore prima di veder sincronizzato il nostro documento, che magari è pesante appena poche centinaia di KB.

Volendo citare un’ulteriore mancanza, tutte le operazioni che vengono effettuate dal tool di Livedrive sono prive di feedback verso l’utente. Le sole informazioni che si ricevono sono relative al fatto che un dato file sia stato caricato online, o scaricato in locale. Nessuna percezione dell’avanzamento dei lavori in corso. Si rischierà, quindi, di spegnere il pc senza aver completato determinati caricamenti (e fin qui avverrebbe con qualsiasi servizio) ma non si riuscirà ad avere in nessun modo evidenza di quanti file mancassero, dell’avanzamento globale delle operazioni in corso, o di quali files siano stati effttivamente caricati e quanti e quali no.

Dropbox, avendo fatto di questo tipo di sincronizzazione il suo core business, ha dalla sua un’enorme efficienza ed affidabilità (anche grazie ad alcuni limiti di spazio fornito). Basta accendere il computer, e tutti i files che richiedono una sincronizzazione saranno processati in pochissimo tempo.

Consiglio: utilizzate il meno possibile l’unità L: per tenere files in locale, e considerate la parte di offerta definita Briefcase esclusivamente un repository online da accedere via FTP. In tale maniera, avrete sempre la consapevolezza di cosa state vedendo, e sarete sicuri di utilizzare le ultime versioni. Inoltre, e non è poco, non rischierete di saturare il vostro hard disk copiando in locale contenuti che, magari, possono essere benissimo utilizzati direttamente da remoto.

Appendice abbastanza importante a tutto questo, Livedrive offre l’accesso ai suoi servizi tramite web. Il tool web è molto accattivante graficamente, e permette una gestione completa di tutti i contenuti. Anche qui, totale assenza di feedback circa l’avanzamento delle operazioni in corso, ed impossibilità totale di avere informazioni circa le dimensioni e il numero di files contenuti in una singola cartella. Numerose le funzionalità a margine che sono state implementate (e che per me potevano essere, in qualche modo, messe in cantiere dopo una generale revisione dei processi core, che sono alquanto insoddisfacenti): integrazione con facebook (al momento non ancora funzionante), con flickr, presenza integrata di un player musicale, che riconosce in autonomia tutta la musica caricata online, e la classifica in stile iTunes (ma non gestisce playlist!!!), editor di documenti integrati, funzionalità di sharing privato e pubblico.

Tutte cose molto utili ma, come ribadisco, a mio personale avviso di secondo piano per le mie necessità.

Il servizio Briefcase non è il solo offerto da Livedrive. In maniera assolutamente inspiegabile, la società offre un secondo livello di servizio, di fatto totalmente scollegato dal primo, che è chiamato Backup.

Come si può capire dal nome, offre semplici funzionalità di backup.

Come fatto prima, concentrerò l’attenzione sulle mancanze, visto che il fatto stesso che io sia e resti loro cliente garantisce, come già detto, circa la mia sostanziale soddisfazione verso Livedrive.

Un servizio di backup, per come lo intendo io, dovrebbe potermi permettere, idealmente, di selezionare una cartella e decidere di farne una copia sul mio spazio online. Dove tale cartella si trovi NON dovrebbe avere rilevanza alcuna.

Hard disk interni, USB, storage di rete, NAS remoti o locali o quant’altro, io dovrei avere la possibilità di scegliere dal mio elenco di drive mappati sul pc una qualsiasi cartella o file e dovrei poterne fare il backup.

Qualcosa come offerto dal software eccellente (e gratuito) Allway sync.

Se vogliamo, il massimo sarebbe poter decidere se fare un semplice backup (origine sovrascrive destinazione) o se, invece, sincronizzare due cartelle (e, quindi, dover gestire tutte le varie regole per determinare quale sia la versione più aggiornata di un file).

Livedrive offre una soluzione di semplice backup, non di sincronizzazione, con una serie di limiti e, a mio avviso, con un approccio che rende difficile un suo utilizzo a tutto tondo.

– Non è possibile fare backup da unità di rete

– Il backup non è accessibile via FTP (né tantomeno tramite altri protocolli)

– Il servizio di backup NON ha niente a che vedere con Briefcase (sono servizi scollegati tra loro, a parte la possibilità di muovere contenuti dal backup verso Briefcase (non vale il contrario).

– I contenuti salvati da un computer finiranno sotto un’alberatura scollegata da quelli salvati da un altro computer, senza possibilità di scelta preventiva

Direi che basta per definire il servizio di Backup offerto da Livedrive come “molto limitato”.

Prima di tutto farò una mia personale considerazione di massima, seguita da qualche veloce esempio di come tali limitazioni abbiano effetto sul nostro quotidiano.

Ho sempre ritenuto fondamentale determinare il master di un certo contenuto. La copia che è costantemente aggiornata, e della quale si possono fare innumerevoli backup, è quella che deve essere univoca ed unica.

L’uso di un approccio all’Online Storage come quello fornito da Livedrive va in costante contrasto con questa mia necessità.

Il mio intento è quello di possedere una sola copia di ognuno dei contenuti digitali della mia vita. Di tale copia master, io ne faccio un backup locale (su un hard disk USB o un NAS collegato alla rete domestica). La copia sarà sempre sovrascritta dall’originale, mai modificata direttamente.

L’utilizzo di uno storage di rete dovrebbe servire ad avere la copia master sempre a disposizione ed aggiornata.

Esempio di processo per me correttamente funzionante: il contenuto x, presente in copia master sul PC di casa, è stato copiato come backup sullo storage online. Da remoto, tramite un altro computer, si può accedere a tale contenuto, modificarlo (in questo momento si sta lavorando sul backup) e salvarlo di nuovo in remoto.

Tale operazione dovrebbe essere successivamente propagata sulla copia master, che sarebbe quindi aggiornata senza nessuna operazione manuale.

In alternativa, si può pensare di usare come copia master quella remota. Tale approccio, di sicuro ancora più efficiente, richiede però la presenza di una connessione per utilizzare il contenuto. In questo caso l’uso di Briefcase verrebbe in aiuto… ma può essere utilizzato solo per un quntitativo ridotto di contenuti, da tenere sincronizzati tra dispositivi.

Parlando ora dell’offerta Backup, vediamo come l’ultimo dei limiti elencati prima violi questa regola. Prendiamo ad esempio un caso semplice: cartella documenti presente in 2 computer, con documenti diversi su ognuno di essi. Sul PC di casa, terremo i documenti personali, mentre sul portatile saranno presenti quelli lavorativi (se vogliamo, in due sottocartelle diverse).

Supponendo di decidere di fare il backup di tale cartella da entrambi i PC, troveremo sul nostro storage Online 2 cartelle Documenti, una sotto un ramo appartenente al computer di casa, ed una sotto un altro ramo, relativo al portatile.

Avremo, quindi, due versioni della stessa cartella. Ovviamente, se dovessimo decidere di tenere documenti personali anche sul portatile, va da sé che troveremo online 2 copie di backup dello stesso documento.

Modificandolo sul portatile, propagheremo le modifiche sulla copia nel ramo relativo a tale computer. Supponendo di andare a casa e di modificare lo stesso documento sul pc casalingo, troveremo salvata in backup la seconda copia, in un ramo diverso dello storage online.

Se, poi, volessimo anche avere la cartella documenti disponibile tramite FTP, dovremmo caricarla anche su Briefcase, creando di fatto la terza copia del documento in questione.

Chiaramente, tutte queste copie non si parlano tra di loro. Non si aggiornano e non fanno riferimento allo stesso documento. Tutto questo crea una certa confusione, che va gestita attraverso un utilizzo oculato di tale servizio.

L’impossibilità di fare backup da unità di rete parla da sé… è un limite che, per qualcuno, potrebbe anche essere intollerabile (ma è documentato, quindi si sa da subito).

L’impossibilità di accedere ai backup, se non utilizzando il client web, rende tali contenuti praticamente non utilizzabili (se non previa lenta e scomoda navigazione da web con conseguente download del file e creazione dell’ennesima sua copia…). Se guardiamo a questo servizio come mero backup possiamo anche passar sopra a questa limitazione, ma in ogni caso io la ritengo un’assenza importante.

Infine, il fatto che l’offerta di Livedrive sia articolata in due servizi tra loro non collegati, per me depone male sul fronte usabilità del tutto. Sono, in effetti, costretto a creare un numero variabile di copie dello stesso contenuto in base al numero dei dispositivi da cui ne farò uso, ed in aggiunta ho possibilità di accesso (e solo via FTP) alla sola di queste copie che non è oggetto di sincronizzazione (quella su Briefcase).

Banalizzando, se possiedo un archivio fotografico in un’unità USB casalinga, e voglio averlo sempre a mia disposizione durante miei viaggi, supponendo di voler mettere in sicurezza tale archivio, dovrò crearne 2 copie sullo storage online (una è quella creata manualmente tramite Briefcase, l’altra quella gestita dal servizio Backup). La copia di backup sarà aggiornata solo se e quando quella locale (a casa) verrà modificata. La copia che, invece, avrò a disposizione in viaggio, sarà quella memorizzata tramite il servizio Briefcase. In caso di modifica di tale contenuto, la sua copia di backup, così come quella locale a casa, resterà invariata, a meno che io, al mio ritorno, non compia un’operazione manuale di copia del contenuto modificato sulla sorgente del backup (e quindi sul mio hard disk USB). In tal caso, il backup sarà aggiornato.

Se ci dovessimo aggiungere la complessità, già vista, di una eventuale seconda copia di backup, derivante dalla presenza della stessa cartella su PC diversi, diventeremmo matti solo per capire dove sia il contenuto più aggiornato.

Non sto nemmeno affrontando il tema di come tutto questo si incastri con le operazioni di backup locale che già effettuo a prescindere da Livedrive.

On top di tutto questo, qualora decidessi di tenere come copia master quella su L: (e quindi quella online), supponendo di aver affrontato e risolto la problematica dello storage locale limitato, dovrei fare i conti con un altro problema, per il quale prenderò ad esempio il software molto diffuso iTunes.

Posseggo alcuni prodotti Apple (iPhone e iPad), e ho bisogno di sincronizzarli da casa o da lavoro senza differenza alcuna. Vorrei poter tenere la mia libreria sullo storage online, copiata anche in locale sui vari PC sull’unità L:.

Aprendo iTunes dal computer di casa, aprirò la libreria locale su L:. Chiudendo il programma, le modifiche saranno propagate sul server remoto e saranno poi scaricate dal client sull’altro PC, e quindi rese disponibili tramite L:.

Questo procedimento incorre, ovviamente, nel problema prima descritto, relativo alla velocità di questa operazione ed alla sua incontrollabilità.

Spegnere il computer prima che la libreria sia stata completamente sincronizzata significherebbe aprire dall’altro computer una versione non aggiornata della stessa, ed avere un numero imprecisato di possibili problemi in fase di sincronizzazione con l’iPhone.

Insomma, a mio avviso, malgrado il servizio sia realmente ottimo circa la disponibilità di spazio e la velocità di caricamento e scaricamento dati, e malgrado offra numerose possibilità di utilizzo (ne ho esplorate solo alcune), ritengo che l’approccio seguito abbia un problema di fondo abbastanza evidente, e relativo alla mancanza di attenzione circa la gestione dell’unicità del dato.

Voler proporre un servizio in stile Dropbox, ma arricchito da tante altre funzionalità, in realtà fa perdere di vista l’obbiettivo principe (che vedo essere abbastanza diffuso) di un Online Storage: quello di fornire spazio su cui memorizzare informazioni.

Livedrive dovrebbe semplicemente eliminare la distinzione tra Briefcase e Backup, ed offrire uno spazio su disco remoto accessibile tramite tutti i principali protocolli e dotato di funzionalità di backup e sincronizzazione.

Sarebbe sufficiente questo per poter utilizzare tutte le funzionalità che già sono offerte ma che sono mascherate da un client non sempre all’altezza e, soprattutto, dosate in maniera insufficiente: se da un lato la funzionalità di backup è abbastanza potente per portare a termine il suo compito principale senza intoppi e senza assistenza (lavorando in background autonomamente), dall’altra manca di accessibilità e flessibilità. Viceversa, un servizio come Briefcase, che sulla carta, e anche in effetti nella realtà, permette di essere utilizzato in maniera molto flessibile, manca di funzionalità core che ne limitano le reali possibilità, non permette l’integrazione con le stesse informazioni create come backup, ed utilizza una procedura macchinosa e poco trasparente per realizzare qualcosa che sarebbe, invece, facilmente ottenibile attraverso l’uso di protocolli e software standard.

Basterebbe poter mappare il drive remoto in locale, avere per ogni cartella funzionalità di backup e sync disponibili, e poter scegliere l’associazione tra cartella locale e cartella remota.

Volendo essere più benevoli, sarebbe sufficiente applicare, sul software già esistente, una logica che permettesse di scegliere partizioni diverse da usare come cache per ogni cartella presente onlinne. Negli esempi di prima, questo si tradurrebbe nella possibilità di avere la copia master di ogni dato sul server online, e di mantenere tali documenti in locale (e quindi, volendo, sincronizzati in entrambe le direzioni) su hard disk diversi, e non sul solo hard disk cache (C: nel solito esempio).

Le mie foto, storicamente su hard disk USB, sarebbero a questo punto trasferite in remoto, e poi mappate in locale sullo stesso drive USB. Le accederei da un percorso unificato (L:) da qualsiasi PC. I miei films, che non trovano posto sullo stesso hard disk USB, sarebbero allo stesso modo copiati in remoto, e mantenuti in locale su un hard disk diverso (magari il mio NAS casalingo).

I documenti farebbero la stessa fine: copia master su Livedrive, e suo mapping locale su hard disk a mia scelta. Avrei tutto accessibile da L: (comodissimo per avere tutto in un unico percorso), ma fisicamente i contenuti sarebbero sparpagliati su storage fisico a mia discrezione.

Volendo avere le foto, i documenti ed i films sempre appresso, comprerei magari 2 hard disk per portatile (piccoli e leggeri), e metterei sul primo i films e sull’altro foto e documenti. Modificando qualunque file dal portatile (sempre usando L: anche lì), il documento sarebbe automaticamente copiato in remoto, e quindi poi sull’hard disk di casa che contiene i documenti.

Forse sto complicando troppo il tutto, ma di fatto sto descrivendo un concetto molto semplice. L: (il drive virtuale di Briefcase) potrebbe facilmente diventare il percorso universale di tutti i miei contenuti, su qualsiasi PC. La loro copia fisica, poi, sarebbe posizionata a mia discrezione una ed una sola volta, dopodiché la sua posizione fisica potrebbe essere dimenticata (a patto di avere l’hard disk collegato al PC, ovviamente): da qualsiasi computer, userei lo stesso percorso e sarei sempre sicuro che quel dato è l’ultimo a mia disposizione, aggiornato e sicuro. Il tutto, ovviamente, potrebbe essere poi messo in sicurezza tramite Backup.

Consigli per l’uso: approfittate dell’offerta Livedrive, in quanto è, al momento, la migliore sul mercato quanto a rapporto qualità/prezzo. Fate attenzione all’uso che farete di Briefcase, puntate inizialmente sul backup (molto più semplice). Ovviamente, determinate la copia master di ogni informazione, così da evitare lo scenario di cui sopra, ovvero la stessa cartella copiata online due volte da PC diversi. Usate Briefcase inizialmente senza scaricare nulla in locale (impostate il client per lasciare tutto online), e poi, solo successivamente, determinate di cosa avete veramente bisogno sempre con voi.

Mappate l’unità di rete tramite FTP, e, se possibile, usate quella per accedere ai vostri dati.

In definitiva, direi che il servizio ha grosse potenzialità, ma deve essere strutturato in maniera più efficiente, e soprattutto deve permettere l’accesso ai dati senza limiti di protocollo.

Se potessi (ho provato a lanciare suggerimenti ai ragazzi di Livedrive), direi di non concentrarsi sui “fronzoli”, ma di perfezionare la gestione dell’approccio di Briefcase (la cache), per renderla più efficace e flessibile, e fare di un ottimo servizio qualcosa di veramente unico nel panorama attuale!

Lascia un commento