Informații referitoare la arhitectura generală a unui navigator Web, inclusiv exemple specifice fiecărui browser în parte. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Specificarea interfetei unui joc electronic folosind UsiXML si UIMLSabin Buraga
Prezentare a unei lucrari acceptate la Conferinta Nationala de Interactiune Om-Calculator -- RoCHI 2009: http://rochi.utcluj.ro/
Autori: Simina Tofan, Anamaria Pradais, Sabin Buraga (Facultatea de Informatica, Universitatea "A.I. Cuza" din Iasi, Romania)
Considerații privind designul Web: interacțiune, utilizabilitate & metodologii de proiectare, inclusiv detalii despre metoda QOC și manierele de prototipizare. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Considerații vizând proiectarea siturilor Web, inclusiv detalii despre design vizual (layout, tipografie, cromatică etc.) și design Web responsiv. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (1/13) Interacțiune Web: concepte, context, studii de cazSabin Buraga
Interacțiune Web: noțiuni de bază precum interacțiune om-calculator (HCI), interfață cu utilizatorul (UI), experiența utilizatorului (UX) și altele. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Informații referitoare la arhitectura generală a unui navigator Web, inclusiv exemple specifice fiecărui browser în parte. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Specificarea interfetei unui joc electronic folosind UsiXML si UIMLSabin Buraga
Prezentare a unei lucrari acceptate la Conferinta Nationala de Interactiune Om-Calculator -- RoCHI 2009: http://rochi.utcluj.ro/
Autori: Simina Tofan, Anamaria Pradais, Sabin Buraga (Facultatea de Informatica, Universitatea "A.I. Cuza" din Iasi, Romania)
Considerații privind designul Web: interacțiune, utilizabilitate & metodologii de proiectare, inclusiv detalii despre metoda QOC și manierele de prototipizare. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Considerații vizând proiectarea siturilor Web, inclusiv detalii despre design vizual (layout, tipografie, cromatică etc.) și design Web responsiv. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (1/13) Interacțiune Web: concepte, context, studii de cazSabin Buraga
Interacțiune Web: noțiuni de bază precum interacțiune om-calculator (HCI), interfață cu utilizatorul (UI), experiența utilizatorului (UX) și altele. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansambluSabin Buraga
O viziune de ansamblu referitoare la vizualizarea datelor în contextul Web, inclusiv diverse tehnici + exemple reale. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (8/13) JavaScript în navigatorul Web. De la DOM la Ajax şi mas...Sabin Buraga
Despre programarea în limbajul JavaScript direct în browser-ul Web (DOM, Ajax, Comet, mash-up, CORS și multe altele). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (12/13) Performanța aplicaţiilor Web la nivel de clientSabin Buraga
O privire generală privind performanța aplicațiilor Web la nivel de client (tehnici, strategii, exemple reale și altele). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (13/13) Perspective Web la nivel de client. Limbajul ES6Sabin Buraga
Cele mai importante aspecte referitoare la noua versiune a limbajului JavaScript (ES6 sau ECMAScript 2015), inclusiv diverse exemplificări. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Arad - Introducere in resurse educationale deschiseValentinapavel
Acest material a fost realizat ca suport pentru prezentările și workshop-urile susținute pe perioada proiectului de conștientizare asupra resurselor educaționale deschise implementat de Asociația pentru Tehnologie și Internet împreună cu Fundația Soros, Kosson.ro și Asociația Națională a Bibliotecarilor și Bibliotecilor Publice din România. Workshop-urile vor fi organizate în 4 orașe din țară și se adresează atât bibliotecarilor, cât și profesorilor, doctoranzilor, masteranzilor și studenților. Pentru mai multe informatii: www.apti.ro si http://www.acces-deschis.ro/ro/oer
O introducere in proiectarea jocurilor pe calculator (game computing), prezentare in cadrul cursului Interactiune om-calculator, master, Facultatea de Informatica, Alexandru Ioan Cuza din Iasi.
Conține lucrările atelierului de lucru privind interacțiunea neconvențională dintre om și calculator, avându-i ca autori pe Ciprian Amariei, Sabin Buraga, Ștefan Ceriu, Sorin Damian, Anca-Paula Luca, Eduard Moraru, Ștefan Negru, Lucian Pricop, Ștefan Prutianu, Radu Sârghie (Facultatea de Informatică a Universității "A.I. Cuza" din Iași, România). Extras din volumul de lucrări ale Conferinței Naționale de Interacțiune Om-Calculator -- RoCHI 2009: http://rochi2009.utcluj.ro/
CLIW 2015-2016 (7/13) Limbajul de programare JavaScriptSabin Buraga
Aspecte esențiale referitoare la limbajul de programare JavaScript (de la sintaxa de bază la obiecte & date JSON). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (5/13) Vizualizarea datelor – o privire de ansambluSabin Buraga
O viziune de ansamblu referitoare la vizualizarea datelor în contextul Web, inclusiv diverse tehnici + exemple reale. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (8/13) JavaScript în navigatorul Web. De la DOM la Ajax şi mas...Sabin Buraga
Despre programarea în limbajul JavaScript direct în browser-ul Web (DOM, Ajax, Comet, mash-up, CORS și multe altele). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (12/13) Performanța aplicaţiilor Web la nivel de clientSabin Buraga
O privire generală privind performanța aplicațiilor Web la nivel de client (tehnici, strategii, exemple reale și altele). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
CLIW 2015-2016 (13/13) Perspective Web la nivel de client. Limbajul ES6Sabin Buraga
Cele mai importante aspecte referitoare la noua versiune a limbajului JavaScript (ES6 sau ECMAScript 2015), inclusiv diverse exemplificări. Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Arad - Introducere in resurse educationale deschiseValentinapavel
Acest material a fost realizat ca suport pentru prezentările și workshop-urile susținute pe perioada proiectului de conștientizare asupra resurselor educaționale deschise implementat de Asociația pentru Tehnologie și Internet împreună cu Fundația Soros, Kosson.ro și Asociația Națională a Bibliotecarilor și Bibliotecilor Publice din România. Workshop-urile vor fi organizate în 4 orașe din țară și se adresează atât bibliotecarilor, cât și profesorilor, doctoranzilor, masteranzilor și studenților. Pentru mai multe informatii: www.apti.ro si http://www.acces-deschis.ro/ro/oer
O introducere in proiectarea jocurilor pe calculator (game computing), prezentare in cadrul cursului Interactiune om-calculator, master, Facultatea de Informatica, Alexandru Ioan Cuza din Iasi.
Conține lucrările atelierului de lucru privind interacțiunea neconvențională dintre om și calculator, avându-i ca autori pe Ciprian Amariei, Sabin Buraga, Ștefan Ceriu, Sorin Damian, Anca-Paula Luca, Eduard Moraru, Ștefan Negru, Lucian Pricop, Ștefan Prutianu, Radu Sârghie (Facultatea de Informatică a Universității "A.I. Cuza" din Iași, România). Extras din volumul de lucrări ale Conferinței Naționale de Interacțiune Om-Calculator -- RoCHI 2009: http://rochi2009.utcluj.ro/
CLIW 2015-2016 (7/13) Limbajul de programare JavaScriptSabin Buraga
Aspecte esențiale referitoare la limbajul de programare JavaScript (de la sintaxa de bază la obiecte & date JSON). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
Primul curs de Baze de date, pentru cei care sunt interesati sa aiba si slidurile. Filmuletul cu prezentarea il puteti gasi aici: https://youtu.be/hOgGML7N730
PARTENERIAT TRANSFRONTALIER REPUBLICA MOLDOVA-ROMÂNIAFlorinaTrofin
olaborarea la nivel transfrontalier prin împărtășirea opiniilor, practicilor, metodelor și strategiilor de lucru cu cadrele didactice din Republica Moldova și România pentru îmbunătățirea procesului educațional cu finalități comune.
3. Prezentare generala
Sistem distribuit de stocare si management al datelor,
dezvoltat de catre Google
Scop principal - suportarea aplicatiilor client cu stocarea unui
volum mare de date
Proiectat sa scaleze la scara – de ordinul petabytes
Model de date non-relational
Este folosit de multe aplicatii dezvoltate de Google: Google
Earth, Google Maps, Google Analytics etc.
Foloseste tehnologii Google: GFS, Chubby, SSTable
4. Sisteme similare
Boxwood
dezvoltat de Microsoft
asemanator cu Bigtable
construirea sistemelor de fisiere sau bazelor de date
Real application cluster
dezvoltat de Oracle
foloseste sisteme asemanatoare GFS si Chubby
model relational cu tranzactii
DB2 Parallel
dezvoltat de IBM
similar Bigtable foloseste modelul “share nothing”
model relational cu tranzactii
C-Store
model relational; foloseste modelul “share nothing”
asemanator cu Bigtable
5. Descrierea sistemului
Modelul de date
Bigtable – map distribuit, multidimensional si sortat.
Mapeaza datele folosind 3 valori: linia, coloana si eticheta
de timp.
(row:string, column:string, time:int64) → string
6. Descrierea sistemului
Liniile
Scrierile si citirile dintr-o singura linie sunt atomice.
Mentine datele in ordine lexicografica dupa cheile liniilor.
Numarul de linii dintr-un tabel este partitionat dinamic si
fiecare partitie se numeste “tableta”.
Folosirea tabletelor ofera o buna localizare a datelor.
Exemplu – Intr-un tabel ce stocheaza informatii despre pagini web
datele paginilor din acelasi domeniu sunt tinute unele langa altele.
7. Descrierea sistemului
Coloanele
Sunt grupate in “familii de coloane”, toate datele dintr-o
familie fiind de acelasi tip.
Inainte de a stoca date intr-o coloana trebuie creata familia
de coloane.
Numarul de familii dintr-un tabel trebuie sa fie mic(cel mult
cateva sute), dar numarul de coloane nu conteaza.
O cheie de coloana este de forma “familie:calificator”
Exemple: “language:id” sau “anchor:URL”
8. Descrierea sistemului
Etichetele de timp
Fiecare celula poate avea mai multe versiuni ale datelor
Pot fi asignate automat de sistem sau explicit de clienti
Versiunile diferite sunt tinute in ordine descrescatoare
Bigtable pune la dispozitie un sistem ce permite
specificarea numarului de versiuni care trebuie retinut
(restul de versiuni mai vechi vor fi sterse)
Exemple: sunt pastrate ultimele 3 versiuni ale unei pagini web
9. Descrierea sistemului
Bigtable API
Functii pentru crearea/stergerea tabelelor si familiilor de
coloane
Clientii pot citi/scrie/sterge date din tabel.
Permite executarea atomica a secventei citeste-modificascrie asupra datelor dintr-o singura linie
Permite executarea de script-uri furnizate de clienti
(script-utile sunt scrise in Sawzall)
Permite folosirea Bigtable cu MapReduce
Scrierea intr-o celula
Citirea unei linii
10. Descrierea sistemului
Bigtable API
Functii pentru crearea/stergerea tabelelor si familiilor de
coloane
Clientii pot citi/scrie/sterge date din tabel.
Permite executarea atomica a secventei citeste-modificascrie asupra datelor dintr-o singura linie
Permite executarea de script-uri furnizate de clienti
(script-utile sunt scrise in Sawzall)
Permite folosirea Bigtable cu framework`ul MapReduce
Scrierea intr-o celula
Citirea unei linii
11. Descrierea sistemului
Implementare
Contine - o librarie cu legatura la fiecare client, un server
master si multe servere de tablete
Masterul:
- asigneaza tablete serverelor de tablete
- detecteaza adaugarea/expirarea unui server de tablete - balansarea incarcarii pe serverele de tablete
- se ocupa de schimbarile schemei de tabel
- face garbage collect in GFS
Serverul de tablete se ocupa de:
- mentinerea evidentei tabletelor
- citiri/scrieri in tablete
- partitionarea tabletelor
Clientii comunica direct cu serverele de tablete
12. Descrierea sistemului
Implementare
Fisierul e spart in mai multe tablete – optimizate pentru GFS
Datele recente - stocate in memorie - buffer numit memtable
Datele mai vechi – stocate pe disk ca fisiere SSTable
13. Descrierea sistemului
Optimizari
Gruparea mai multor familii de coloane in “grupuri de localizare”
Metadatele si continutul paginilor web sunt tinute in grupuri
diferite
Compresia datelor in 2 pasi
Cache cu 2 nivele:
scan cache – stocheaza date returnate de interfata SSTable
catre server-ul de tablete.
Block cache – stocheaza block-uri SSTable citite din GFS
15. Evaluarea performantelor
Sistemul scaleaza foarte bine, insa performantele nu
cresc liniar
Performanta per-server scade cu cat N creste
Balansarea imperfecta a incarcarii
16. Concluzii
Bigtable – lansat in aprilie 2005. In august 2006 , 60+
proiecte Google foloseau Bigtable.
Interfata neobisnuita si greu de inteles pentru utilizatorii noi.
Bigtable este folosit in proiectele Google – plus de
flexibilitate
Working progress - Bigtable as a service.
17. Bibliografie
Bigtable: A Distributed Storage System for Structured
Data by Fay Chang, Jeffrey Dean, Sanjay Ghemawat,
Wilson C. Hsieh, Deborah A. Wallach
Mike Burrows, Tushar Chandra, Andrew Fikes, Robert E.
Gruber