Võrgurakendused II

Allikas: Lambda
Redaktsioon seisuga 24. september 2014, kell 18:50 kasutajalt Tammet (arutelu | kaastöö) (→Esialgne loengukava)
Mine navigeerimisribale Mine otsikasti
revolutsioon
revolutsioon

Ainekood: ITV0120
Täielik nimi: Võrgurakendused II - hajussüsteemide tehnoloogia
Link: http://www.lambda.ee/index.php/V%C3%B5rgurakendused_II
Punkte: 2.5 AP ehk 4 EAP

Lektor: Tanel Tammet
Kontakt: tanel.tammet@ttu.ee, 6203457
Olemas on ka 2013 aasta materjalide arhiiv.

NB! Uus aine

Sellest sügisest käivitus uus aine, mida saab hetkel deklareerida ja mis kehtib valikainena moodulis "Eriala valikud": teda arvestatakse kõigil reaalselt kui selle bloki valikainet, kuigi ta ei ole (vanemates) õppekavaversioonides nähtavalt sees.

Vaata lähemalt http://lambda.ee/wiki/Tarkvaraarenduse_meeskonnaprojekt

Aeg, koht

Semester: sügis
Tulemus: eksam
Hindamise meetod: praktikumide tulemused (pool) pluss eksam (teine pool)

Loeng: kolmapäeval 16:00-17:30 ruumis CYB-VEENUS
Praktikum: neljapäeval 17:45-19:15 arvutiklassis ICT-501 (praktikumijuhendaja Priit Järv)

Praktilised tööd ja tähtajad

Töid võib teha 1-3 inimesest grupina.

Kokku on töid 2. Kumbki praktikum täismahus tehtuna annab 25 punkti, sellele võivad lisanduda ekstrapunktid. Puudulikult tehtud töö punktiarv jääb alla 25 punkti. Hilinenud kodutöö eest saab pooled muidu saadaolevad punktid. Töid tuleb esitada praktikumi ajal, projektori abil, väikese ülevaatena kõigile tudengitele.

  • 1. Tähtaeg 23. oktoober. Kaks alternatiivi, mille vahel võid ise valida:
    • 1 praks
    • Teha ise katseid või rakendus õppejõuga eelnevalt kokku lepitud teemal (apid, protokollid) ja teha väike loeng/ülevaade katsetest/rakendusest.

Järgmine ülesanne on aastast 2013, neid ei tule teha! Uued ülesanded tulevad veidi sarnased ja ilmuvad siia oktoobri keskel.

  • 2. Tähtaeg 18. detsember. Kaks alternatiivi:
    • 2 praks: android ja google app engine. NB! Hea kogumiku teemadeks jaotatud tutorialitest leiad siit.
    • Teha ise katseid või rakendus õppejõuga eelnevalt kokku lepitud teemal (mobiilirakendused ja pilvekeskkonnad) ja teha väike loeng/ülevaade katsetest/rakendusest.

Kursus varasematel aastatel

Esialgne loengukava

Kursus jaguneb laias laastus neljaks teemaks:

  • Protokollid, P2P, andme-apid võrgus (neil teemadel esimene praks, autentimine
  • Mobiilirakendused ja pilvekeskkonnad (neil teemadel teine praks)
  • Paralleelrehkendused
  • Andmete hajutamine ja hajutatud andmete koondamine


Loengute esialgne plaan:

  • 1. Detailsem ülevaade kursuse sisust, sissejuhatus 1. praktikumi, protokollide algus, http, json
Http ja json: võrgurakenduste protokollid 1
Üldist materjali ja kursusi mujalt:
http://en.wikipedia.org/wiki/Distributed_computing
http://dcg.ethz.ch/lectures/podc_allstars/index.html
http://www.eecs.harvard.edu/cs262/
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-824-distributed-computer-systems-engineering-spring-2006/index.htm
http://www.stanford.edu/class/cs244b/
  • 2. Praktikumi lisadetaile, protokollide jätk, xml ja xml põhised protokollid xml-rpc ja soap
xml protokollid xml-rpc, soap ja seotud tehnoloogiad: võrgurakenduste protokollid 2
Probleemidest: veebiteenuste võlu ja valu ja s stands for simple
  • 3. Protokollide jätk ja P2P sissejuhatus
REST, binary protokollid, XMPP: võrgurakenduste protokollid 3
P2P sissejuhatus:
vikipeedia ülevaade

Media:P2p_overview.ppt ülevaade eri P2P tehnoloogiatest

  • 4. P2P jätk: DHT (distributed hash tables) ja bittorrent
ülevaade wikipedias
Chord:
Põhimaterjal - Chordi põhimõtted - lugeda kuni Ivy osani (Ivy on antud juhul teemaväline)
Lisaks tasuks veidi uurida artikleid wikipedia sissekande lõpus (external links)
Kademlia:
Põhimaterjal presentatsioon autoritelt
Täiendavalt autorite artikkel
Bittorrent:
bittorrenti protokoll ja ülevaade
täiendavalt wikipediast
  • 5. Suured avalikud andme-apid.
Andme-apide märkmed loengust
  • 6. Autentimine: facebook, google, id-kaart.
  • 7. Pilvekeskkonnad, eriti: Google appengine, database api, google bigtable and file system stack
http://code.google.com/appengine/
  • 8: Sissejuhatus 2. praktikumi, Androidi rakenduste ehitamine
http://developer.android.com/index.html
  • 9. Mobiilirakenduste tegemine üldisemalt
Mobi loengu pdf
Mobi loengu koodi link
  • 10. Paralleliseerimine ja efektiivsus: ip/tcp, socketid, http jne
http näited
  • 11. Mmapreduce framework for automating app parallelization + memcached
Hea Mapreduce sissejuhatus
Mapreduce klassikaline põhiartikkel
memcached ülevaade
  • 12. Paralleelrehkendused. Andmebaasid, lukustamine ja transaktsioonid.
Paralleelsus andmebaasides, konspekt ja slaidid
Transaktsioonide sissejuhatuse alternatiivsed slaidid
  • 13. Paralleelrehkendused jätkuvad.
Sünkroniseerimisprimitiivid, konspekt ja slaidid
Lisaks T.Tammeti slaidid
  • 14. Andmelaod.
  • 15. Hajutatud andmekogude integreerimine. Vaata ka linke:
Postgres replication intro
Postgres clustering and replication
Postgres high availability
Integrating distributed sem web data
Oracle information integration