Richer File System Metadata Using Links and Attributes
Alexander Ames, Nikhil Bobb, Scott A. Brandt, Adam Hiatt. Richer File System Metadata Using Links and Attributes. 13th NASA Goddard Conference on Mass Storage Systems and Technologies 2005 (MSST’05).
I tradizionali file system forniscono una struttura debole ed inadeguata per la rappresentazione delle interrelazioni significative dei file e degli altri metadati che ne forniscono il contesto.
Progetti esistenti, che depositano file aggiuntivi orientati ai metadati o in un, su un disco, o entrambe le cose sono limitati dalle tecnologie su cui essi dipendono. Inoltre, essi non prevedono per l’utente dei rapporti definiti i file. Per affrontare questi problemi, è stato creato il Linking File System (LiFS), un file system in cui i file possono avere sia arbitrari attributi utente sia attributi di specifiche applicazioni, e link attribuiti tra i file. Al fine di assicurare le prestazioni quando si accede al link e gli attributi, il sistema è progettato per memorizzare i metadati in una memoria non volatile. Questo documento esamina diversi casi d’uso che possono trarre vantaggio da questo approccio e descrive lo spazio utente prototipato che è stato sviluppato per testare i concetti suddetti.
Risolvere il problema delle interrelazioni fra i file è diventato sempre più urgente in quanto gli utenti si trovano di fronte a una crescente quantità di dati personali quali e-mail, comunicazioni via chat, documenti, file multimediali ecc.
LiFS estende i metadati del file system per includere non solo arbitrarie coppie di valori chiave specificabili dall’utente ma anche relazioni tra i file in forma di link con attributi. Attualmente è più facile trovare un documento cercandolo sul Web fra milioni di documenti che non trovarne uno archiviato localmente nella nostra macchina. Inoltre i documenti sul Web sono inseriti in una struttura ricca di hyperlink, a differenza dei nostri file che non sono tipicamente così.
Il LiFS permette di assegnare attributi e stabilire dei legami tra i file in modo standardizzato tramite una potente infrastruttura in grado di supportare una varietà di diverse applicazioni utente ed operazioni di sistema.
File di attributi supportano direttamente ricerche potenziate del file system. Link di attributi supportano un certo numero di recenti sforzi per estendere gerarchicamente la struttura delle directory per organizzare i file in modo personalizzato e più user-friendly.
L’utilizzo di link pesati tra i file può essere adottato per registrare i modelli di accesso che sono utili per ristabilire il recupero, l’accumulo, l’indicizzazione, e il ranking (graduatoria) dei risultati di ricerca. Infatti, questi link, forniscono un modello astratto per le interrelazioni tra i file precedentemente non disponibili a livello di file system. Dunque la caratteristica chiave del LiFS sono i link tra i file e gli attributi presenti su entrambi.
•Link: ogni link ha un file sorgente, un target file (bersaglio), ed un set di attributi non vuoto costituito da coppie chiave-valore. I link LiFS differiscono dai link POSIX in quanto i collegamenti LiFS rappresentano un rapporto tra file anziché di un semplice riferimento. Gli attributi dei link esprimono la natura di tale rapporto. Qualsiasi tipo di file può potenzialmente contenere un link a qualsiasi altro file. Di conseguenza, ogni file è anche una directory e la distinzione tra i file e le directory viene così eliminata. Oltre al semplice contenimento delle directory, i link possono esprimere una serie di altre relazioni utili come “incluso-in”, “riferito-a”, “dipendente-da”, “creato-da”, “aperto-da”, e molte altre. I link consentono, inoltre, viste personalizzabili dinamicamente per il file system basate sul tipo di link seguito.
•Attributi: entrambi i file e i link possono trasportare un numero di attributi limitato solo dalla memoria disponibile. La dimensione di ciascuna chiave e il suo corrispondente valore è libero, anche se chiavi troppo lunghe con rispettivi valore stringa possono influire sulla capacità di fornire un elevato livello di prestazioni. Sia la chiave che il valore membri di un attributo possono contenere dati arbitrari, compresi i dati binari. Questo permette alle applicazioni di avere metadati più ricchi, come miniature, anteprima video clip, e la cache dei file di spool di stampa senza il sovraccarico di una codifica speciale. Il principale vantaggio degli attributi è che essi consentono agli utenti, le applicazioni e il sistema stesso di annotare i file e i link. Questo permette una ricerca veloce ed efficace dei file, la classificazione, il partizionamento, e la manipolazione, e fornisce l’infrastruttura per altre caratteristiche che potrebbero non essere state considerate dal progettista del file system. Un caso particolare di attributi di file eseguibili sono i file trigger. Un file trigger su di un file specifica una coppia pattern/action. Un pattern specifica l’operazione di file system (un leggere, scrivere, ecc.) da eseguire sul file a cui è associato l’attributo. I file trigger sono un potente meccanismo che semplifica l’attuazione di una vasta gamma di servizi del file system come il versioning, il mirroring, ed altri.
Tutti i file in un file system hanno una storia. L’inizio della storia parte dalla loro provenienza. Non appena i file vengono manipolati e spostati si potrebbe automaticamente accumulare le informazioni riguardanti la loro storia. Provenienza e la storia forniscono dei metadati che possono essere molto utili per l’individuazione e l’organizzazione delle informazioni. Un file può essere il risultato di una computazione del calcolo, essere un estratto di una comunicazione personale, può essere stato creato localmente o essere scaricato dal Web (con informazioni di contesto Web si può determinare se una nuova versione di un file è disponibile o se le corrispondenti risorse Web sono scomparse). Conoscere i dettagli della storia di un file può essere utile in molti settori, tra cui il caching (file può essere spesso ripreso più volte dal Web), la volatilità e la permanenza, ed il monitoraggio delle intrusioni. La posta elettronica o gli applicativi di messaggistica istantanea sono in grado di spedire allegati quali voci del calendario, liste di cose da fare (to-do list), ed altri file agli utenti. La memorizzazione della provenienza di questi attributi o file link creati automaticamente crea un record utile a comprendere il contesto in cui questi file sono stati acquisiti. Le e-mail e le chat stesse possono essere esplicitamente connesse ai file che rappresentano i partner di corrispondenza.