Dovresti davvero sapere cos'è Andrew File System

Quando ho visto che i creatori di Andrew File System (AFS) erano stati nominati destinatari del premio ACM Software System Award da $ 35.000, mi sono detto "Fantastico, ricordo AFS dei tempi di aziende come Sun Microsystems ... per favore, don non chiedermi di spiegare che diamine è ".

Non chiedere neanche ai miei colleghi. Un rapido sondaggio in giro per l'ufficio di una mezza dozzina di loro ha rivelato per lo più sguardi vuoti alla menzione di Andrew File System, una tecnologia sviluppata nei primi anni '80 e intitolata a Andrew Carnegie e Andrew Mellon. Ma come indicherebbe il premio dell'Association for Computing Machinery, vale la pena conoscere AFS come tecnologia di base che ha spianato la strada a tecniche e applicazioni di cloud computing ampiamente utilizzate.

DI PIÙ: Tour vorticoso dei principali premi, onorificenze e premi della tecnologia

Mahadev "Satya" Satyanarayanan, un professore di informatica della Carnegie Mellon University che faceva parte del team AFS, ha risposto a una manciata di mie domande via e-mail sulle origini di questo file system distribuito scalabile e sicuro, sul suo significato e su dove si trova oggi. Satyanarayanan è stato riconosciuto da ACM insieme a John Howard, Michael Leon Kazar, Robert Nasmyth Sidebotham, David Nichols, Sherri Nichols, Alfred Spector e Michael West, che hanno lavorato in team attraverso la partnership dell'Information Technology Center tra Carnegie Mellon e IBM (quest'ultima di che per inciso ha finanziato questo premio ACM).

Esiste un modo per quantificare quanto sia diventato diffuso l'uso di AFS e quali tipi di organizzazioni lo hanno utilizzato di più? Qualsiasi senso di quanto continua ad essere utilizzato e per cosa?

In circa 25 anni, AFS è stato utilizzato da molte università statunitensi e non statunitensi. Anche molti laboratori nazionali, centri di supercalcolo e istituzioni simili hanno utilizzato AFS. Anche le società del settore finanziario (ad es. Goldman Sachs) e altri settori hanno utilizzato AFS. Un'istantanea utile della distribuzione di AFS è stata fornita dall'articolo "Uno studio empirico di un file system distribuito su vasta area" che è apparso in Transazioni ACM su sistemi informatici nel 1996. Tale documento afferma:

"Originariamente inteso come soluzione alle esigenze informatiche della Carnegie Mellon University, AFS si è espanso per unire circa 1000 server e 20.000 client in 10 paesi. Stimiamo che oltre 100.000 utenti utilizzino questo sistema in tutto il mondo. In ambito geografico e in numero di utenti e macchine, AFS è il più grande file system distribuito che sia mai stato creato e utilizzato seriamente ".

La figura 1 in quel documento mostra che AFS comprendeva 59 cellule educative, 22 celle commerciali, 11 celle governative e 39 celle al di fuori degli Stati Uniti al momento dell'istantanea. Oltre a questa grande distribuzione multi-organizzazione federata di AFS, ci sono state molte implementazioni non federate di AFS all'interno di singole organizzazioni.

Qual è stato il maggiore impatto di AFS sugli ambienti di cloud e enterprise computing di oggi?

Il modello di archiviazione dei dati nel cloud e consegna di parti di esso tramite la memorizzazione nella cache on demand ai margini è qualcosa che tutti danno per scontato oggi. Quel modello è stato inizialmente concepito e dimostrato da AFS ed è forse il suo impatto maggiore. Semplifica la complessità di gestione per il personale operativo, preservando le prestazioni e la scalabilità per gli utenti finali. Dal punto di vista degli utenti finali, la possibilità di avvicinarsi a qualsiasi macchina e utilizzarla come propria offre enorme flessibilità e praticità. Tutti i dati specifici di un utente vengono forniti su richiesta sulla rete. Mantenere sincronizzato tutti i computer che usi diventa banale. Gli utenti delle organizzazioni che hanno implementato AFS hanno riscontrato che questa capacità crea dipendenza. In effetti, è stata questa capacità che ha ispirato i fondatori di DropBox ad avviare la loro azienda. Avevano usato AFS al MIT come parte dell'ambiente Athena e volevano abilitare su larga scala questa capacità senza sforzo di mantenere sincronizzate tutte le macchine utilizzate da una persona. Infine, molti dei principi architettonici e delle tecniche di implementazione di AFS hanno influenzato molti altri sistemi negli ultimi decenni.

Come è nata la AFS in primo luogo?

Nel 1982, CMU e IBM hanno firmato un accordo di collaborazione per creare un "ambiente di personal computing distribuito" nel campus della CMU, che potrebbe essere successivamente commercializzato da IBM. La collaborazione effettiva è iniziata nel gennaio 1983. Un buon riferimento per informazioni su questi primi giorni è il documento CACM del 1986 di [James H.] Morris et al intitolato "Andrew: un ambiente di calcolo personale distribuito". Il contesto dell'accordo era il seguente. Nel 1982, IBM aveva appena introdotto il PC IBM, che si stava rivelando un grande successo. Allo stesso tempo, IBM era pienamente consapevole del fatto che l'uso su scala aziendale del personal computer richiedeva la capacità tecnica di condividere le informazioni in modo facile, sicuro e con controlli di accesso appropriati. Ciò era possibile nei sistemi di multiproprietà che erano ancora dominanti nei primi anni '80. Come raggiungere questo obiettivo nel mondo disperso e frammentato di un'impresa basata su PC non era chiaro nel 1982. Una grande parte dell'accordo di collaborazione IBM-CMU era lo sviluppo di una soluzione a questo problema. Più della metà del primo anno dell'Information Technology Center (1983) è stata dedicata al brainstorming sul modo migliore per raggiungere questo obiettivo. Attraverso questo processo di brainstorming, un file system distribuito è emerso intorno all'agosto 1983 come il miglior meccanismo per la condivisione di informazioni su scala aziendale. Come implementare un tale file system distribuito è diventato al centro dei nostri sforzi.

Cosa avrebbero fatto diversamente i creatori di AFS nel costruire AFS se avessero dovuto rifarlo di nuovo?

Mi vengono in mente almeno due cose: una piccola e una grande.

La piccola cosa è che il design e la prima evoluzione di AFS sono avvenuti prima dell'emergere di firewall basati su [network address translation (NAT)] nel networking. Questi sono oggi ampiamente utilizzati nelle case, nelle piccole imprese, ecc. La loro presenza rende difficile per un server avviare i contatti con un client al fine di stabilire un canale di richiamata. Se avessimo sviluppato AFS dopo l'uso diffuso di firewall basati su NAT, avremmo ripensato attentamente al modo migliore di implementare i callback in presenza di firewall NAT.

La cosa più grande ha a che fare con il World Wide Web. Il browser Mosaic è emerso nei primi anni '90 e Netscape Navigator un po 'più tardi. A quel punto AFS esisteva da molti anni ed era ampiamente utilizzato in molti luoghi. Se avessimo capito quanto prezioso sarebbe diventato il browser come strumento, avremmo prestato molta più attenzione ad esso. Ad esempio, un browser può essere utilizzato in AFS utilizzando "file: //" anziché "http: //" negli indirizzi. Tutte le potenti macchine di memorizzazione nella cache e di mantenimento della coerenza integrate in AFS sarebbero state accessibili tramite uno strumento di facile utilizzo che alla fine si è dimostrato estremamente prezioso. È possibile che il browser e AFS abbiano avuto un'evoluzione molto più simbiotica, come hanno fatto HTTP e i browser alla fine.

Sembra che forse ci siano resti di AFS vivi nel mondo open source?

Infatti. OpenAFS continua ad essere un progetto open source attivo. Molte istituzioni (inclusa la CMU) continuano a utilizzare AFS per l'uso in produzione e questo codice è ora basato su OpenAFS.

Inoltre, il mio lavoro sul Coda File System è stato annullato dalla versione di AFS del novembre 1986. Coda era di provenienza aperta a metà degli anni '90. Quella base di codice continua ad essere viva e funzionale oggi. Sepolti a Coda sono idee e codice reale dei primi AFS.

Qualcuno di voi ha piani spettacolari per quello che faranno con il premio in denaro?

Ancora niente di concreto. Abbiamo discusso della possibilità di donare i fondi a una causa di beneficenza.

Unisciti alle community di Network World su Facebook e LinkedIn per commentare argomenti che sono importanti.