Võrgurakendused II

Allikas: Lambda
Redaktsioon seisuga 1. veebruar 2018, kell 07:44 kasutajalt Tammet (arutelu | kaastöö) (→Paralleelrehkendused 1. osa)
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: 5 EAP

Õppejõud: Tanel Tammet, Martin Verrev, Priit Järv
Kontakt: tanel.tammet@ttu.ee
Olemas on ka 2016 aasta materjalide arhiiv.



Aeg, koht

Semester: kevad
Tulemus: eksam
Hindamise meetod: praktikumide tulemused (pool) pluss eksam (teine pool)
Loeng: neljapäeval 10:00-11:30 ruumis U05-103
Praktikum: reedel kell 10:00-11:30 ruumides ICT 121 ja ICT 122

Praktilised tööd ja tähtajad

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.

  • 1. Tähtaeg 16 märts. Grupitöö 1-3 inimest.
  • 2. Tähtaeg 11. mai. Grupitöö 1-3 inimest.

Loengukava

Kursus jaguneb laias laastus neljaks teemaks:

  • Protokollid ja P2P (neil teemadel - pluss veidi andme-apidest- esimene praks),
  • Distributed ledger ehk bitcoini alustehnoloogia
  • Paralleelrehkendused
  • Andme-apid, autentimine, pilvekeskkonnad, andmete hajutamine ja hajutatud andmete koondamine.

Üldist materjali ja kursusi mujalt:

http://en.wikipedia.org/wiki/Distributed_computing
http://dcg.ethz.ch/lectures/podc_allstars/index.html
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/

Protokollid ja P2P

Protokollid

Http ja json: võrgurakenduste protokollid 1
Xml põhised protokollid, REST ja binaarsed protokollid
xml protokollid xml-rpc, soap ja seotud tehnoloogiad: võrgurakenduste protokollid 2
Probleemidest: veebiteenuste võlu ja valu ja s stands for simple
REST, binary protokollid, XMPP: võrgurakenduste protokollid 3
Gaffer on games: UDP vs TCP ja selle jätk
Veidi seotud asi ad hoc networks vt ka Defendeci ja Jürgo Predeni patent

P2P sissejuhatus

vikipeedia ülevaade
ülevaade eri P2P tehnoloogiatest

P2P 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

Distributed ledger ja bitcoin

Materjalid hiljem.


Paralleliseerimine ja efektiivsus

Esimene osa

Näited:

Java näide loengust
Thread, Queue ja Lock Pythonis
C: alguses oli fork(), hea pthreads tutorial.

Loengunäide: TCP (HTTP) socket server

Kuidas TCP server elementaarsel tasemel töötab (Java tutorialid): Socket serveri sissejuhatus, threadidega server.

Skaleeruvus praktikas: Causality of Scalability, Designing for Scalability.


Paralleelrehkendused andmebaasides

Paralleelsus andmebaasides: slaidid.

Lisaks võib lugeda:

Konspekt, käsitleb teemat oluliselt põhjalikumalt kui loeng/slaidid
Introduction to Transactions (slaidid)
Sünkroniseerimisprimitiivid: slaidid

Mittekohustuslik lisalugemine:

Konspekt pikemalt ja põhjalikumalt loengus läbitud teemadest.
T.Tammeti slaidid


Paralleliseerimise automatiseerimine ja klastrid

Mapreduce framework
Mapreduce katsetused Azure platvormil
Mapreduce klassikaline põhiartikkel
memcached
memcached ülevaade

Andme-apid, autentimine, pilveteenused, andmete koondamine jms

Suured avalikud andme-apid

Andme-apide märkmed loengust
Read an OK short book on web api design
Check out odata.org

X-tee, RIHA ja riigi IT-infrastruktuur

Big official picture of the state IT-architecture
Ahto Kalja detailne ülevaade X-tee projektist aastast 2004
X-road official page
X-road security server manual (detailed)
X-tee from the Finnish perspective and the X-tee/Json gateway and a nice REST api example from Finland
newest X-road message protocol and corresponding metainfo protocol
Example: X-road oriented Soap call tool for Python
RIHA ja jutud RIHA kohta

Autentimine

facebook, google, pangalink.
Autentimise märkmed: facebook ja google
veebiserveri seadistamine id-kaardi jaoks ja abistavad koodijupid
taustaks id-kaardi kasutusstsenaariumid

Autentimise märkmed: mobiil-ID

Pilvekeskkonnad

Understanding cloud computing

Suured:

Pilveteenuse tarkvara:

OpenStack

Näide: Azure

Azure märkmed

Google appengine, database api, google bigtable and file system stack

http://cloud.google.com/appengine/ AppEngine on nüüd osa Google Cloud platvormist

Hajutatud failisüsteemide märkmed loengust

Lisamaterjalid

Hajutatud andmekogude integreerimine

Postgres replication intro
Postgres clustering and replication
Postgres high availability
Integrating distributed sem web data
Oracle information integration

Varu