Võrgurakendused II
![]() |
Ainekood: ITV0120 |
Aeg, koht
Semester: sügis
Tulemus: eksam
Hindamise meetod: praktikumide tulemused pluss eksam
Loeng: teisipäeviti 14:00-15:30 ruumis X-211A
Praktikum: kolmapäeviti 08:00-09:30 arvutiklassides IT-213A, IT-213B.
Kodutööd ja tähtajad
Kodutöid võib teha 1-3 inimesest grupina.
Kokku on kodutöid 2. Kumbki kodutöö täismahus tehtuna annab 25 punkti, sellele võivad lisanduda ekstrapunktid. Puudulikult tehtud kodutöö punktiarv jääb alla 25 punkti. Hilinenud kodutöö eest saab pooled muidu saadaolevad punktid.
Praktikumid:
- 1 kodutöö: android ja google app engine. Tähtaeg 26 oktoober.
- 2. kodutöö. Tähtaeg teisipäev, 14 detsember. Kaks alternatiivi:
- 2 kodutöö: P2P rakendus: sisu sama, mis 2010 esimene prax. Võib teha 1-3 inimesest grupiga.
- Teha ise katseid või rakendus õppejõuga eelnevalt kokku lepitud teemal ja teha väike loeng/ülevaade katsetest/rakendusest. Hetkel on ühe tudengiga kokku lepitud mapreduce katsetamine/ülevaade, soovitavalt võiks seal võtta ette Hadoopi, kuid ka teised mapreduce frameworkid on huvitavad ja OK. Kui sul on idee alternatiivsest asjast, mida ise teise praksina teha ja teistele ette kanda, siis lepi õppejõuga hiljemalt 1 novembriks kokku. Ühe ettepanekuna pakun välja facebooki rakenduse tegemise, kasutades facebooki apisid: sel juhul võiks siis tulemusena rakendust demoda ja selgitada, kuidas ta on tehtud, mis apisid kasutatud ja miks, millised on head juhendid/tutorialid jne.
Kursus varasematel aastatel
- I periood: Tammet (hajutatud failisüst, dns, p2p, ...) http://deepthought.ttu.ee/it/vorgutarkvara/wav4101/
- II periood: Grauen (eelmise jätk) http://cs.ttu.ee/kursused/itv0040/
- III periood: Kadastik (sõnumivahetus) http://cs.ttu.ee/tiki-index.php?page=ITV0040-2008
- IV periood: Tammet http://www.lambda.ee/index/itv0040
Esialgne loengukava
Kursus jaguneb laias laastus neljaks teemaks:
- Protokollid, P2P, andme-apid võrgus (neil teemadel esimene praks)
- Mobiilirakendused ja pilvekeskkonnad (neil teemadel teine praks)
- Paralleelrehkendused
- Hajutatud andmete koondamine
Loengute esialgne plaan:
- 1. Detailsem ülevaade kursuse sisust, sissejuhatus 1. praktikumi, protokollide algus, http, json
- Loengu raampresentatsioon
- Http, Json , XML-RPC: võrgurakenduste protokollid 1
- 2. Praktikumi lisadetaile, P2P sissejuhatus
- vikipeedia ülevaade
- hea paraja detailsusega sissejuhatus
- ülevaatepresentatsioon
- alternatiivne ülevaatepresentatsioon
- hea detailne ülevaade eri P2P tehnoloogiatest
- 3. P2P jätk, bittorrent
- Chord:
- Põhimaterjal - Chordi põhimõtted - lugeda kuni Ivy osani (Ivy on antud juhul teemaväline)
- Täiendavalt vaata seda presentatsiooni visualiseeritud algoritmidega (ppt presentatsioonirezhiimis!)
- Täiendavalt juurde lugeda chordi ülevaadet algoritmide skeemi ja põhiteoreemidega (ilma tõestusteta)
- 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
- 4. Protokollide jätk, xml ja xml põhised protokollid xml-rpc ja soap, REST, google protocol buffers
- SOAP additional (WSDL etc): võrgurakenduste protokollid 2
- Probleemidest: veebiteenuste võlu ja valu ja s stands for simple
- 5. Suured avalikud andme-apid
- 6. Pilvekeskkonnad.
- 7. Google appengine, database api, google bigtable and file system stack
- 8: Sissejuhatus 2. praktikumi, Androidi rakenduste ehitamine
- 9. Mobiilirakenduste tegemine üldisemalt
- 10. Paralleelrehkendused. Andmebaasid, lukustamine ja transaktsioonid.
- 11. Paralleelrehkendused jätkuvad.
- 12. mapreduce framework for automating app parallelization.
- 13. Schemaless andmebaaside sissejuhatus
- 14. Andmelaod.
- 15. Hajutatud andmekogude integreerimine.
Valik teemadest, mida kursusel kaetakse
NB! Teemade plaan on esialgne, septembris tuleb siia muutusi ja täiendusi.
- Comm protocols 1
- Loengu raampresentatsioon (detaile sealt sees linkidest)
- Http, Json , XML-RPC: võrgurakenduste protokollid 1
- Comm protocols 2.
- SOAP additional (WSDL etc): võrgurakenduste protokollid 2
- Probleemidest: veebiteenuste võlu ja valu ja s stands for simple
- Comm protocols 3.
- andmete serialiseerimise / SOAP envelope ehitamise näiteid (loengus), XMPP, Google protocol buffers etc: võrgurakenduste protokollid 2
- Google app engine kasutamine
- http://code.google.com/appengine/
- P2P 1
- vikipeedia ülevaade
- hea paraja detailsusega sissejuhatus
- ülevaatepresentatsioon
- alternatiivne ülevaatepresentatsioon
- hea detailne ülevaade eri P2P tehnoloogiatest
- P2P 2
Hajutatud key-value andmebaasid (ehk distributed hash tables ehk DHT):
- ülevaade wikipedias
- Chord:
- Põhimaterjal - Chordi põhimõtted - lugeda kuni Ivy osani (Ivy on antud juhul teemaväline)
- Täiendavalt vaata seda presentatsiooni visualiseeritud algoritmidega (ppt presentatsioonirezhiimis!)
- Täiendavalt juurde lugeda chordi ülevaadet algoritmide skeemi ja põhiteoreemidega (ilma tõestusteta)
- Lisaks tasuks veidi uurida artikleid wikipedia sissekande lõpus (external links)
- Kademlia:
- Põhimaterjal presentatsioon autoritelt
- Täiendavalt autorite artikkel
- P2P Bittorrent
- Androidi rakenduste ehitamine
- http://developer.android.com/index.html
- Data scraping and merging.
- Semantikaküsimused, RDF jms võrgusüsteemides
- Põhiülevaade Media:RDFandschemalessdatabases2.pdf
- Huvi korral tasub konkreetselt RDF kohta lugeda siit
- Mapreduce ja memcached
- Lukustamine ja transaktsioonid
