Universitatea Alexandru Ioan Cuza Facultatea de Informatică

Size: px
Start display at page:

Download "Universitatea Alexandru Ioan Cuza Facultatea de Informatică"

Transcription

1 Universitatea Alexandru Ioan Cuza Facultatea de Informatică Conf. Dr. Lenuța Alboaie

2 Cuprins Sisteme de fisiere caracteristici Sisteme de fisiere distribuite Vocabular Cerinte Aspecte Sa schitam un sistem de fisiere distribuite simplificat Studii de caz: Sun Network File System, AFS, GFS, HDFS 2

3 Sisteme de fisiere Caracteristici Sistem de stocare permanenta a datelor De obicei, aflat in partea de sus al nivelelor mediilor de stocare fizica? Baze de date? Divizat in unitati logice numite files Adresabil prin filename ( test1_cloud.txt ) Contin: data si attributes Data accesibila prin operatii de citire/scriere Attributes organizate sub forma unei inregistrari File length Creation timestamp Read timestamp Managmentul este realizat uzual de sistemul de fisiere Write timestamp Reference count este responsabil pentru organizarea, stocarea, regasirea, numirea, partajarea si protectia fisierelor Owner File type Access control list 3

4 Organizarea Sisteme de fisiere Caracteristici High-Level Fisierele sunt organizate in mod ierarhic (e.g. folders Windows, directories Unix)? path relativa absoluta /home/adria/test1_cloud.txt links (symlinks, shortcuts, ) furnizeaza modalitati multiple de acces la fisiere Alte sisteme de fisiere pot fi mounted si vazute ca subierarhii 4

5 Organizarea Sisteme de fisiere Caracteristici Low-Level File data si meta-data sunt stocate separat Meta-data: informatii stocate de sistemul de fisiere (atributele fisierului, directoarele, etc) Descriptorii de fisiere si meta-data sunt stocate in inodes Meta-data pote fi replicata pentru a creste gradul de reliability (incredere) al sistemului Consideratii de proiectare?sistemul de fisiere trebuie sa ofere acces rapid sau de incredere? 5

6 Sisteme de fisiere Caracteristici Furnizeaza o interfata, care elimina grija programatorilor in ceea ce priveste modul de alocare a stocarii Exemplu de operatii principale asupra fisierelor, disponibile aplicatiilor din sistemele UNIX filedes=open(filename, mode) fildes=creat(filename, mode) status=close(fildes) count=read(filedes, buffer, n) count=write(filedes, buffer,n) pos=lseek(filedes, offset, whence) status=unlink(name) status=link(filename1, filename2) status=stat(name, buffer) 6

7 Sisteme de fisiere Caracteristici Exemplu de schema a unei structuri organizate pe module ale unui sistem de fisiere - FS (ne-distribuit) pentru un sistem de operare uzual: Directory module File module Access control module File access module Block module Device module Fiecare nivel depinde de nivelul inferior Implementarea unui sistem distribuit implica aceste componente + componente care se ocupa de comunicarea client-server, sistemul de numire (naming system) si de localizare al fisierelor distribuite 7

8 Sisteme de fisiere distribuite Concepte Un sistem de fisiere distribuit (Distributed File System (DFS)) are ca scop partajarea de informatii (in forma de fisiere) intr-un sistem distribuit Gestioneaza o multime de dispozitive de stocare dispersate Pe ansamblu, stocarea este data de dispozitive diferite aflate la distanta => DFS consta din componente software multiple pe masini diferite, ruland ca un singur sistem 8

9 Vocabular: Sisteme de fisiere distribuite Concepte Resursele pentru o masina sunt local pentru respectiva masina Resursele de pe alta masina sunt remote Service entitate software care ruleaza pe una sau mai multe masini si furnizeaza o functie particulara unor clienti necunoscuti apriori Server serviciu software ruland pe o masina Client proces care invoca un serviciu prin client interface client interface pentru un file service este format din primitive (create, delete, read, write, ) Interfata client a DFS trebuie sa fie transparenta => Clientii trebui sa perceapa DFS in acelasi mod in care percep un FS centralizat; toate problemele care tin de distribuire sunt ascunse la un nivel inferior 9

10 Sisteme de fisiere distribuite Cerinte Transparenta (Transparency) Access transparency Programele client nu sunt constiente de modul de distribuire a fisierelor Programele ce opereaza asupra fisiserlor locale, pot opera fara modificari si asupra resurselor remote Location transparency Fisiere sau grupuri de fisiere pot fi relocalizate fara schimbarea pathname-ului Mobility transparency Nici programele client si nici tabele de administrare in nodurile client nu trebuie modificate daca fisierele au fost mutate Performance transparency Programele client trebuie sa functioneze satisfacator, chiar daca incarcarea serviciului variaza intr-un anumit interval Scaling transparency Serviciul poate fi extins pentru a face fata la un numar mai mare de incarcari si dimensiuni ale retelei 10

11 Sisteme de fisiere distribuite Cerinte Controlul concurentei (Concurrency control) Modificarile asupra unui fisier la un client nu interfereaza cu modificarile realizate de alt client simultan Replicarea (Replication) Se permite copierea fisierului pe masini multiple => scalabilitatea serviciului, cresterea tolerantei la erori, cresterea performantei Nu toate sistemele de fisere suporta replicarea, dar majoritatea suporta caching de fisiere sau portiuni de fisiere Principala problema: consistenta Provocare: consistenta versus disponibilitate versus performanta Consistenta (Consistency) Sistemele de fisiere conventionale ofera modelul one-copy update semantics: continutul fisierului este vazut de toate procesele concurente ca si cum exista un singur fisier. Daca exista replicare (sau caching) exista o intarziere inevitabila in propagarea modificarilor 11

12 Sisteme de fisiere distribuite Cerinte Eterogenitatea hardware si a sistemului de operare => openess Interfata serviciului trebuie sa asigure ca softul client/server poate fi implementat pe sisteme diferite Toleranta la erori (fault tolerance) Sistemul de fisiere trebuie sa functioneze, indiferent de eroarea clientului sau serverului Securitatea (Security) Uzual, sistemele de fisiere furnizeaza un control al accesului bazat pe ACL (Access Control List) In unele DFS este necesara autentificarea cererii clientului Eficienta (Effieciency) Se doreste furnizarea puterii si a unei generalitati, a unui nivel de performanta cel putin egala cu cel al FS conventionale Metrici folosite: timpul de raspuns, throughput, utilizarea sistemului etc. 12

13 Sisteme de fisiere distribuite Aspecte Scheme de nume posibile Fisierele pot fi denumite printr-o combinatie de host si local name Se garanteaza un nume unic, dar nu se asigura transparenta locatiei sau independenta de locatie Acelasi nume merge si local si pentru fisiere remote Directoarele remote sunt mounted in directoare locale Montarea se face explicit, fisierele sunt independente de locatie Sistemul local pare a avea o structura coerenta Ex: Sun NFS O structură globala ce asigura nume unic pentru fiecare fisier DFS este construit in acelasi mod ca un sistem de fisiere local Se asigura independenta de locatie 13

14 Sisteme de fisiere distribuite Aspecte Caching Reduce traficul in retea prin retinerea blocurilor de pe disc recent accesate, a.i. accesul repetat la aceeasi informatie poate fi realizat local Datele pot fi tinute de exemplu in: in memoria locala Se pot folosi statii de lucru fara disk Viteza crescuta sau pe disk-ul local Siguranta crescuta Problema: consistenta cache-ului: pastrarea consistenta a copiilor in raport cu fisierele de pe masinile server 14

15 Sisteme de fisiere distribuite Aspecte Servicii stateful versus stateless Stateful Serverul tine date despre cererile clientilor Stateless Mentine informatii privind fisierele deschise de un client, indentificatorul conexiunii, cache-ul serverului Memoria trebuie recuperata atunci cand un client inchide sau esueaza Fiecare cerere a clientului ofera toate informatiile necesare serverului (e.g. nume fisier, offset, etc).» Serverul poate tine informatii partiale despre client, dar nu este obligatoriu => Performanta: buna pentru stateful nu este nevoie de open/close la fiecare cerere se poate face apel la un read-ahead cache => un server stateful pierde totul atunci cind esueaza => slaba rezistenta la erori -serverul trebuie sa interogheze clientii pentru actualizarea starii -serverul isi goleseste cache-ul => Un server stateless se reincarca fara a se recupera starea anterioara 15

16 Sa schitam un sistem de fisiere distribuit Componente: Flat file service Directory service furnizeaza o interfata cu operatii accesate de catre client, si care permit accesul la fisiere Client module furnizeaza o interfata cu operatii similare ca cele dintr-un FS conventional [G. Coulouris, et. al, Distributed Systems] 16

17 Sa schitam un sistem de fisiere distribuit Flat file service (FFS) Are ca scop implementarea de operatii asupra continutului fisierelor UFID (Unique File IDentifiers) identifica in mod unic fisierele in sistemul distribuit, in toate cererile existente Exemplu de interfata oferita de FFS si folosita prin RPC de clienti: Read(FileID,i,n)->Data Write(FileID, i, Data) Create()->FileId Delete(FileID) GetAttributes(FileId)->Attr SetAttributes(FileId,Attr) Citeste o secventa de pana la n itemi, incepand de la itemul i si returneaza in Data 17

18 Sa schitam un sistem de fisiere distribuit Flat file service (FFS) Observatii: In comparatie de exemplu cu o interfata Unix, nu avem operatii de open(), close() fisierele sunt accesate prin UFID read(), write() includ un parametru care specifica un loc in fisier unde se incepe operatia Pentru a se asigura fault tolerance, interfata FFS ofera: Repetable operations» clientii pot repeta apelul la care nu au primit raspuns Stateless servers» Pot fi restartate dupa esec, fara a fi necesara restaurarea unei stari de catre client sau server 18

19 Sa schitam un sistem de fisiere distribuit Controlul Accesului Daca serverul nu poate retine drepturile de acces (este stateless) => solutii: Verificarea accesului se realizeaza cand numele fisierului este convertit la UFID, rezultatele sunt codificate sub forma de capabilities <resource identifier, operations, authentification code> si care va fi returnat clientului pentru cereri ulterioare Identitatea utilizatorului este trimisa la fiecare cerere, si serverul face verificarea accesului la fiecare operatie Metoda adoptata de NFS, AFS, etc. Obs. In ambele cazuri poate avea loc furtul identitatii, problema care se rezolva cu ajutorul semnaturilor digitale (e.g. Kerberos ofera o schema de autentificare ) 19

20 Sa schitam un sistem de fisiere distribuit Directory Service (DS) Scopul principal: furnizeaza maparea intre text names ale fisierelor si UFID Este client al serviciului FFS Exemplu de interfata oferita de DS Lookup(Dir,Name)->FileId (throws Not Found) AddName(Dir, Name, FileId) (throws NameDuplicate) UnName(Dir, Name) (throws NotFound) Localizeaza text name in director si returneaza UFID corespunzator Daca Name nu este in director, adauga si actualizeaza atributele fisierului. 20

21 Sa schitam un sistem de fisiere distribuit Client module Ruleaza pe fiecare computer client, integrand si extinzand operatiile FFS si DS sub o interfata, disponibila programelor la nivel utilizator Tine informatii despre localizarea in retea a FFS si a proceselor DS Poate juca un rol important in cresterea performantelor, prin implementarea unui mecanism de caching Studii de caz: SNFS, AFS, CODA, Lustre, GFS, GPFS, HDFS, Ceph, KFS, Panasas, PVFS2, RGFS, SMB (CIFS), xfs, WebDAV, 21

22 Sun Network File System Arhitectura NFS Nota: discutia se va purta avand ca baza implementarea UNIX 22

23 Sun Network File System - V3 NFS este atat o implementare cat si o specificatie Protocolul NFS este independent de SO, dar a fost initial dezvoltat pentru retele cu sisteme UNIX Scopul: partajarea de sisteme de fisiere in mod transparent Modelul: client-server (pentru NFS un nod poate juca ambele roluri). Modulul NFS Server se gaseste in kernelul fiecarui computer care joaca rol de server NFS Cereri care referentiaza fisiere aflate intr-un sistem remote sunt trimise de clientul NFS prin apeluri RPC la serverul NFS Comunicare: protocolul NFS este compatibil si cu UDP si cu TCP VFS (Virtual File System) asigura integrarea Acest modul, adaugat kernelului, face distinctia intre identificatorii de fisiere din NFS, identificatorii de fisiere folositi in sistemul local sau in alte sisteme de fisiere asigura transmiterea cererilor la sistemul de fisiere adecvat (sistemul de fisiere local, remote, etc) 23

24 Sun Network File System - V3 Identificatorii de fisiere in NFS poarta numele de file handlers Sunt opaci pentru clienti si contin informatii necesare serverelor Exemplu: in implementarea UNIX a NFS, este format din: filesystem identifier+ i-node number of file +i-node generation number filesystem identifier este numarul unic alocat unui file system i-node generation number este necesar deoarece un i-node este reutilizat dupa stergerea fisierului Mecanism: clientul obtine file handle pentru sistemul remote atunci cind se face montarea File handle sunt trimisi de server clientului in urma operatiilor de lookup, create, mkdir File handle sunt trimisi de la client la server in lista de argumente a tuturor operatiilor de pe server Nivelul VFS, detine: o structura VFS pentru fiecare sistem de fisiere montat Leaga sistemul remote de directorul local unde este montat cate un v-node pentru fiecare fisier deschis V-node contine un indicator: fisier local (=> v-node contine un i-node (in implementarea UNIX) sau fisier remote (=> v-node contine un file handle) 24

25 Sun Network File System - V3 Client-ul NFS Furnizeaza o interfata ce poate fi utilizata de programele conventionale (vezi slide anterior) Este integrat in kernel, si nu furnizat ca o biblioteca ce poate fi incarcata in procesele client Programele utilizator pot accesa fisiere via apeluri de sistem UNIX, fara recompilare Un modul client serveste toate procesele utilizator, manipuland si un cache partajat continand block-uri recent utilizate Acest modul comunica cu VFS Operatii: transfera block-uri de fisiere inspre/dinspre server si face caching la acestea in memoria locala atunci cind este posibil Obs. Se partajeaza acelasi buffer cache folosit de sistemul input-output local 25

26 Sun Network File System - V3 Serverul NFS RFC 1813 Interfata oferita cuprinde si caracteristici din cea proiectata in modelul discutat in Slide-urile Operatiile asupra fisierelor si directoarelor sunt integrate intr-un singur serviciu Creare si insertia de nume de fisiere in directoare este realizata printr-o singura operatie create (ce are ca argumente nume fisier si file handle corespunzator directorului) Alte operatii NFS: create, remove, rename, link, symlink, readlink, mkdir, rmdir, readdir, statfs similare in general cu cele din UNIX Serviciul de mount Ruleaza la nivelul utilizator pe fiecare computer - server NFS Clientii folosesc o versiune modificata a comenzii UNIX mount, pentru montarea sistemului de fisiere remote Mecanism: comanda mount modificata comunica cu serviciul de mount de pe host-ul remote folosind mount protocol; acesta este un protocol RPC, care pe baza caii directorului va returna file handle-ul corespunzator catre clientul NFS si catre nivelul VFS 26

27 Sun Network File System V3 Caching Implementarea NFS prevede mecanism de caching si la nivelul clientului si la nivelul serverului Server NFS Mentinerea in cache-ul serverului a block-urilor citite nu ridica probleme de consistenta Pentru scriere, exista doua operatii: Write through caching: data in operatiile de write primite de la clienti este stocata in cache-ul server-ului si scrisa pe disc inainte de raspunsul trimis clientului => clientul este sigur ca datele sunt stocate persistent Obs. Primirea unui numar mare de operatii write poate duce la bottleneck (gâtuire- blocaj) Data in operatiile de write sunt stocate doar in memoria cache; stocarea persistenta se face doar in urma unei operatii commit Clientul NFS face cache la rezultatele operatiilor read, write, getattr, lookup, readdir pentru reducerea numarului de cereri trimise serverului este responsabil de sondarea serverului pentru actualizarea cache-ului 27

28 Sun Network File System V3 vs V4 NFS version 4.1 (RFC 5661), 2010 [ 28

29 Sun Network File System V4 Versiunea 4 (RFC 3010, RFC 3530) - influente din AFS si CIFS (Common Internet File System) Este un protocol stateful Intr-un mod similar cu versiunile anterioare avem server NFS, care printrun mecanism RPC furnizeaza servicii clientilor NFS Diferente structurale majore: Eliminarea protocoalelor auxiliare In NFS 2 si 3, protocolul Mount e utilizat pentru obtinerea FileHandle, si operatia de file locking e obtinuta cu protocolul Network Lock Manager In NFS 4 - integrarea acestora intr-un singur protocol peste TCP Introducerea procedurilor COMPOUND RPC ce permite clientului gruparea operatiilor asupra fisierului intr-o singura cerere; serverul grupeaza operatiile de raspuns Obs. Evaluarea operatiilor se opreste la prima eroare, deci se recomanda gruparea doar a operatiilor inrudite Introducerea operatiilor stateful open si close In NFS 4,.,.. nu mai au asociata o semantica speciala 29

30 Sun Network File System V4 Protocolul NFS 4 asigura un nivel de securitate ridicat bazat pe arhitectura de autentificare extensibila GSS-API (Generic Security Services - Application Program Interface) NFS 4 definieste un model de control al accesului compatibil cu Windows NT si UNIX NFS 4 suporta replicarea si migrarea Internationalizare: numele fisierelor folosite in operatii sunt stringuri UTF-8 Modelul de sistem de fisiere si partajare Un file system reprezinta implementarea unui spatiu de nume continind fisiere Un file system are asociat un file system identifier fisd 128-biti per server Filehandle identifica in mod unic un fisier pe server In NFS 4 exportul sistemelor de fisiere se face similar ca in versiunile anterioare Pseudo-file systems 30

31 Sun Network File System V4 Caching si delegare Caching pe partea de client Cachingul fisierelor, atributelor, directoarelor seamana cu cel din versiunile anterioare Atributele si directoarele sunt puse in cache pe o durata stabilita de client; la urmatoarea utilizare, dupa trecerea timpului predefinit clientul interogheaza serverul dupa potentiale modificari Pentru fisiere tehnica close-to-open consistency La deschiderea unui fisier, clientul interogheaza serverul pentru a vedea potentiale modificari In functie de raspuns, actualizeaza sau nu cache-ul La inchiderea fisierului, clientul trimite modificarile la server Open delegation In NFS 4, daca un fisier este referentiat de un singur client, responsabilitatea pentru open/close, operatii de locking pot fi lasate (delegates) in seama clientului => eliminarea verificarii periodice a consistentei cache-ului de catre client => reducerea traficului si a latency => eficienta maxima pentru operatii de file locking dese 31

32 Sun Network File System V4 Locking In NFS 2,3 cu NLM (Network Lock Manager) care pornea de la premisa ca transmisia in retea este sigura => probleme in tratarea erorilor => lock-uri orfane pe server In NFS 4 s-a introdus lease per managementul lock-urilor Lease = este o perioada de timp acordata de server clientului, pentru controlul starii unui fisier sau pentru delegare Clientul este responsabil pentru reinoirea perioadei de lease Expirarea lease este considerata esec in comunicarea clientserver, si serverul inlatura lock-ul clientului 32

33 AFS - Andrew File System Pornit de la un proiect de cercetare de la CMU (Carnegie Mellon University) si sustinut de IBM A influentat multe DFS: NFS, Coda, DCE/DFS etc. Scopul initial: suport pentru partajare pe scara larga, prin minimizarea comunicatiei client-server (printr-un mecanism de caching la nivelul clientilor) Caracteristica dominanta => Scalabilitate Caracteristici AFS (mai neobisnuite): Whole-file serving: intregul continut al directoarelor si fisierelor sunt transmise de serverele AFS clientilor (in AFS 3, fisierele sunt transferate in bucati de 64-Kbytes) Whole-file caching: odata ce o copie a fisierului sau a unei bucati a fost transferata, aceasta este stocata in cache pe disk-ul local 33

34 AFS - Andrew File System Aspecte considerate in proiectarea AFS: Fisierele partajate care nu sunt frecvent actualizate (cele continand codul comenzilor UNIX, biblioteci, etc) sau pentru fisiere accesate de un singur utilizator, copiile din cache sunt valide o perioada mai lunga de timp Cache-ul local poate ocupa o parte substantiala din spatiul de pe disk al fiecarei statii Fisierele sunt in general de dimensiuni mici Operatiile de citire sunt mai intalnite decat cele de scriere (in jur de 6 ori) Accesul secvential este obisnuit, cel random este rar; daca un fisier a fost referentiat recent atunci creste probabilitatea de a fi referentiat din nou; Majoritatea fisierelor sunt modificate (write/read/ ) de obicei de un singur utilizator 34

35 AFS - Andrew File System Scenariul general de functionare: La un apel open() pentru un fisier din spatiul de fisiere partajat, care nu este in cache-ul local, este localizat serverul detinator al fisierului si este trimisa o cerere de copiere a acestuia Copia este stocata in sistemul de fisiere local pe computerul clientului, copia este deschisa si descriptorul (de fisier unix) este returnat clientului Operatii (read,write, etc) sunt aplicate copiei locale La apelul close(), daca au fost modificari asupra copiei locale, continutul este trimis la server, care va face update la continut si la timestamp-ul corespunzator.? Cum controleaza AFS situatia in care un apel close sau open al unui client face referire la un fisier partajat?? Cat spatiu este alocat pentru cache?? Cum controleaza AFS consistenta, cand un fisier este actualizat de mai multi clienti? 35

36 AFS - Andrew File System [G. Coulouris, et. al, Distributed Systems] 36

37 AFS - Andrew File System Aspecte arhitecturale Vice este numele software-ului ce ruleaza pe server la nivelul utilizator (functionalitatile flat file service vezi slide 15) Venus este procesul care ruleaza pe computerul client si corespunde modulului client (vezi slide 15) Face mangementul structurii ierarhice de directoare Kernelul fiecarei statii client/server este o versiune modificata de BSD Unix: este proiectat sa intercepteze apeluri de sistem open, close, etc care se refera la fisiere aflate in spatiul de fisiere partajate si transmiterea acestor apeluri la procesul Venus Una din partitiile de fisiere ale disk-ului local de pe o statie de lucru va tine copii ale fisierelor din spatiul partajat; Venus face managementul acestui cache Fiecare fisier/director din spatiul de fisiere partajate are un identificator unic FID (96-bit file identifier); programele client lucreaza cu numele fisierelor, AFS in comunicarea Venus-Vice lucreaza cu FIDs 37

38 AFS - Andrew File System Implementarea de apeluri de sistem in AFS [G. Coulouris, et. al, Distributed Systems] 38

39 AFS - Andrew File System Consistenta cache-ului Callback promise este un token eliberat de Vice, prin care garanteaza ca va notifica pe Venus daca fisierul pe care l-a trimis va fi modificat de alt client Are doua stari: Valid Daca Venus face managementul unui apel open, verifica existenta fisierului in cache; daca token-ul asociat este cancelled, atunci trebuie ceruta o noua copie de la serverul Vice; daca token este valid, atunci se poate utiliza copia locala Cancelled Cand un server actualizeaza un fisier, notifica toate procesele Venus printr-un callback (apel RPC); procesele Venus, seteaza acest token pe cancelled Daca o statie de lucru a fost repornita, Venus incearca sa mentina cat mai multe fisiere in cache, dar nu poate garanta ca tokenurile callback promise sunt corecte => inainte de utilizarea fiecarui fisier din cache, Venus genereaza o cerere de validare continand atributul timestamp de modificare al fisierului; daca timestamp arata ca fisierul este neactualizat, serverul trimite cancelled si tokenul este setat cancelled 39

40 GFS Google File Systems Sistem de fisiere distribuit, scalabil De ce nu un DFS existent? Problemele Google sunt diferite decat cele intalnite in mod normal Stocarea redundanta a unei cantitati imense de date pe computere ieftine si nesigure Incarcare diferita si prioritati de proiectare Sursa de inspiratie? Observatiile Google asupra mediului tehnologic Aplicat unde? Search Engine, Google Video, Gmail, Google Earth, Maps, Google Products, Google News,. => Applicatiile Google sunt proiectate pentru GFS 40

41 GFS Google File Systems Ipoteze in Design Commodity components Hardware la pret scazut (e.g. masini linux) Nodurile pot cadea => dar nu trebuie sa fie afectat intregul sistem Fisiere de dimensiune mare DFS va manipula fisiere mari ( giga- sau penta-bytes) Multe obiecte distribuite in sistemul distribuit High bandwidth Mai importanta decat latenta Patternul de acces in DFS Modificari rare asupra fisierelor deja scrise Majoritatea fisierelor sunt modificate prin appending, si nu prin acces random Doua tipuri de operatii read Citiri consecutive de cantitati mari de date Rareori sunt citiri random File accesibility Acces concurent asigurat clientilor multipli (trebuie sincronizat pentru a mentine consistenta fisierului) 41

42 GFS Google File Systems Operatii suportate in GFS Concurrent appending Masini multiple pot scrie in mod concurent asupra aceluiasi fisier in acelasi timp Interfata GFS Organizarea ierarhica de fisiere Identificarea se face prin pathname Snapshot Permite crearea de copii ale fisierului/directorului =>se permite crearea de checkpoint-uri 42

43 GFS Google File Systems Arhitectura - Un cluster GFS este format din: un singur server Master, servere Chunk (chunkserver) multiple, clienti multipli - Fisierele sunt divizate in chunk-uri de dimensiuni fixate (64 MB) - Fiecare chunk este identificat de un handle unic de 64 biti, asignat de master in momentul crearii - chunkserver stocheaza pe discurile locale aceste chunk-uri ca si fisiere Linux - Reliability: fiecare chunk este replicat pe mai multe chunkserver [ ] 43

44 GFS Google File Systems Arhitectura - Serverul Master - mentine toate metadatele asociate sistemului de fisiere: spatiile de nume, informatii legate de controlul accesului, maparea file-to-chunk, locatia curenta a chunk-urilor. - Controleaza mecanismul de Garbage collection a chunk-urilor orfane, migrarea chunk-urilor intre servere - Comunica periodic cu fiecare chunkserver (mesaje HeartBeat): dand instructiuni si colectind starea acestuia - Obs. Nici la client si nici la chunkservere nu exista mecanism de cache a datelor din fisiere 44

45 Arhitectura GFS Google File Systems [ ] Avantaje: -Nevoia clientilor de a interactiona cu master-ul este redusa, deoarece operatiile de read/write pe acelasi chunk necesita doar o cerere initiala la master pentru aflarea locatiei chunk-ului -Incarcarea in retea este redusa prin mentinerea unei conexiuni TCP persistenta cu chunkserver pentru o perioada mai lunga de timp 45

46 GFS Google File Systems Metode de acces Citirea - Clientul translateaza numele fisierului si offset-ul specificat de aplicatie intr-un chunk index, pe baza dimensiunii fixe a chunkului - Clientul trimite master-ului o cerere continind numele fisierului si chunk index - Masterul raspunde cu un chunk handle si locatiile copiilor; clientul mentine in cache datele avind ca si cheie: nume fisier si chunk index - Clientul trimite cererea (continind chunk handle si pozitia din chunk) la una dintre copii (cea mai aproape) - Urmatoarele operatii de citire a aceluiasi chunk nu mai necesita interactiuni client-master (pana cand informatia din cache expira sau fisierul este redeschis) 46

47 GFS Google File Systems Metode de acces Scrierea Clientul translateaza numele fisierului si offset-ul specificat de aplicatie intr-un chunk index, pe baza dimensiunii fixe a chunk-ului Clientul trimite master-ului o cerere continind numele fisierului si chunk index Masterul raspunde cu un chunk handle si locatiile copiilor; Clientul trimite datele tuturor copiilor; data este stocata in bufferul intern al chunkserver-ului Clientul trimite o cerere de write la primary (una din copiile chunk-ului < chunk leases); se asigneaza un numar la fiecare cerere de scriere primita si realizeaza scrierea datelor pe care le stocheaza in aceasta ordine Primary trimite cereri de write la celelalte copii; acestea vor raspunde dupa ce vor executa operatia, si apoi primary va raspunde clientului [ ] 47

48 GFS Google File Systems Disponibilitatea sistemului - GFS suporta Fast Recovery: master si chunkserver se pot restaura in cateva secunde, indiferent de cum au esuat (nu se face distinctie intre normalanormal) Integritatea datelor - GFS foloseste un mecanism bazat pe sume de control pentru asigurarea datelor scrise/citite - Un checksum de 32 de biti este inclusa in fiecare bloc de 64KB Replicare - GFS implica atat replici chunk cat si replici ale master-ului (shadow master) Consistenta - Sansa ca un client sa citeasca dintr-o replica neactualizata (e.g. datorata caderii chunkserverului si pierderea unor operatii) este mica datorita mecansimului de timeout asociat cache-ului 48

49 GFS Google File Systems Experiment: Micro GFS cluster master 16 chunkservers 16 clients Hardware Dual 1.4GHz PIII CPU 2GB RAM 2 80GB 5400RPM Disk 100M bps Ethernet Switch conectat la o retea 1 Gbps [Zhijin Li, Cloud computing, University of Illinois, 49

50 Experiment- operatii de Read N clienti citesc aleator regiuni de 4MB din fisiere de 320 GB file, de 256 de ori. Rata de citire scade usor, datorita probabilitatii citirii de la acelasi chunkserver. [Zhijin Li, Cloud computing, University of Illinois]

51 Experiment operatii de Write N clienti scriu simultan in N fisiere; fiecare client scrie 1 GB in cate un nou fisier Performante scazute datorita retelei OBS. Scrierea se realizeaza pe 3 chunkservere [Zhijin Li, Cloud computing, University of Illinois]

52 Experiment operatii de Append N clients realizind append unui singur fisier Se incepe la 6.0 MB/s pentru un client si scade pana la 4.8 MB/s pentru 16 clienti [Zhijin Li, Cloud computing, University of Illinois]

53 Bibliografie George Coulouris, Jean Dollimore, Tim Kindberg, Distributed Systems- Concepts and design, Addison Wesley, 2001 Andrew S. Tanenbaum, Maarten van Steen, Distributed Systems, Principles and Paradigms, Second Edition, 2007 Ajay D. Kshemkalyani, Mukesh Singhal, Distributed Computing - Principles, Algorithms, and Systems, Cambridge University Press Andy Wang, Advanced Operating Systems course

54 Bibliografie Tom White, Hadoop-The definitive Guide, Second edition, O Reilly, 2011 Andrew S. Tanenbaum, Maarten van Steen, Distributed Systems, Principles and Paradigms, Second Edition, 2007 Ajay D. Kshemkalyani, Mukesh Singhal, Distributed Computing - Principles, Algorithms, and Systems, Cambridge University Press Gantz et al., The Diverse and Exploding Digital Universe, March Mahesh Bharath Keerthivasan, Review of Distributed File Systems:Concepts and Case Studies, Dept. of Electrical & Computer Eng., University of Arizona, Tucson and Mike Cafarella and Doug Cutting, Building Nutch: Open Source Search, ACM Queue, April 2004, queue.acm.org/detail.cfm?id= Zhang S., Distributed Filesystems Review,Online Presentation, The Hadoop Distributed File System by Konstantin Shvachko, Hairong Kuang, Sanjay Radia, and Robert Chansler (Proceedings of MSST2010, May 2010,

55 Rezumat Sisteme de fisiere caracteristici Sisteme de fisiere distribuite Vocabular Cerinte Aspecte Sa schitam un sistem de fisiere distribuit simplificat Studii de caz: Sun Network File System, AFS, GFS, HDFS 55

56 Universitatea Alexandru Ioan Cuza Facultatea de Informatică Întrebări?

Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct.

Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct. Fişiere in C++ Un fişier este o colecţie de date indicat printr-un nume şi o extensie. Numele este desparţit de extensie prin punct. Avantajul lucrului cu fisiere este evident, datele rezultate în urma

More information

Utilizarea formularelor in HTML

Utilizarea formularelor in HTML Utilizarea formularelor in HTML Formulare Un formular este constituit din elemente speciale, denumite elemente de control (controls), cum ar fi butoane radio, butoane de validare, câmpuri text, butoane

More information

Lenuta Alboaie Reţele de calculatoare

Lenuta Alboaie Reţele de calculatoare Programarea in retea - OOB- Lenuta Alboaie adria@info.uaic.ro 1 Cuprins Trimiterea si receptarea datelor in regim 2 Ideea: in timpul unei conexiuni cind sunt transmise date ( inband data ), si daca la

More information

Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP

Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiectarea Rețelelor 32. Controlul modelelor de trafic in retea prin alterarea atributelor BGP De ce ebgp? De ce ibgp?

More information

Laborator 5 Instrucțiunile repetitive

Laborator 5 Instrucțiunile repetitive Laborator 5 Instrucțiunile repetitive Instrucțiunea for Instrucțiunea for permite repetarea unei secvențe de instrucțiuni atâta timp cât o condiție este îndeplinita. În plus, oferă posibilitatea execuției

More information

Alocarea memoriei în C sub Linux

Alocarea memoriei în C sub Linux Costel Aldea Alocarea memoriei în C sub Linux Sunt trei funcţii C standard care se pot folosi pentru a aloca memorie: malloc(), calloc(), si realloc(). Prototipurile lor, după cum sunt definite în stdlib.h:

More information

CONFIGURAREA UNUI SERVER IRC IN LINUX. Bica Bogdan *

CONFIGURAREA UNUI SERVER IRC IN LINUX. Bica Bogdan * CONFIGURAREA UNUI SERVER IRC IN LINUX Bica Bogdan * In this exemple i show how to configure an irc server based on ircd dameon named ircu.this is the main file name ircd.conf and the most important.configure

More information

Google in Cloud - Aplicatii -

Google in Cloud - Aplicatii - Universitatea Alexandru Ioan Cuza Facultatea de Informatică Conf. Dr. Lenuța Alboaie adria@info.uaic.ro Google in Cloud - Aplicatii - Cuprins Google App Engine Standard Environment Flexible Environment

More information

COLEGIUL TEHNIC VICTOR UNGUREANU CÂMPIA TURZII INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003

COLEGIUL TEHNIC VICTOR UNGUREANU CÂMPIA TURZII INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003 INSTALAREA SI CONFIGURAREA UNUI SERVER DNS PE WINDOWS SERVER 2003 DNS (Domain Name Service) este un protocol care translateaza numele de domenii in adrese IP. De exemplu numele de domeniu www.google.ro

More information

Rezolvare fişă de laborator Java Iniţiere în limbajul Java

Rezolvare fişă de laborator Java Iniţiere în limbajul Java Rezolvare fişă de laborator Java Iniţiere în limbajul Java Ex 1: Scrie următorul program Java folosind JCreator apoi încercă să-l înţelegi. public class primulprg System.out.println("Acesta este primul

More information

Ingineria Sistemelor de Programare. UML Diagrama Cazurilor de Utilizare 2016

Ingineria Sistemelor de Programare. UML Diagrama Cazurilor de Utilizare 2016 Ingineria Sistemelor de Programare UML Diagrama Cazurilor de Utilizare mihai.hulea@aut.utcluj.ro 2016 Introducere UML UML UML = Unified Modeling Language Dezvoltat in cadrul Object Management Group In

More information

Fisa de lucru: Studiul componentelor calculatorului

Fisa de lucru: Studiul componentelor calculatorului 11.3.7 Fisa de lucru: Studiul componentelor calculatorului Imprimati si completati aceasta activitate. In aceasta activitate veti folosi Internet-ul, un ziar, sau un magazin local pentru a culege informatii

More information

Tehnici avansate de programare

Tehnici avansate de programare Tehnici avansate de programare Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Adnotarea elementelor Tehnici avansate de programare p.1/1 Cuprins Ce sunt

More information

Nivelul inferior de prelucrare a fişierelor

Nivelul inferior de prelucrare a fişierelor INTRĂRI ŞI IEŞIRI Operaţiile de I/E în limbajul C se realizează prin intermediul unor funcţii din biblioteca standard a limbajului. Majoritatea operaţiilor de I/E se realizează în ipoteza că datele sunt

More information

Administrarea sistemelor Linux

Administrarea sistemelor Linux Administrarea sistemelor Linux Cursul 11 Configurarea serviciilor sistemului partea IV Dragoş Acostăchioaie http://www.adt.ro dragos@adt.ro Cursul 11 Interactiunea cu sistemele Windows sistemul Samba Sistemul

More information

Paradigma RPC. Lenuta Alboaie

Paradigma RPC. Lenuta Alboaie Paradigma RPC Lenuta Alboaie adria@info.uaic.ro 2015 2016 Reţele de calculatoare http://www.info.uaic.ro/~adria 1 Cuprins Remote Procedure Call (RPC) Preliminarii Caracterizare XDR Functionare Implementari

More information

Curs 2 DNS. 8 Martie

Curs 2 DNS. 8 Martie Curs 2 DNS 8 Martie Cuprins NetBIOS şi LLMNR DNS Concepte Dynamic DNS Funcţionarea unui client DNS DNS Tipuri de zone Zonă stub şi cerere condiţională Delegare de administrare 2 NetBIOS Rezolvarea de nume

More information

SISTEME DE OPERARE (SO) CURS 10. Asist. Univ. Dr. Mihai Stancu. Virtualizare

SISTEME DE OPERARE (SO) CURS 10. Asist. Univ. Dr. Mihai Stancu. Virtualizare SISTEME DE OPERARE (SO) CURS 10 Asist. Univ. Dr. Mihai Stancu Virtualizare S u p o r t d e c u r s Virtual Machines Versatile Platforms for Systems and Processes Capitolul 1 Introduction to Virtual Machines

More information

PNI SmartCAM. versiune Android. - manual de utilizare-

PNI SmartCAM. versiune Android. - manual de utilizare- PNI SmartCAM versiune Android - manual de utilizare- Introducere: Acest manual se refera la instalarea si utilizarea aplicatiei PNI SmartCAM, software necesar monitorizarii atat camerei cu IP PNI 631W,

More information

Design activities. Session III. 1. Topology. - Selecting and placing devices - Interconnecting devices

Design activities. Session III. 1. Topology. - Selecting and placing devices - Interconnecting devices Design activities Session I 1. Topology - Selecting and placing devices - Interconnecting devices 2. Providing connectivity between directly connected devices - Configuring addresses for servers and hosts

More information

1) folosirea unui microprocessor extern conectat la FPGA folosind un bus standard (ex. AMBA) - Advanced Microcontroller Bus Architecture

1) folosirea unui microprocessor extern conectat la FPGA folosind un bus standard (ex. AMBA) - Advanced Microcontroller Bus Architecture Procesoare in sisteme bazate pe FPGA La proiectarea unui sistem integrat într-un FPGA, vom avea nevoie de cel mai probabil, o anumită formă de "control" în sistemul nostru. Acest controler poate fi un

More information

Distributed File Systems. CS432: Distributed Systems Spring 2017

Distributed File Systems. CS432: Distributed Systems Spring 2017 Distributed File Systems Reading Chapter 12 (12.1-12.4) [Coulouris 11] Chapter 11 [Tanenbaum 06] Section 4.3, Modern Operating Systems, Fourth Ed., Andrew S. Tanenbaum Section 11.4, Operating Systems Concept,

More information

Tehnologii Java. Curs - Cristian Frăsinaru. Facultatea de Informatică Universitatea Al. I. Cuza Iaşi.

Tehnologii Java. Curs - Cristian Frăsinaru. Facultatea de Informatică Universitatea Al. I. Cuza Iaşi. Tehnologii Java Curs - Cristian Frăsinaru acf@infoiasi.ro Facultatea de Informatică Universitatea Al. I. Cuza Iaşi Introducere Tehnologii Java p.1/2 Tehnologii Java p.2/2 Informatii despre curs Scopul

More information

Capitolul 1. Arhitectura Oracle. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 1. Arhitectura Oracle. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 1 Arhitectura Oracle 1 Serverul ORACLE Este un sistem de gestiune a bazelor de date relationale Userul poate lucra: Cu un client pe aceeasi masina cu serverul (de exemplu un client SQL*Plus ruland

More information

Introducere in AutoCAD 3D

Introducere in AutoCAD 3D Introducere in AutoCAD 3D Eu obisnuiesc sa spun ca diferenta dintre AutoCAD 2D si AutoCAD 3D este doar de 15 minute deoarece totul se reduce doar la a intelege cum functioneaza acest 3D si sistemul de

More information

Reinoirea ON-LINE. Versiunea 1 /

Reinoirea ON-LINE. Versiunea 1 / Reinoirea ON-LINE Versiunea 1 / 10.01.2018 Str.Despot Voda Nr.38, Sector 2, Bucuresti e-mail: office@transsped.ro Web: http://www.transsped.ro Telefon: 021.210.75.00; 021.210.87.00; Fax: 021.211.02.07

More information

DBFarm: Un Cluster Scalabil pentru Baze de Date Multiple

DBFarm: Un Cluster Scalabil pentru Baze de Date Multiple DBFarm: Un Cluster Scalabil pentru Baze de Date Multiple (În măsură mare, traducere a articolului DBFarm: A Scalable Cluster for Multiple Databases, Christian Plattner.a.o., ETH Zurich, 2006) Cuprins Introducere...

More information

Aplicatii JAVA. JAVA Programare în rețea # 8. Adrian Runceanu

Aplicatii JAVA. JAVA Programare în rețea # 8. Adrian Runceanu Aplicatii JAVA # 8 JAVA Programare în rețea 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 8 Programare în rețea 28.04.2017 Curs - Aplicatii Java 2 Programare în rețea copyright@www.adrian.runceanu.ro

More information

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9b: Distributed File Systems INTRODUCTION. Transparency: Flexibility: Slide 1. Slide 3.

DISTRIBUTED SYSTEMS [COMP9243] Lecture 9b: Distributed File Systems INTRODUCTION. Transparency: Flexibility: Slide 1. Slide 3. CHALLENGES Transparency: Slide 1 DISTRIBUTED SYSTEMS [COMP9243] Lecture 9b: Distributed File Systems ➀ Introduction ➁ NFS (Network File System) ➂ AFS (Andrew File System) & Coda ➃ GFS (Google File System)

More information

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace

More information

UTILIZAREA SISTEMELOR DE OPERARE - LABORATORUL 2. Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare

UTILIZAREA SISTEMELOR DE OPERARE - LABORATORUL 2. Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare Structura de fisiere Comparatie cu comenzile de DOS, manualul unei comenzi, lucrul cu directoare Comparatie cu comenzile de DOS Adevarata putere a linux-ului sta in comenzi. Acestea, impreuna cu fisierele

More information

The Google File System. Alexandru Costan

The Google File System. Alexandru Costan 1 The Google File System Alexandru Costan Actions on Big Data 2 Storage Analysis Acquisition Handling the data stream Data structured unstructured semi-structured Results Transactions Outline File systems

More information

Proiectarea Rețelelor 1. Componentele hardware ale unui sistem de calcul

Proiectarea Rețelelor 1. Componentele hardware ale unui sistem de calcul Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Proiectarea Rețelelor 1. Componentele hardware ale unui sistem de calcul Integrated IS-IS 25 Noiembrie 2010 Proiectarea

More information

8.Comenzi AT pentru module Bluetooth

8.Comenzi AT pentru module Bluetooth 8.Comenzi AT pentru module Bluetooth Cuprins Laborator 8 8.1. Transmisia datelor prin Bluetooth 8.2. Desfăşurarea lucrării 8.3.Lista de comenzi AT Cuprins Introducere Ultima lucrare catre tratează comenzile

More information

Cursul X decembrie 2011

Cursul X decembrie 2011 Cursul 12 12 802.1X 20-21 decembrie 2011 Obiective Recapitulare: Securitatea în rețele Protocolul 802.1X RADIUS Exemplu de funcționare 802.1X MACsec Configurare 802.1X 2 Cursul 12 Recapitulare Riscuri

More information

Lenuta Alboaie Reţele de calculatoare

Lenuta Alboaie Reţele de calculatoare Programarea in retea (III) Lenuta Alboaie adria@info.uaic.ro 1 Cuprins Primitive I/O - discutii Server concurent UDP TCP sau UDP aspecte Instrumente Trimiterea si receptarea datelor in regim out-of-band

More information

GDB. Rulare gdb. Comenzi de bază GDB GDB. GDB poate fi folosit în două moduri pentru a depana programul:

GDB. Rulare gdb. Comenzi de bază GDB GDB. GDB poate fi folosit în două moduri pentru a depana programul: GDB GDB Rulare gdb GDB poate fi folosit în două moduri pentru a depana programul: rulându-l folosind comanda gdb folosind fişierul core generat în urma unei erori grave (de obicei segmentation fault) Cea

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru Proiect nr. 154/323 cod SMIS 4428 cofinanțat de prin Fondul European de Dezvoltare Regională Investiții pentru viitorul dumneavoastră. Programul Operațional

More information

Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ

Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ Cap. 1. SISTEME DEDICATE DE PRELUCRARE NUMERICĂ Un sistem dedicat de prelucrare numerică (embedded system) este un ansamblu format din circuite electronice, programe, componente mecanice etc. conceput

More information

Capitolul 4. Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control)

Capitolul 4. Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control) Capitolul 4 Subnivelul Controlul Accesului la Mediu (MAC=Medium Access Control) 1 The Channel Allocation Problem Static Channel Allocation in LANs and MANs Dynamic Channel Allocation in LANs and MANs Alocare

More information

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Transmisia datelor multimedia in retele de calculatoare 28. O scurta istorie a compresiei audio: MPEG-1, MPEG-2, MPEG-

More information

CYBERPRIVACY VS CYBERSECURITY. Intimitatea vs securitatea informatiilor in industria medicala. Daniel Nistor, Director Executiv

CYBERPRIVACY VS CYBERSECURITY. Intimitatea vs securitatea informatiilor in industria medicala. Daniel Nistor, Director Executiv CYBERPRIVACY VS CYBERSECURITY Intimitatea vs securitatea informatiilor in industria medicala Daniel Nistor, Director Executiv 1 Statistici Cybersecurity este sectorul tehnologic cu cea mai mare rata de

More information

Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte

Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte Laborator 8 Java Crearea claselor de obiecte. Variabilele (campurile) clasei de obiecte Probleme rezolvate: Scrieti, compilati si rulati toate exemplele din acest laborator: 1. Programul urmator (LotoConstante.java)

More information

Sisteme de programe pentru Retele de calculatoare Middleware

Sisteme de programe pentru Retele de calculatoare Middleware Categorii de programe Software de aplicatii Sisteme de programe pentru Retele de calculatoare Middleware Software de infrastructura Servicii middleware (1) Servicii de programare a reţelei Invoca serviciile

More information

Fisiere text in Java.

Fisiere text in Java. Fisiere text in Java. Doru Anastasiu Popescu Prelucrarea fisierelor text in Java Aspecte teoretice: http://cursuri.cs.pub.ro/~poo/wiki/index.php/input/output http://upm.ro/intranet/ecalin/cd_educational/cd/javac/cap3.htm

More information

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 4. Fisiere de date si Tablespace. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 4 Fisiere de date si Tablespace 1 Continut capitol Ca structura fizica, baza de date contine fisiere de control, de date si de Redo log. Ca structura logica o baza de date se compune din: Tablespace

More information

Operatii IO simple. Fisiere. Sisteme de fisiere. Continut

Operatii IO simple. Fisiere. Sisteme de fisiere. Continut Operatii IO simple Continut 1 Fisiere. Sisteme de fisiere 2 Operatii pe fisiere 3 Operatii pe fisiere în Linux 3.1 Crearea, deschiderea si închiderea fisierelor 3.1.1 open 3.1.2 creat 3.1.3 close 3.2 Scrierea

More information

Universitatea Alexandru Ioan Cuza Facultatea de Informatică. Hadoop. Lenuța Alboaie

Universitatea Alexandru Ioan Cuza Facultatea de Informatică. Hadoop. Lenuța Alboaie Universitatea Alexandru Ioan Cuza Facultatea de Informatică Hadoop Lenuța Alboaie adria@info.uaic.ro 1 Cuprins Context Hadoop imagine generala Componente HDFS - Hadoop Distributed Filesystem Caracteristici

More information

Dispozitive de intrare iesire

Dispozitive de intrare iesire Dispozitive de intrare iesire - Curs 8-23.11.2005 Universitatea POLITEHNICA Bucureşti La ce ne referim? dispozitive de intrare/iesire (I/O devices): tastatura, mouse, monitor, imprimanta, placa de retea,

More information

Dezvoltarea aplicaţiilor WEB

Dezvoltarea aplicaţiilor WEB Dezvoltarea aplicaţiilor WEB Resurse webspace.ulbsibiu.ro/radu.kretzulescu/index.php Feedback: radu.kretzulescu@ulbsibiu.ro raducretulescu@gmail.com mobil: 0722/743508 Dacă nu mai poate aştepta până mâine!

More information

Sisteme de operare 1. Sisteme de operare. Roluri și descriere generală

Sisteme de operare 1. Sisteme de operare. Roluri și descriere generală Platformăde e-learning și curriculăe-content pentru Sisteme de operare 1. Sisteme de operare. Roluri și descriere generală De ce SO? sunt peste tot (PC, servere, smartphones) administrarea eficientă a

More information

Universitatea Transilvania Braşov Facultatea de Inginerie Electrică şi Ştiinţa Calculatoarelor. Tulbure Traian.

Universitatea Transilvania Braşov Facultatea de Inginerie Electrică şi Ştiinţa Calculatoarelor. Tulbure Traian. Universitatea Transilvania Braşov Facultatea de Inginerie Electrică şi Ştiinţa Calculatoarelor Tulbure Traian tulbure@vega.unitbv.ro Retele de calculatoare Cuprins 1. Introducere 2. Comunicatii date 3.

More information

ediție Windows 10 Aflați ce este potrivită pentru dumneavoastră. Experiența de afaceri Productivitate și experiență pentru utilizator

ediție Windows 10 Aflați ce este potrivită pentru dumneavoastră. Experiența de afaceri Productivitate și experiență pentru utilizator Experiența de afaceri Productivitate și experiență pentru utilizator Experiență familiară și productivă pentru utilizator Home Pro Enterprise Education Continuum pentru telefon 1 Cortana 2 Windows Ink

More information

Nivelul Aplicatie. Lenuta Alboaie Andrei Panu

Nivelul Aplicatie. Lenuta Alboaie Andrei Panu Nivelul Aplicatie Lenuta Alboaie (adria@info.uaic.ro) Andrei Panu (andrei.panu@info.uaic.ro) 1 Cuprins Protocoale la nivelul aplicatie Preliminarii Caracteristici de proiectare Accesul la terminal de la

More information

JavaScript - Intorducere. Și nu numai...

JavaScript - Intorducere. Și nu numai... JavaScript - Intorducere Și nu numai... Ce facem azi Nu o sa va vină să credeți. Pe foaia albă vă scrieți numele și prenumele ȘI Povestim despre JavaScript Exemple de aplicare discutii și surprize mici

More information

Universitatea Alexandru Ioan Cuza Facultatea de Informatică. Hadoop. Lenuța Alboaie

Universitatea Alexandru Ioan Cuza Facultatea de Informatică. Hadoop. Lenuța Alboaie Universitatea Alexandru Ioan Cuza Facultatea de Informatică Hadoop Lenuța Alboaie adria@info.uaic.ro 1 Cuprins Context Hadoop imagine generala Componente HDFS - Hadoop Distributed Filesystem Caracteristici

More information

Distributed Systems. Hajussüsteemid MTAT Distributed File Systems. (slides: adopted from Meelis Roos DS12 course) 1/25

Distributed Systems. Hajussüsteemid MTAT Distributed File Systems. (slides: adopted from Meelis Roos DS12 course) 1/25 Hajussüsteemid MTAT.08.024 Distributed Systems Distributed File Systems (slides: adopted from Meelis Roos DS12 course) 1/25 Examples AFS NFS SMB/CIFS Coda Intermezzo HDFS WebDAV 9P 2/25 Andrew File System

More information

Tipuri de date structurate

Tipuri de date structurate Tipuri de date structurate Problema 1 Să se citească un șir A de la tastatură, citirea șirului se termina la introducerea valorii 0. Să se construiască și să se tipărească șirul B de perechi (element,

More information

Ingineria Programării în Reţea ea (IPR) Unelte software utile în proiectarea şi i implementarea unei ea

Ingineria Programării în Reţea ea (IPR) Unelte software utile în proiectarea şi i implementarea unei ea Ingineria Programării în Reţea ea (IPR) Unelte software utile în proiectarea şi i implementarea unei aplicaţii ii de reţea ea Ping Instrumentul ul cel mai popular pentru testarea conectivităţii ii într-o

More information

Capitolul 2. Instanta si baza de date. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5.

Capitolul 2. Instanta si baza de date. F. Radulescu. Curs: Utilizarea bazelor de date, anul IV C5. Capitolul 2 Instanta si baza de date 1 DBA Exista doi utilizatori privilegiati care sunt creati inca de la instalarea Oracle (se cere doar parola pentru ei la instalare): 1. SYS proprietarul (owner) bazei

More information

Lecture 7: Distributed File Systems

Lecture 7: Distributed File Systems 06-06798 Distributed Systems Lecture 7: Distributed File Systems 5 February, 2002 1 Overview Requirements for distributed file systems transparency, performance, fault-tolerance,... Design issues possible

More information

Din Cursurile trecute. Alte tipuri de Design Patterns Quality Assurance. Design Patterns

Din Cursurile trecute. Alte tipuri de Design Patterns Quality Assurance. Design Patterns Cursul 9 18 Aprilie Din Cursurile trecute Design Patterns Creational Patterns Structural Patterns Behavioral Patterns Alte tipuri de Design Patterns Quality Assurance Software Testing Testing Methodologies

More information

Open4Tech Concepte de baza ECM

Open4Tech Concepte de baza ECM Open4Tech Concepte de baza ECM Agenda Enterprise Content Management (ECM) Cum a aparut? Ce inseamna? Avantajele unui sistem ECM Cine a dezvoltat platforme ECM? EMC Documentum lider in Enterprise Content

More information

Introducere in Maven. Information Type: Working Standard, Disclosure Range:, Information Owner: mihai.hulea, NTT DATA Romania

Introducere in Maven. Information Type: Working Standard, Disclosure Range:, Information Owner: mihai.hulea, NTT DATA Romania Introducere in Maven Build management tools Java build tools: Maven Gradle Ant + Ivy Build tools are programs that automate the creation of executable applications from source code. Building incorporates

More information

Servicii Internet I. 18 January

Servicii Internet I. 18 January Servicii Internet I 18 January 2009 1 Notiuni de baza in Internet Adrese IP Arhitectura client server Porturi Nume de domeniu si DNS 18 January 2009 2 Adrese IP (1) Host calculator conectat la o retea

More information

Retele de calculatoare

Retele de calculatoare Retele de calculatoare Nivelul Aplicatie Gabriel Ciobanu Facultatea de Informatică Universitatea A.I. Cuza, Iaşi gabriel@info.uaic.ro Sistemul numelor de domenii Dorin Huzum (dorin.huzum@infoiasi.ro) Sinică

More information

Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect).

Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect). Îmbunătăţiri aduse în limbajul C++ facilităţilor standard ale limbajului C (cele care nu ţin de conceptele programării orientate obiect). Supraîncărcarea numelui de funcţii (overloading) In C nu este permisa

More information

Introduction. Chapter 8: Distributed File Systems

Introduction. Chapter 8: Distributed File Systems Chapter 8: Distributed File Systems Summary Introduction File system persistent storage Distributed file system persistent storage information sharing similar (in some case better) performance and reliability

More information

Universitatea Constantin Brâncuşi din Târgu-Jiu. Aplicații JAVA. Lect.dr. Adrian Runceanu

Universitatea Constantin Brâncuşi din Târgu-Jiu. Aplicații JAVA. Lect.dr. Adrian Runceanu Universitatea Constantin Brâncuşi din Târgu-Jiu Aplicații JAVA Lect.dr. Adrian Runceanu Curs 4 Applet-uri în Java 10.03.2016 Curs - Aplicatii Java 2 Applet-uri în Java 1. Ce este un applet? 2. Crearea

More information

CLOUD-SCALE FILE SYSTEMS

CLOUD-SCALE FILE SYSTEMS Data Management in the Cloud CLOUD-SCALE FILE SYSTEMS 92 Google File System (GFS) Designing a file system for the Cloud design assumptions design choices Architecture GFS Master GFS Chunkservers GFS Clients

More information

Administrarea sistemelor Linux

Administrarea sistemelor Linux Administrarea sistemelor Linux Cursul 3 Notiuni Linux de baza partea II Dragoş Acostăchioaie http://www.adt.ro FHS (www.pathname.com/fhs/) Sisteme de fisiere Structura standard de directoare /bin comenzile

More information

Proiectarea bazelor de date. PL/SQL Proceduri în PL/SQL(partea II-a) # 9. Adrian Runceanu

Proiectarea bazelor de date. PL/SQL Proceduri în PL/SQL(partea II-a) # 9. Adrian Runceanu Proiectarea bazelor de date # 9 PL/SQL Proceduri în PL/SQL(partea II-a) 2016 Adrian Runceanu www.runceanu.ro/adrian Curs 9 Proceduri în PL/SQL Proiectarea bazelor de date 2 Cuprins Proceduri în PL/SQL

More information

Laborator 10. SGBD-ul MySQL (partea I)

Laborator 10. SGBD-ul MySQL (partea I) Laborator 10 SGBD-ul MySQL (partea I) 1. Introduceţi următoarea secvenţă PHP: $dbh = mysql_connect("localhost", "Costica", "mypass") or die("unable to connect to MySQL"); $selectdb = mysql_select_db('lucrudb');

More information

50 euro reducere suplimentara la telefon prin portare de abonament impreuna cu serviciile de internet si tv prin fibra optica

50 euro reducere suplimentara la telefon prin portare de abonament impreuna cu serviciile de internet si tv prin fibra optica Samsung Galaxy S9 in oferta de portare de la abonament. Noutati 50 euro reducere suplimentara la telefon prin portare de abonament impreuna cu serviciile de internet si tv prin fibra optica Vreau sa am

More information

Google File System. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google fall DIP Heerak lim, Donghun Koo

Google File System. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google fall DIP Heerak lim, Donghun Koo Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google 2017 fall DIP Heerak lim, Donghun Koo 1 Agenda Introduction Design overview Systems interactions Master operation Fault tolerance

More information

1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului n.

1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului n. Observatii: Codul de mai jos a fost realizat si testat pe pagina online: https://www.tutorialspoint.com/compile_pascal_online.php 1. Să se determine de câte ori apare cifra c în scrierea în baza p a numărului

More information

Distributed File Systems II

Distributed File Systems II Distributed File Systems II To do q Very-large scale: Google FS, Hadoop FS, BigTable q Next time: Naming things GFS A radically new environment NFS, etc. Independence Small Scale Variety of workloads Cooperation

More information

Implementarea mecanismelor de I/E

Implementarea mecanismelor de I/E Universitatea Politehnica Bucuresti Facultatea de Electronica, Telecomunicatii si Tehnologia Informatiei Implementarea mecanismelor de I/E Gestionarul Plug-and-Play in Windows Angelica Negrila 431 A -

More information

CA485 Ray Walshe Google File System

CA485 Ray Walshe Google File System Google File System Overview Google File System is scalable, distributed file system on inexpensive commodity hardware that provides: Fault Tolerance File system runs on hundreds or thousands of storage

More information

AN OVERVIEW OF DISTRIBUTED FILE SYSTEM Aditi Khazanchi, Akshay Kanwar, Lovenish Saluja

AN OVERVIEW OF DISTRIBUTED FILE SYSTEM Aditi Khazanchi, Akshay Kanwar, Lovenish Saluja www.ijecs.in International Journal Of Engineering And Computer Science ISSN:2319-7242 Volume 2 Issue 10 October, 2013 Page No. 2958-2965 Abstract AN OVERVIEW OF DISTRIBUTED FILE SYSTEM Aditi Khazanchi,

More information

1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea)

1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea) 1. Sa se deseneze un circuit logic care corespunde urmatoarelor forme de unda (A si B sunt intrari, X este iesirea) 2. Sa se implementeze functia logica data de urmatorul tabel de adevar folosind numai

More information

The Reuse of the Components on the Java 2 Enterprise Edition Platform

The Reuse of the Components on the Java 2 Enterprise Edition Platform 140 The Reuse of the Components on the Java 2 Enterprise Edition Platform Lect.dr. Marian CRISTESCU Catedra de Informatică Economică, Universitatea "Lucian Blaga" Sibiu Reusable components are simply pre-built

More information

7. Exploatarea vulnerabilităńilor

7. Exploatarea vulnerabilităńilor 7. Exploatarea vulnerabilităńilor Exploit-uri de securitate Program special conceput pentru a exploata vulnerabilităńile de securitate existente pe sistemele de calcul cu scopul compromiterii securităńii

More information

Setări de securitate. Aplicaţia MBSA

Setări de securitate. Aplicaţia MBSA Setări de securitate. Aplicaţia MBSA 1. Introducere În prezent numărul şi complexitatea viruşilor sunt în creştere. Prin setări de securitate se urmăreşte protecţia sistemelor, fără limitarea utilizării

More information

Aplicatii JAVA. JAVA Lucrul cu baze de date în Java # 10. Adrian Runceanu

Aplicatii JAVA. JAVA Lucrul cu baze de date în Java # 10. Adrian Runceanu Aplicatii JAVA # 10 JAVA Lucrul cu baze de date în Java 2017 Adrian Runceanu www.runceanu.ro/adrian Curs 10 Lucrul cu baze de date în Java 19.05.2017 Curs - Aplicatii Java 2 Lucrul cu baze de date în Java

More information

Lucrarea de laborator nr. 4.NET Remoting 1

Lucrarea de laborator nr. 4.NET Remoting 1 Lucrarea de laborator nr. 4.NET Remoting 1 4. Implementarea claselor Well Known (Server Activated) In cadrul acestei lucrari de laborator vom realiza cateva aplicatii care vor exemplifica conceptele fundamentale

More information

Google File System (GFS) and Hadoop Distributed File System (HDFS)

Google File System (GFS) and Hadoop Distributed File System (HDFS) Google File System (GFS) and Hadoop Distributed File System (HDFS) 1 Hadoop: Architectural Design Principles Linear scalability More nodes can do more work within the same time Linear on data size, linear

More information

Distributed Filesystem

Distributed Filesystem Distributed Filesystem 1 How do we get data to the workers? NAS Compute Nodes SAN 2 Distributing Code! Don t move data to workers move workers to the data! - Store data on the local disks of nodes in the

More information

DFS Case Studies, Part 1

DFS Case Studies, Part 1 DFS Case Studies, Part 1 An abstract "ideal" model and Sun's NFS An Abstract Model File Service Architecture an abstract architectural model that is designed to enable a stateless implementation of the

More information

Curs 7. Managementul dispozitivelor de I/O

Curs 7. Managementul dispozitivelor de I/O Curs 7. Managementul dispozitivelor de I/O Dispozitivele de intrare/ iesire(i/o) va sunt cunoscute din utilizarea unui calculator si pot fi impartite pe 3 categorii: dispozitive pentru interfata umana

More information

Distributed System. Gang Wu. Spring,2018

Distributed System. Gang Wu. Spring,2018 Distributed System Gang Wu Spring,2018 Lecture7:DFS What is DFS? A method of storing and accessing files base in a client/server architecture. A distributed file system is a client/server-based application

More information

DISTRIBUTED FILE SYSTEMS CARSTEN WEINHOLD

DISTRIBUTED FILE SYSTEMS CARSTEN WEINHOLD Department of Computer Science Institute of System Architecture, Operating Systems Group DISTRIBUTED FILE SYSTEMS CARSTEN WEINHOLD OUTLINE Classical distributed file systems NFS: Sun Network File System

More information

Probleme consultații 20 ianuarie 2018

Probleme consultații 20 ianuarie 2018 Algoritmi elementari Probleme consultații 20 ianuarie 2018 Problema 1: zerouri factorial Enunt Fiind dat un numar natural n, sa se determine numarul de cifre 0 cu care se termină factorialul numărului

More information

Introducere. 1 Martie

Introducere. 1 Martie Introducere 1 Martie Welcome! He who asks is a fool for five minutes but he who does not ask remains a fool forever. 2 Structura cursului No. Titlu Data 1. IP, DHCP şi NAT 1 Martie 2. DNS 8 Martie 3. IP

More information

Curs 7. Servicii de file sharing. 17 noiembrie Gestiunea Serviciilor de Rețea. GSR Curs 7, Servicii de file sharing 1/45

Curs 7. Servicii de file sharing. 17 noiembrie Gestiunea Serviciilor de Rețea. GSR Curs 7, Servicii de file sharing 1/45 Curs 7 Servicii de file sharing Gestiunea Serviciilor de Rețea 17 noiembrie 2011 GSR Curs 7, Servicii de file sharing 1/45 Moto Jesus saves! The rest of us better make backups. GSR Curs 7, Servicii de

More information

CS 425 / ECE 428 Distributed Systems Fall Indranil Gupta (Indy) Nov 28, 2017 Lecture 25: Distributed File Systems All slides IG

CS 425 / ECE 428 Distributed Systems Fall Indranil Gupta (Indy) Nov 28, 2017 Lecture 25: Distributed File Systems All slides IG CS 425 / ECE 428 Distributed Systems Fall 2017 Indranil Gupta (Indy) Nov 28, 2017 Lecture 25: Distributed File Systems All slides IG File System Contains files and directories (folders) Higher level of

More information

Distributed File Systems (Chapter 14, M. Satyanarayanan) CS 249 Kamal Singh

Distributed File Systems (Chapter 14, M. Satyanarayanan) CS 249 Kamal Singh Distributed File Systems (Chapter 14, M. Satyanarayanan) CS 249 Kamal Singh Topics Introduction to Distributed File Systems Coda File System overview Communication, Processes, Naming, Synchronization,

More information

Curs 10 PPOO. Conf. univ. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică

Curs 10 PPOO. Conf. univ. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică Curs 10 PPOO Conf. univ. dr. Cristian CIUREA Departamentul de Informatică și Cibernetică Economică cristian.ciurea@ie.ase.ro 1 Agenda Spring Framework Swing widgets JUnit FindBugs 2 Spring Framework Spring

More information

Quartz. ArcGIS Runtime SDK for Android

Quartz. ArcGIS Runtime SDK for Android Quartz ArcGIS Runtime SDK for Android Quartz (beta) Ce ofera? Utilizarea OpenGL controale si functionalitati de performanta inalta; utilizarea de Vector Tile Package utilizarea Map Package; biblioteci

More information

Rezolvarea exceptiilor

Rezolvarea exceptiilor PL/SQL SECTIUNE 6 Rezolvarea exceptiilor Entering an incorrect username and/or password Forgetting to include the @ in an email address Entering a credit card number incorrectly Entering an expiration

More information