Võrgurakendused II: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
Resümee puudub
70. rida: 70. rida:
Loengute esialgne plaan:
Loengute esialgne plaan:


== Protokollid ==


*1. Detailsem ülevaade kursuse sisust, sissejuhatus 1. praktikumi, protokollide algus, http, json
=== 1. Detailsem ülevaade kursuse sisust, sissejuhatus 1. praktikumi, protokollide algus, http, json ===
<!-- :[[Media:Protocols.ppt|Loengu raampresentatsioon]] -->
<!-- :[[Media:Protocols.ppt|Loengu raampresentatsioon]] -->
:<b>Http ja json</b>: [[võrgurakenduste protokollid 1]]
:<b>Http ja json</b>: [[võrgurakenduste protokollid 1]]
82. rida: 81. rida:
:http://www.stanford.edu/class/cs244b/
:http://www.stanford.edu/class/cs244b/


*2. Praktikumi lisadetaile, protokollide jätk, xml ja xml põhised protokollid xml-rpc ja soap
===  2. Praktikumi lisadetaile, protokollide jätk, xml ja xml põhised protokollid xml-rpc ja soap ===
:<b>xml protokollid xml-rpc, soap ja seotud tehnoloogiad</b>: [[võrgurakenduste protokollid 2]]
:<b>xml protokollid xml-rpc, soap ja seotud tehnoloogiad</b>: [[võrgurakenduste protokollid 2]]
:Probleemidest: [[veebiteenuste võlu ja valu]] ja [http://harmful.cat-v.org/software/xml/soap/simple s stands for simple]
:Probleemidest: [[veebiteenuste võlu ja valu]] ja [http://harmful.cat-v.org/software/xml/soap/simple s stands for simple]


*3. Protokollide jätk ja P2P sissejuhatus
===  3. Protokollide jätk ja P2P sissejuhatus ===
: <b>REST, binary protokollid, XMPP</b>: [[võrgurakenduste protokollid 3]]
: <b>REST, binary protokollid, XMPP</b>: [[võrgurakenduste protokollid 3]]
:P2P sissejuhatus:
:P2P sissejuhatus:
96. rida: 95. rida:
: [[Media:P2p_overview.ppt|ülevaade eri P2P tehnoloogiatest]]
: [[Media:P2p_overview.ppt|ülevaade eri P2P tehnoloogiatest]]


*4. P2P jätk: DHT (distributed hash tables) ja bittorrent
===  4. P2P jätk: DHT (distributed hash tables) ja bittorrent ===
:[http://en.wikipedia.org/wiki/Distributed_hash_table ülevaade wikipedias]
:[http://en.wikipedia.org/wiki/Distributed_hash_table ülevaade wikipedias]
:Chord:
:Chord:
112. rida: 111. rida:
:[http://en.wikipedia.org/wiki/Tor_%28anonymity_network%29 TOR wikipedias]
:[http://en.wikipedia.org/wiki/Tor_%28anonymity_network%29 TOR wikipedias]


*5. Suured avalikud andme-apid.
===  5. Suured avalikud andme-apid. ===
: [[Andme-apide märkmed loengust]]
: [[Andme-apide märkmed loengust]]


*6. Autentimine: facebook, google, id-kaart.
===  6. Autentimine: facebook, google, id-kaart. ===


== Andmete hajutamine 1, mobiilirakendused ja pilvekeskkonnad ==
=== 7. Pilvekeskkonnad, eriti: Google appengine, database api, google bigtable and file system stack ===
 
*7. Pilvekeskkonnad, eriti: Google appengine, database api, google bigtable and file system stack
:[[Hajutatud failisüsteemide märkmed loengust]]
:[[Hajutatud failisüsteemide märkmed loengust]]
:http://code.google.com/appengine/
:http://code.google.com/appengine/


*8: Sissejuhatus 2. praktikumi, Androidi rakenduste ehitamine
===  8: Sissejuhatus 2. praktikumi ===
 
 
===  9. Mobiilirakenduste tegemine ===
 
:http://developer.android.com/index.html
:http://developer.android.com/index.html
*9. Mobiilirakenduste tegemine üldisemalt
:Mobi [[Media:Mobi android lecture.pdf|loengu pdf]]
:Mobi [[Media:Mobi android lecture.pdf|loengu pdf]]
:Mobi [https://github.com/madisp/PostimeesRss loengu koodi link]
:Mobi [https://github.com/madisp/PostimeesRss loengu koodi link]


== Paralleelrehkendused ==
=== 10. Paralleliseerimine ja efektiivsus: ip/tcp, socketid, http jne ===
 
*10. Paralleliseerimine ja efektiivsus: ip/tcp, socketid, http jne
: http näited  
: http näited  


*11. Mmapreduce framework for automating app parallelization + memcached
=== 11. Mmapreduce framework for automating app parallelization + memcached ===
:Hea [http://www.google.com/url?sa=t&source=web&cd=2&ved=0CBkQxQEwAQ&url=http%3A%2F%2Fdocs.google.com%2Fviewer%3Fa%3Dv%26q%3Dcache%3AziVIMWHr2GsJ%3Anet.pku.edu.cn%2F~course%2Fcs501%2F2008%2Fresource%2Fmapreduce_in_a_week%2Fllm3-mapreduce.ppt%2Bgoogle%2Bmapreduce%2Btheory%2Band%2Bimplementation%2BChristophe%2BBisciglia%2C%2BAaron%2BKimball%2Bllm3%26hl%3Den%26pid%3Dbl%26srcid%3DADGEESiMwU-9htEZEAthU5bRtGGBQgkzwUf5vM549R-6QBooeBv10FFd-GLvrklDHx-RhI3OehhNio1E7m5GvwKyKK9ndM6oNbDO3LERl8M8YSZ5tdO4bRQ3PEs8sQ6_sdJVIF_Splx7%26sig%3DAHIEtbQVGyhnhEx0aTA0W7okwP8KdVqG1w&rct=j&q=google%20mapreduce%20theory%20and%20implementation%20Christophe%20Bisciglia%2C%20Aaron%20Kimball%20llm3&ei=plH_TPWOI4ay8gPVss2MCw&usg=AFQjCNE9y0GiXVo_hNWPmywfUjt_3ZhQqg&cad=rja Mapreduce sissejuhatus]  
:Hea [http://www.google.com/url?sa=t&source=web&cd=2&ved=0CBkQxQEwAQ&url=http%3A%2F%2Fdocs.google.com%2Fviewer%3Fa%3Dv%26q%3Dcache%3AziVIMWHr2GsJ%3Anet.pku.edu.cn%2F~course%2Fcs501%2F2008%2Fresource%2Fmapreduce_in_a_week%2Fllm3-mapreduce.ppt%2Bgoogle%2Bmapreduce%2Btheory%2Band%2Bimplementation%2BChristophe%2BBisciglia%2C%2BAaron%2BKimball%2Bllm3%26hl%3Den%26pid%3Dbl%26srcid%3DADGEESiMwU-9htEZEAthU5bRtGGBQgkzwUf5vM549R-6QBooeBv10FFd-GLvrklDHx-RhI3OehhNio1E7m5GvwKyKK9ndM6oNbDO3LERl8M8YSZ5tdO4bRQ3PEs8sQ6_sdJVIF_Splx7%26sig%3DAHIEtbQVGyhnhEx0aTA0W7okwP8KdVqG1w&rct=j&q=google%20mapreduce%20theory%20and%20implementation%20Christophe%20Bisciglia%2C%20Aaron%20Kimball%20llm3&ei=plH_TPWOI4ay8gPVss2MCw&usg=AFQjCNE9y0GiXVo_hNWPmywfUjt_3ZhQqg&cad=rja Mapreduce sissejuhatus]  
:Mapreduce [http://static.googleusercontent.com/external_content/untrusted_dlcp/labs.google.com/en//papers/mapreduce-osdi04.pdf klassikaline põhiartikkel]
:Mapreduce [http://static.googleusercontent.com/external_content/untrusted_dlcp/labs.google.com/en//papers/mapreduce-osdi04.pdf klassikaline põhiartikkel]
:[http://www.majordojo.com/2007/03/memcached-howto.php memcached ülevaade]
:[http://www.majordojo.com/2007/03/memcached-howto.php memcached ülevaade]


*12. Paralleelrehkendused. Andmebaasid, lukustamine ja transaktsioonid.
=== 12. Paralleelrehkendused. Andmebaasid, lukustamine ja transaktsioonid. ===
:Paralleelsus andmebaasides, [[Media:na2_ccdb.pdf|konspekt]] ja [[Media:na2_ccdb_slides.pdf|slaidid]]
:Paralleelsus andmebaasides, [[Media:na2_ccdb.pdf|konspekt]] ja [[Media:na2_ccdb_slides.pdf|slaidid]]
:Transaktsioonide sissejuhatuse [[Media:11-transactions.pdf|alternatiivsed slaidid]]
:Transaktsioonide sissejuhatuse [[Media:11-transactions.pdf|alternatiivsed slaidid]]


*13. Paralleelrehkendused jätkuvad.
=== 13. Paralleelrehkendused jätkuvad. ===
:Sünkroniseerimisprimitiivid, [[Media:na2_sync.pdf|konspekt]] ja [[Media:na2_sync_slides.pdf|slaidid]]
:Sünkroniseerimisprimitiivid, [[Media:na2_sync.pdf|konspekt]] ja [[Media:na2_sync_slides.pdf|slaidid]]
:Lisaks [[Media:Locking_v2.ppt|T.Tammeti slaidid]]  
:Lisaks [[Media:Locking_v2.ppt|T.Tammeti slaidid]]  


== Andmete hajutamine 2, hajutatud andmete koondamine ==


*14. Andmelaod.
=== 14. Andmelaod. ===
 
=== 15. Hajutatud andmekogude integreerimine. Vaata ka linke: ===


*15. Hajutatud andmekogude integreerimine. Vaata ka linke:
: [http://momjian.us/main/writings/pgsql/replication.pdf Postgres replication intro]
: [http://momjian.us/main/writings/pgsql/replication.pdf Postgres replication intro]
: [http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling Postgres clustering and replication]
: [http://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling Postgres clustering and replication]
159. rida: 156. rida:
: [http://docs.oracle.com/cd/B28359_01/server.111/b28318/integrat.htm Oracle information integration]
: [http://docs.oracle.com/cd/B28359_01/server.111/b28318/integrat.htm Oracle information integration]


=== Lisamaterjalid ==


*16. Lisamaterjalidena [[võrgurakendused 2: täiendavad lingid]], [[Sehke speci draft]]
* [[võrgurakendused 2: täiendavad lingid]]
* [[Sehke speci draft]]


[[Category:Kursus]]
[[Category:Kursus]]

Redaktsioon: 22. oktoober 2014, kell 17:05

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.

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
ü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
TOR:
TOR wikipedias

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

Hajutatud failisüsteemide märkmed loengust
http://code.google.com/appengine/

8: Sissejuhatus 2. praktikumi

9. Mobiilirakenduste tegemine

http://developer.android.com/index.html
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

= Lisamaterjalid