Google File System: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
Collegamenti esterni: Aggiunto il template "Collegamenti esterni"
 
(36 versioni intermedie di 24 utenti non mostrate)
Riga 1:
{{File system
{{S|Informatica}}
|Nome = GFS
'''Google File System''' ([[GFS]]) è un file system proprietario distribuito sviluppato da [[Google]] per proprio uso.
 
[[cs:|NomeCompleto = Google File System]]
GFS è ottimizzato per le necessità dell'archiviazione dati di Google, la ricerca web, che può generare enormi quantità di dati che hanno bisogno di essere conservati.
}}
Il '''Google File System''' ([[GFS]]) è un [[file system]] proprietario distribuito e sviluppato da [[Google]] per proprio uso.
 
== Caratteristiche ==
I nodi sono divisi in 2 tipo: mMster e Chunkserver.
Il GFS è ottimizzato per l'immagazzinamento dei dati di Google.
I Chunkserver archiviano i file di dati, con ogni file suddiviso in un numero dissato di pezzi (chunk) di 64MB, similmente ai blocchi e i settori di un comune file system.
È chiamato anche "BigFiles", ed è stato una delle prime tecnologie sviluppate dai fondatori di Google [[Larry Page]] e [[Sergey Brin]], quando ancora studiavano a Stanford.
I dati di Google sono generati dai vari servizi offerti, tra cui la ricerca nel web, e necessitano di essere trattati e conservati con tecnologie non convenzionali, essendo di dimensioni enormi.
A causa della loro importanza vengono immagazzinati in modo permanente, in file di dimensioni di circa 100GB, che molto raramente vengono eliminati, sovrascritti o "ristretti".
I file vengono solitamente resi disponibili alla sola lettura.
Il file system è anche progettato e ottimizzato per l'avvio nei cluster computer di Google, i nodi che consistono di economici ed indispensabili computer, che richiedono precauzioni a causa dell'alto tasso di fallimento dei singoli [[nodo (informatica)|nodi]] e la conseguente perdita di dati.
 
=== VociTipi correlatedi nodi ===
Esistono due tipi di nodi: i nodi '''Master''' e i nodi '''Chunk'''.
*I Chunk sono macchine [[server]] che conservano i file di dati chiamati appunto "chunk". Ogni singolo file è di dimensione 64 MegaByte, similmente ai cluster o ai settori dei normali [[file system]].
Ogni chunk è assegnato alla stessa partizione a [[64 bit]], e la mappatura dei chunk dei vari file è salvata.
Ogni chunk, inoltre, è replicato periodicamente in ogni parte del [[rete di calcolatori|network]], con un'esistenza contemporanea di almeno tre copie dello stesso chunk, ma ancora di più per i file che hanno una grossa domanda o richiesta di maggiore disponibilità.
 
*I Master sono macchine server che hanno competenze diverse: solitamente non memorizzano i chunk, ma piuttosto tutti i [[metadato|metadati]] associati ai chunk, come le tabelle con la mappatura delle partizioni a 64 bit per registrare la posizione dei file e i file che vengono sostituiti, le posizioni delle copie dei chunk, e quali processi stanno leggendo e/o scrivendo particolari chunk.
*[[BigTable]], Base di dati implementata in GFS
Inoltre, prendono uno snapshot del chunk adatto alla replicazione, quando si rileva che il numero di copie di un chunk è minore del minimo prestabilito.
 
=== Metadati ===
[[categoria:File System]]
I [[metadati]] vengono conservati nello stato corrente dai server Master che periodicamente riceve aggiornamenti da ogni server Chunk (detti "Heart-Beat Messages").
[[categoria:Google]]
I permessi per le modifiche dei file sono controllati da un sistema e concessi per un tempo limitato, in cui nessun altro processo può accedere al chunk.
Il Chunkserver proprietario del chunk modificato, invia i cambiamenti ai chunkserver aventi le copie di [[backup]].
I cambiamenti non sono salvati finché tutti i Chunkserver non garantiscano il compimento dell'operazione.
I programmi accedono al chunk dopo aver ottenuto dal server Master la posizione del chunk desiderato; se il chunk non è utilizzato, il Master replica con le posizioni, e il programma riceve i dati direttamente dal chunkserver (similmente a [[Kazaa]] e i suoi supernodi).
 
== Implementazioni ==
[[cs:Google File System]]
Diversamente da molti [[File System]], il GFS non è implementato nel [[kernel]] del [[sistema operativo]], ma è disponibile come libreria.
[[de:Google File System]]
 
[[en:Google File System]]
==Voci correlate==
[[fr:Google File System]]
*[[MapReduce]]
[[ru:Google File System]]
*[[File system distribuito]]
[[zh:Google檔案系統]]
*[[BigTable]]
*[[SSTable]]
 
== Altri progetti ==
{{interprogetto}}
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{en}}[http://storagemojo.com/?page_id=152 Google File System Eval: Part I] su [http://storagemojo.com/ StorageMojo]
 
{{Portale|Google}}
 
[[Categoria:File system]]
[[categoriaCategoria:Google]]